專利名稱:監(jiān)控總線非法操作的方法、裝置及包含該裝置的系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種監(jiān)控方法及裝置,尤其涉及一種監(jiān)控總線非法操作的方法及 裝置。
背景技術(shù):
總線是一組在主設(shè)備和從設(shè)備之間傳輸數(shù)據(jù)、地址和控制等信號(hào)的共享通信電路。在帶有總線的片上系統(tǒng)(SoC, system on chip)中,各種主、從設(shè)備按照 總線的定義連接到接口電路上??偩€采用的均為標(biāo)準(zhǔn)協(xié)議,其中大部分協(xié)議不包含 或僅包含少量的與安全相關(guān)的要求。只要遵守總線協(xié)議,主設(shè)備都可以通過總線訪 問從設(shè)備,這樣就為非法程序攻擊片上系統(tǒng)帶來了方便。圖1示出了在移動(dòng)終端芯片中總線傳輸?shù)南到y(tǒng)結(jié)構(gòu)。請(qǐng)參見圖1,主設(shè)備21 ~ 2N、易失性存儲(chǔ)器(RAM) 30、非易失性存儲(chǔ)器40、 I/O電路60和其他從設(shè)備50 等外圍設(shè)備通過接口電路連接到總線10上。其中主設(shè)備可以包括主處理器、協(xié)處 理器、DMA (Direct Memory Access )等,夕卜圍設(shè)備可以包括顯示屏、鍵盤、紅夕卜 藍(lán)牙設(shè)備等。如果總線上沒有采取保護(hù)措施,非法程序(如各類病毒)便可以借助 主設(shè)備21 ~ 2N通過總線10非法讀取、修改RAM30等各類存儲(chǔ)器中的內(nèi)容,以達(dá)到 竊取重要數(shù)據(jù)、顯示各種雜亂信息等目的,有些病毒甚至能夠破壞系統(tǒng)程序?qū)е乱?動(dòng)終端無法正常工作。發(fā)明內(nèi)容本發(fā)明的目的在于解決上述問題,提供了一種監(jiān)控總線非法操作的方法,可 阻止非法程序利用總線實(shí)施的對(duì)系統(tǒng)的攻擊。本發(fā)明的另一目的在于提供一種監(jiān)控總線非法操作的總線監(jiān)控裝置,阻止非 法程序利用總線實(shí)施的對(duì)系統(tǒng)的攻擊。本發(fā)明的另一目的在于提供一種總線監(jiān)控系統(tǒng),阻止非法程序利用總線實(shí)施的對(duì)系統(tǒng)的攻擊,保護(hù)了系統(tǒng)中跟總線相連的從設(shè)備的安全。本發(fā)明的技術(shù)方案為本發(fā)明提出了一種監(jiān)控總線非法操作的方法,阻止非 法程序通過總線執(zhí)行的非法操作,該方法包括 將比較參數(shù)范圍存儲(chǔ)在配置寄存器中;將總線上的參數(shù)與該配置寄存器中存儲(chǔ)的比較參數(shù)范圍作比較,如果該總線 上的參數(shù)屬于該比較參數(shù)范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使 能端口 ,否則該主設(shè)備通過該總線對(duì)該從設(shè)備執(zhí)行操作。上述的監(jiān)控總線非法操作的方法,其中,該比較參數(shù)范圍包括易失性存儲(chǔ)器 的禁止讀/寫的地址范圍、易失性存儲(chǔ)器的禁止讀/寫的數(shù)據(jù)范圍、非易失性存儲(chǔ)器 的禁止讀/寫的地址范圍、非易失性存儲(chǔ)器的禁止讀/寫的數(shù)據(jù)范圍、操作規(guī)則列表。上述的監(jiān)控總線非法操作的方法,其中,所有的從設(shè)備只關(guān)聯(lián)一個(gè)配置寄存器。上述的監(jiān)控總線非法操作的方法,其中,每個(gè)從設(shè)備各關(guān)聯(lián)一個(gè)配置寄存器。 本發(fā)明還提出了一種監(jiān)控總線非法操作的方法,阻止非法程序通過總線執(zhí)行的非法操作,該方法包括將從設(shè)備的地址范圍分為系統(tǒng)專用區(qū)域、用戶私有區(qū)域和通用區(qū)域; 在配置寄存器中,存儲(chǔ)該系統(tǒng)專用區(qū)域的地址范圍并將其配置成只讀狀態(tài),存儲(chǔ)該用戶私有區(qū)域的地址范圍并將該其配置成與用戶口令關(guān)聯(lián),存儲(chǔ)該通用區(qū)域的地址范圍;將總線上的地址參數(shù)與該配置寄存器中存儲(chǔ)的系統(tǒng)專用區(qū)域地址范圍、用戶 私有區(qū)域地址范圍和通用區(qū)域地址范圍作比較;如果總線上的地址參數(shù)屬于該系統(tǒng)專用區(qū)域地址范圍,則對(duì)該系統(tǒng)專用區(qū)域 的讀操作被允許,對(duì)該區(qū)域的寫操作將被禁止且觸發(fā)系統(tǒng)中斷;如果總線上的地址參數(shù)屬于該用戶私有區(qū)域地址范圍,則同時(shí)接收用戶輸入 的口令,如果口令合法則對(duì)該用戶私有區(qū)域的讀寫操作均被允許,否則對(duì)該用戶私 有區(qū)域的讀寫操作均被禁止,且觸發(fā)系統(tǒng)中斷;如果總線上的地址參數(shù)屬于該通用區(qū)域,則對(duì)該通用區(qū)域的讀寫操作均被允許。本發(fā)明另外提出了一種總線監(jiān)控裝置,阻止非法程序通過總線執(zhí)行的非法操作,該芯片安全裝置包括配置寄存器,存儲(chǔ)禁止讀/寫參數(shù)范圍;比較器,連接該配置寄存器和總線,接收總線上的參數(shù),與該配置寄存器存 儲(chǔ)的禁止讀/寫參數(shù)范圍作比較,如果該總線上的參數(shù)屬于該禁止讀/寫參數(shù)范圍, 則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口,否則發(fā)生使能信號(hào)至相 應(yīng)從設(shè)備的使能端口以使主設(shè)備通過總線對(duì)相應(yīng)從設(shè)備執(zhí)行操作。上述的總線監(jiān)控裝置,其中,該配置寄存器存儲(chǔ)的禁止讀/寫參數(shù)范圍包括禁 止讀/寫地址參數(shù)范圍和禁止讀/寫數(shù)據(jù)參數(shù)范圍和操作規(guī)則列表。上述的總線監(jiān)控裝置,其中,該比較器包括地址比較器,比較總線上的地址參數(shù)和配置寄存器中的禁止讀/寫地址參數(shù)范 圍,如果該總線上的地址參數(shù)屬于該禁止讀/寫地址參數(shù)范圍,則發(fā)生中斷消息給 主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口;數(shù)據(jù)比較器,比較總線上的數(shù)據(jù)參數(shù)和配置寄存器中的禁止讀/寫數(shù)據(jù)參數(shù)范 圍,如果該總線上的數(shù)據(jù)參數(shù)屬于該禁止讀/寫數(shù)據(jù)參數(shù)范圍,則發(fā)生中斷消息給 主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口 ;操作比較器,比較總線上的操作參數(shù)和該配置寄存器中的操作規(guī)則列表,如 果該總線上的各項(xiàng)操作屬于該操作規(guī)則列表范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān) 閉相應(yīng)從設(shè)備的使能端口 。本發(fā)明還提出了一種總線監(jiān)控系統(tǒng),包括總線,用于傳輸使能信號(hào)、主設(shè)備標(biāo)識(shí)號(hào)、讀/寫操作、地址/數(shù)據(jù)和中斷信號(hào); 至少一個(gè)主設(shè)備,連接到該總線上; 至少一個(gè)從設(shè)備,連接到該總線上;一個(gè)總線監(jiān)控裝置,連接到該總線上,該總線監(jiān)控裝置包括 配置寄存器,存儲(chǔ)禁止讀/寫參數(shù)范圍;比較器,連接該配置寄存器和總線,接收總線上的參數(shù),與該配置寄存 器存儲(chǔ)的禁止讀/寫參數(shù)范圍作比較,如果該總線上的參數(shù)屬于該禁止讀/寫參數(shù)范 圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口,否則發(fā)生使能信號(hào) 至相應(yīng)從設(shè)備的使能端口以使主設(shè)備通過總線對(duì)相應(yīng)從設(shè)備執(zhí)行操作。上述的總線監(jiān)控系統(tǒng),其中,該配置寄存器存儲(chǔ)的禁止讀/寫參數(shù)范圍包括禁止讀/寫地址參數(shù)范圍和禁止讀/寫數(shù)據(jù)參數(shù)范圍和操作規(guī)則列表。上述的總線監(jiān)控系統(tǒng),其中,該比較器包括地址比較器,比較總線上的地址參數(shù)和配置寄存器中的禁止讀/寫地址參數(shù)范 圍,如果該總線上的地址參數(shù)屬于該禁止讀/寫地址參數(shù)范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口;數(shù)據(jù)比較器,比較總線上的數(shù)據(jù)參數(shù)和配置寄存器中的禁止讀/寫數(shù)據(jù)參數(shù)范 圍,如果該總線上的數(shù)據(jù)參數(shù)屬于該禁止讀/寫數(shù)據(jù)參數(shù)范圍,則發(fā)生中斷消息給 主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口 ;操作比較器,比較總線上的操作參數(shù)和該配置寄存器中的操作規(guī)則列表,如果 該總線上的各項(xiàng)操作屬于操作規(guī)則列表范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相 應(yīng)從設(shè)備的使能端口。本發(fā)明還提出了一種總線監(jiān)控系統(tǒng),包括總線,用于傳輸使能信號(hào)、主設(shè)備標(biāo)識(shí)號(hào)、讀/寫操作、地址/數(shù)據(jù)和中斷信號(hào); 至少一個(gè)主設(shè)備,連接到該總線上; 至少一個(gè)從設(shè)備,連接到該總線上;至少 一個(gè)總線監(jiān)控裝置,每一該總線監(jiān)控裝置連接該總線與其中的 一個(gè)從設(shè) 備,該總線監(jiān)控裝置包括配置寄存器,存儲(chǔ)禁止讀/寫參數(shù)范圍;比較器,連接該配置寄存器和總線,接收總線上的參數(shù),與該配置寄存器 存儲(chǔ)的禁止讀/寫參數(shù)范圍作比較,如果該總線上的參數(shù)屬于該禁止讀/寫參數(shù)范 圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口,否則發(fā)生使能信號(hào) 至相應(yīng)從設(shè)備的使能端口以使主設(shè)備通過總線對(duì)相應(yīng)從設(shè)備執(zhí)行操作。上述的總線監(jiān)控系統(tǒng),其中,該配置寄存器存儲(chǔ)的禁止讀/寫參數(shù)范圍包括禁 止讀/寫地址參數(shù)范圍和禁止讀/寫數(shù)據(jù)參數(shù)范圍和操作規(guī)則列表。上述的總線監(jiān)控系統(tǒng),其中,該比較器包括地址比較器,比較總線上的地址參數(shù)和配置寄存器中的禁止讀/寫地址參數(shù)范 圍,如果該總線上的地址參數(shù)屬于該禁止讀/寫地址參數(shù)范圍,則發(fā)生中斷消息給 主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口;數(shù)據(jù)比較器,比較總線上的數(shù)據(jù)參數(shù)和配置寄存器中的禁止讀/寫數(shù)據(jù)參數(shù)范圍,如果該總線上的數(shù)據(jù)參數(shù)屬于該禁止讀/寫數(shù)據(jù)參數(shù)范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口;操作比較器,比較總線上的操作參數(shù)和該配置寄存器中的操作規(guī)則列表,如 果該總線上的各項(xiàng)操作屬于操作規(guī)則列表范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉 相應(yīng)從設(shè)備的使能端口。本發(fā)明對(duì)比現(xiàn)有技術(shù)有如下的有益效果本發(fā)明通過在系統(tǒng)總線一側(cè)增加一 個(gè)硬件模塊單元-總線監(jiān)控裝置,在芯片工作期間由總線監(jiān)控裝置實(shí)時(shí)采樣總線上 的各類數(shù)據(jù),并將得到的數(shù)據(jù)信息在總線內(nèi)部做處理分析,以判斷當(dāng)前操作是否符 合既定的規(guī)則。若發(fā)現(xiàn)異常操作,總線監(jiān)控裝置會(huì)啟動(dòng)相應(yīng)措施阻止當(dāng)前指令的執(zhí) 行以保護(hù)系統(tǒng)安全。
圖1是傳統(tǒng)的總線傳輸?shù)南到y(tǒng)結(jié)構(gòu)圖。圖2是本發(fā)明的監(jiān)控總線非法操作的方法的一個(gè)較佳實(shí)施例的流程圖。 圖3是本發(fā)明的監(jiān)控總線非法操作的方法的另一較佳實(shí)施例的流程圖。 圖4是本發(fā)明的包含總線監(jiān)控裝置的總線監(jiān)控系統(tǒng)的一個(gè)較佳實(shí)施例的框圖。 圖5是本發(fā)明的總線監(jiān)控裝置的一個(gè)較佳實(shí)施例的框圖。 圖6是本發(fā)明的配置寄存器的框圖。圖7是本發(fā)明的包含總線監(jiān)控裝置的總線監(jiān)控系統(tǒng)的另 一較佳實(shí)施例的框圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對(duì)本發(fā)明作進(jìn)一步的描述。圖2示出了本發(fā)明的監(jiān)控總線非法操作的方法的一個(gè)較佳實(shí)施例的流程。請(qǐng) 參見圖2,下面是對(duì)該方法流程中各步驟的詳細(xì)描述。步驟S10:檢查總線監(jiān)控裝置的使能端口是否開啟,如果總線監(jiān)控裝置的使能 端口未開啟,則轉(zhuǎn)入步驟S18。步驟S11:將總線上的地址與配置寄存器中的地址范圍比較。配置寄存器中存 儲(chǔ)的地址包括易失性存儲(chǔ)器的禁止讀/寫的地址范圍和非易失性存儲(chǔ)器的禁止讀/ 寫的地址范圍。步驟S12:判斷總線地址是否位于禁止讀/寫的地址范圍內(nèi),如果是則轉(zhuǎn)入步 驟S17,否則進(jìn)入步驟S13。步驟S13:將總線上的數(shù)據(jù)與配置寄存器中的數(shù)據(jù)列表進(jìn)行比較。配置寄存器 中存儲(chǔ)的數(shù)據(jù)列表包括易失性存儲(chǔ)器的禁止讀/寫的數(shù)據(jù)范圍和非易失性存儲(chǔ)器的 禁止讀/寫的數(shù)據(jù)范圍。步驟S14:判斷總線上的數(shù)據(jù)是否位于禁止讀/寫的數(shù)據(jù)列表內(nèi),如果是則轉(zhuǎn) 入步驟S17,否則進(jìn)入步驟S15。步驟S15:將總線上的操作參數(shù)與配置寄存器中存儲(chǔ)的操作規(guī)則列表進(jìn)行比 較。這些操作參數(shù)包括操作形式、操作對(duì)象、操作屬性等,其中操作形式包括讀和 寫,操作對(duì)象包括總線上的一切從設(shè)備,例如設(shè)備ID號(hào),操作屬性包括數(shù)據(jù)的位 寬信息等。。步驟S16:判斷總線上的各項(xiàng)操作與配置寄存器中存儲(chǔ)的操作規(guī)則列表是否相 符,如果是則轉(zhuǎn)入步驟S17,否則轉(zhuǎn)入步驟S18。步驟S17:總線監(jiān)控裝置向主設(shè)備發(fā)送中斷消息,并關(guān)閉相應(yīng)從設(shè)備的使能端D 。步驟S18:允許主設(shè)備通過總線對(duì)從設(shè)備執(zhí)行操作。在上述方法中,可以只設(shè)置一個(gè)配置寄存器,該配置寄存器中存儲(chǔ)所有從設(shè) 備的地址范圍、數(shù)據(jù)范圍以及操作規(guī)則列表,即將所有的從設(shè)備與這一個(gè)配置寄存 器關(guān)聯(lián)。在使能從設(shè)備時(shí),發(fā)出一個(gè)使能信號(hào)通過總線傳輸給對(duì)應(yīng)的從設(shè)備以開啟 對(duì)應(yīng)操作的執(zhí)行;在禁能從設(shè)備時(shí),發(fā)出一個(gè)禁能信號(hào)通過總線傳輸給對(duì)應(yīng)的從設(shè) 備以禁止對(duì)應(yīng)操作的執(zhí)行。也可以設(shè)置多個(gè)配置寄存器,每個(gè)配置寄存器與總線和一個(gè)從設(shè)備連接,即 每個(gè)配置寄存器只關(guān)聯(lián)一個(gè)從設(shè)備,每個(gè)配置寄存器只存儲(chǔ)與之關(guān)聯(lián)的從設(shè)備的地 址范圍、數(shù)據(jù)范圍以及操作規(guī)則列表。在使能從設(shè)備時(shí),配置寄存器允許數(shù)據(jù)和信 號(hào)通過,傳輸?shù)竭B接的從設(shè)備中;在禁能從設(shè)備時(shí),配置寄存器禁止數(shù)據(jù)和信號(hào)通 過,數(shù)據(jù)和信號(hào)無法傳輸?shù)竭B接的從設(shè)備。圖3示出了本發(fā)明的監(jiān)控總線非法操作的方法的另一較佳實(shí)施例,這一實(shí)施 例主要是對(duì)存儲(chǔ)器從設(shè)備的監(jiān)控方法。請(qǐng)參見圖3,下面是對(duì)圖3中各流程步驟的 詳細(xì)描述。步驟S20:檢查總線監(jiān)控裝置的使能端口是否開啟,如果總線監(jiān)控裝置的使能 端口未開啟,則轉(zhuǎn)入步驟S28。步驟S21:將總線上的地址與配置寄存器中存儲(chǔ)的地址范圍參數(shù)比較。配置寄 存器中的存儲(chǔ)器地址范圍分為系統(tǒng)專用區(qū)域、用戶私有區(qū)域和通用區(qū)域。其中存儲(chǔ) 器中的系統(tǒng)專用區(qū)域只允許存放操作系統(tǒng)程序、系統(tǒng)參數(shù)等與設(shè)備安全相關(guān)的重要 數(shù)據(jù),該區(qū)域的地址在配置寄存器中被配置成只讀狀態(tài)。用戶私有區(qū)域是為用戶專 備的私有空間,需要合法的用戶口令才能控制該區(qū)域。除上述兩個(gè)區(qū)域之外的區(qū)域 為通用區(qū)域,主設(shè)備可對(duì)通用區(qū)域進(jìn)行讀寫等任何操作。步驟S22:判斷總線上的地址是否位于系統(tǒng)專用區(qū)域。如果是則進(jìn)入下一步, 否則轉(zhuǎn)入步驟S26。步驟S23:判斷當(dāng)前操作是否為系統(tǒng)程序更新。如果是則進(jìn)入下一步,否則轉(zhuǎn) 入步驟S25。步驟S24:關(guān)閉總線監(jiān)控裝置對(duì)系統(tǒng)專用區(qū)域的監(jiān)控。步驟S25:判斷當(dāng)前操作是讀操作還是寫操作。如果是讀操作,則轉(zhuǎn)入步驟 S28;如果是寫操作,則轉(zhuǎn)入步驟S29。步驟S26:判斷總線上的地址是否位于用戶私有區(qū)域。如果是則進(jìn)入步驟S27, 否則說明總線上的地址位于通用區(qū)域,轉(zhuǎn)入步驟S28。步驟S27:判斷用戶口令是否合法。如果合法則轉(zhuǎn)入步驟S28,否則轉(zhuǎn)入步驟S29。步驟S28:允許主設(shè)備通過總線對(duì)從設(shè)備執(zhí)行操作。步驟S29:總線監(jiān)控裝置向主設(shè)備發(fā)送中斷消息,并關(guān)閉相應(yīng)從設(shè)備的使能端d 。圖4示出了本發(fā)明的總線監(jiān)控系統(tǒng)的一個(gè)較佳實(shí)施例的原理。請(qǐng)參見圖4,總 線監(jiān)控系統(tǒng)包括總線IO,在總線10上可傳輸使能信號(hào)、主設(shè)備標(biāo)識(shí)號(hào)、讀/寫 操作、地址/數(shù)據(jù)和中斷信號(hào);若干個(gè)主設(shè)備21 2N,連接在總線10上;若干個(gè) 從設(shè)備,包括RAM30、非易失性存儲(chǔ)器40、 I/O電路60以及其他從設(shè)備50,均連 接在總線10上;以及一個(gè)總線監(jiān)控裝置70,連接在總線10上,總線監(jiān)控裝置70 實(shí)時(shí)采樣總線上的各類數(shù)據(jù),并將得到的數(shù)據(jù)信息在總線監(jiān)控裝置70內(nèi)部進(jìn)行處 理分析,根據(jù)判斷結(jié)果啟動(dòng)相應(yīng)措施阻止當(dāng)前指令的執(zhí)行以確保系統(tǒng)安全。圖5示出了總線監(jiān)控裝置的結(jié)構(gòu),請(qǐng)參見圖5。在外部,總線監(jiān)控裝置70有 一組輸入信息和輸出信息與總線10相連。其中輸入信息包括使能信號(hào)71、主設(shè)備 標(biāo)識(shí)72、讀/寫信號(hào)73、地址/數(shù)據(jù)信號(hào)74等,輸出信息包括中斷信號(hào)76和使能 信號(hào)77。在這些信息中,使能信號(hào)71是整個(gè)總線監(jiān)控裝置的使能信號(hào),控制該裝 置的開啟和關(guān)閉;主設(shè)備標(biāo)識(shí)72是總線上所有主設(shè)備的標(biāo)識(shí)信息,用于告知總線 監(jiān)控裝置當(dāng)前訪問從設(shè)備的主設(shè)備信息;讀/寫信號(hào)73是主設(shè)備訪問從設(shè)備的一種 主要控制信息,決定了主設(shè)備對(duì)從設(shè)備的具體操作方式;地址/數(shù)據(jù)信號(hào)74代表主 設(shè)備訪問從設(shè)備的位置信息和獲取(或?qū)懭?的具體數(shù)據(jù)。中斷信號(hào)76是總線監(jiān) 控裝置發(fā)送給指定從設(shè)備的使能信號(hào),該信號(hào)可以配合從設(shè)備的片選信號(hào)共同決定 主設(shè)備的訪問能力權(quán)限。使能信號(hào)77是總線監(jiān)控裝置發(fā)送給指定從設(shè)備的使能 信號(hào),該信號(hào)可以配合從設(shè)備的片選信號(hào)共同決定主設(shè)備的訪問能力權(quán)限。在內(nèi)部,總線監(jiān)控裝置由一組比較器和一個(gè)配置寄存器704組成。其中比較 器包括地址比較器701和數(shù)據(jù)比較器702和操作比較器703。配置寄存器704存儲(chǔ) 事先定義的總線訪問規(guī)則,請(qǐng)同時(shí)參見圖6,配置寄存器704按照存儲(chǔ)對(duì)象主要分 為兩大部分 一部分是針對(duì)RAM的訪問要求,另 一部分是針對(duì)非易失性存儲(chǔ)器的訪 問要求,還可以根據(jù)終端從設(shè)備的具體情況配置其他的例如讀寫操作配置參數(shù)上的 訪問要求。在本實(shí)施例中配置寄存器704存儲(chǔ)的對(duì)象包括RAM禁止讀/寫的地址范 圍704a、 RAM禁止讀/寫的數(shù)據(jù)列表704b、非易失性存儲(chǔ)器禁止讀/寫的地址范圍 704c、非易失性存儲(chǔ)器禁止讀/寫的數(shù)據(jù)列表704d以及操作規(guī)則列表704e, 操作 規(guī)則列表704e存儲(chǔ)了操作形式、操作對(duì)象、操作屬性等操作參數(shù),其中操作形式 包括讀和寫,操作對(duì)象包括總線上的一切從設(shè)備,例如設(shè)備ID號(hào),操作屬性包括 數(shù)據(jù)的位寬信息等。地址比較器701接收總線上的地址,將之與配置寄存器704 中的禁止讀/寫地址范圍進(jìn)行比較,如果總線上的地址位于范圍內(nèi),則發(fā)生中斷信 號(hào)76給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口。數(shù)據(jù)比較器702接收總線上的數(shù) 據(jù),將之與配置寄存器704中的禁止讀/寫數(shù)據(jù)列表進(jìn)行比較,如果總線上的數(shù)據(jù) 位于范圍內(nèi),則發(fā)生中斷信號(hào)76給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口 。操作 比較器703接收總線上的各項(xiàng)操作,將之與配置寄存器704中的操作規(guī)則列表704e 進(jìn)行比較,如果總線上的各項(xiàng)操作位于該操作規(guī)則列表范圍,則發(fā)生中斷信號(hào)76 給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口 。配置寄存器704也能以另一種配置方式配置如下基于存儲(chǔ)器中通常包括系 統(tǒng)數(shù)據(jù)、用戶數(shù)據(jù)等,按照數(shù)據(jù)訪問權(quán)限的不同,配置寄存器704可將存儲(chǔ)器分為 三部分系統(tǒng)專用區(qū)域、用戶私有區(qū)域和通用區(qū)域。系統(tǒng)專用區(qū)域只允許存放操作 系統(tǒng)程序、系統(tǒng)參數(shù)等與設(shè)備安全相關(guān)的重要數(shù)據(jù),該區(qū)域的地址在配置寄存器 704中被配置成只讀狀態(tài),對(duì)這些地址區(qū)域數(shù)據(jù)的改寫操作將觸發(fā)系統(tǒng)中斷。當(dāng)且 僅當(dāng)系統(tǒng)程序需要更新時(shí),主程序通過使能信號(hào)71關(guān)閉總線監(jiān)控裝置70對(duì)系統(tǒng)專 用區(qū)域的監(jiān)控功能。用戶私有區(qū)域是為用戶專備的私有空間,用戶通過口令訪問該空間,同時(shí)該 口令與使能信號(hào)71相關(guān)聯(lián)控制總線監(jiān)控裝置70對(duì)用戶私有區(qū)域的監(jiān)控功能。在沒 有用戶口令的情況下,總線監(jiān)控裝置行使監(jiān)控該區(qū)域的功能,非法程序?qū)υ搮^(qū)域的 讀操作將觸發(fā)系統(tǒng)中斷。除上述兩種區(qū)域之外的區(qū)域均為通用區(qū)域,主設(shè)備可以對(duì)這些區(qū)域進(jìn)行讀、 寫等任何操作。圖7示出了總線監(jiān)控系統(tǒng)的另一較佳實(shí)施例的結(jié)構(gòu)。請(qǐng)參見圖7,總線監(jiān)控系 統(tǒng)主要包括總線IO、掛接在總線上的多個(gè)主設(shè)備21 ~2N、總線監(jiān)控裝置70a以 及通過該裝置70a掛接在總線10上的RAM30和非易失性存儲(chǔ)器40、總線監(jiān)控裝置 70b以及通過該裝置70b掛接在總線10上的其他從設(shè)備50、總線監(jiān)控裝置70c以 及通過該裝置70c掛接在總線10上的I/O電路60。該實(shí)施例中的每一個(gè)總線監(jiān)控裝置只關(guān)聯(lián)與之連接的從設(shè)備,也就是說,每 個(gè)配置寄存器只存儲(chǔ)與之關(guān)聯(lián)的從設(shè)備的地址范圍、數(shù)據(jù)范圍以及操作規(guī)則列表。 系統(tǒng)總線IO發(fā)送過來的訪問信號(hào)首先經(jīng)過總線監(jiān)控裝置的判斷,如果符合既定規(guī) 則,則轉(zhuǎn)發(fā)給相應(yīng)的從設(shè)備,否則將返回中斷信號(hào)并阻止主設(shè)備對(duì)該從設(shè)備的訪問。上述實(shí)施例是提供給本領(lǐng)域普通技術(shù)人員來實(shí)現(xiàn)或使用本發(fā)明的,本領(lǐng)域普 通技術(shù)人員可在不脫離本發(fā)明的發(fā)明思想的情況下,對(duì)上述實(shí)施例做出種種修改或 變化,因而本發(fā)明的保護(hù)范圍并不被上述實(shí)施例所限,而應(yīng)該是符合權(quán)利要求書提 到的創(chuàng)新性特征的最大范圍。
權(quán)利要求
1一種監(jiān)控總線非法操作的方法,阻止非法程序通過總線執(zhí)行的非法操作,該方法包括將比較參數(shù)范圍存儲(chǔ)在配置寄存器中;將總線上的參數(shù)與該配置寄存器中存儲(chǔ)的比較參數(shù)范圍作比較,如果該總線上的參數(shù)屬于該比較參數(shù)范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口,否則該主設(shè)備通過該總線對(duì)該從設(shè)備執(zhí)行操作。
2.根據(jù)權(quán)利要求1所述的監(jiān)控總線非法操作的方法,其特征在于,該比較參 數(shù)范圍包括易失性存儲(chǔ)器的禁止讀/寫的地址范圍、易失性存儲(chǔ)器的禁止讀/寫的數(shù) 據(jù)范圍、非易失性存儲(chǔ)器的禁止讀/寫的地址范圍、非易失性存儲(chǔ)器的禁止讀/寫的 數(shù)據(jù)范圍、操作規(guī)則列表。
3.根據(jù)權(quán)利要求1所述的監(jiān)控總線非法操作的方法,其特征在于,所有的從 設(shè)備只關(guān)聯(lián)一個(gè)配置寄存器。
4.根據(jù)權(quán)利要求1所述的監(jiān)控總線非法操作的方法,其特征在于,每個(gè)從設(shè) 備各關(guān)聯(lián)一個(gè)配置寄存器。
5. —種監(jiān)控總線非法操作的方法,阻止非法程序通過總線執(zhí)行的非法操作, 該方法包括將從設(shè)備的地址范圍分為系統(tǒng)專用區(qū)域、用戶私有區(qū)域和通用區(qū)域; 在配置寄存器中,存儲(chǔ)該系統(tǒng)專用區(qū)域的地址范圍并將其配置成只讀狀態(tài),存儲(chǔ)該用戶私有區(qū)域的地址范圍并將該其配置成與用戶口令關(guān)聯(lián),存儲(chǔ)該通用區(qū)域的地址范圍;將總線上的地址參數(shù)與該配置寄存器中存儲(chǔ)的系統(tǒng)專用區(qū)域地址范圍、用戶 私有區(qū)域地址范圍和通用區(qū)域地址范圍作比較;如果總線上的地址參數(shù)屬于該系統(tǒng)專用區(qū)域地址范圍,則對(duì)該系統(tǒng)專用區(qū)域的讀操作被允許,對(duì)該區(qū)域的寫操作將被禁止且觸發(fā)系統(tǒng)中斷;如果總線上的地址參數(shù)屬于該用戶私有區(qū)域地址范圍,則同時(shí)接收用戶輸入 的口令,如果口令合法則對(duì)該用戶私有區(qū)域的讀寫操作均被允許,否則對(duì)該用戶私有區(qū)域的讀寫操作均被禁止,且觸發(fā)系統(tǒng)中斷;如果總線上的地址參數(shù)屬于該通用區(qū)域,則對(duì)該通用區(qū)域的讀寫操作均被允許。
6. —種總線監(jiān)控裝置,阻止非法程序通過總線執(zhí)行的非法操作,該芯片安全 裝置包括配置寄存器,存儲(chǔ)禁止讀/寫參數(shù)范圍;比較器,連接該配置寄存器和總線,接收總線上的參數(shù),與該配置寄存器存 儲(chǔ)的禁止讀/寫參數(shù)范圍作比較,如果該總線上的參數(shù)屬于該禁止讀/寫參數(shù)范圍, 則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口,否則發(fā)生使能信號(hào)至相 應(yīng)從設(shè)備的使能端口以使主設(shè)備通過總線對(duì)相應(yīng)從設(shè)備執(zhí)行操作。
7.根據(jù)權(quán)利要求6所述的總線監(jiān)控裝置,其特征在于,該配置寄存器存儲(chǔ)的 禁止讀/寫參數(shù)范圍包括禁止讀/寫地址參數(shù)范圍和禁止讀/寫數(shù)據(jù)參數(shù)范圍和操作 規(guī)則列表。
8.根據(jù)權(quán)利要求7所述的總線監(jiān)控裝置,其特征在于,該比較器包括地址比較器,比較總線上的地址參數(shù)和配置寄存器中的禁止讀/寫地址參數(shù)范 圍,如果該總線上的地址參數(shù)屬于該禁止讀/寫地址參數(shù)范圍,則發(fā)生中斷消息給 主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口;數(shù)據(jù)比較器,比較總線上的數(shù)據(jù)參數(shù)和配置寄存器中的禁止讀/寫數(shù)據(jù)參數(shù)范 圍,如果該總線上的數(shù)據(jù)參數(shù)屬于該禁止讀/寫數(shù)據(jù)參數(shù)范圍,則發(fā)生中斷消息給 主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口;操作比較器,比較總線上的操作參數(shù)和該配置寄存器中的操作規(guī)則列表,如 果該總線上的各項(xiàng)操作屬于該操作規(guī)則列表范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān) 閉相應(yīng)從設(shè)備的使能端口 。
9 一種總線監(jiān)控系統(tǒng),包括總線,用于傳輸使能信號(hào)、主設(shè)備標(biāo)識(shí)號(hào)、讀/寫操作、地址/數(shù)據(jù)和中斷信號(hào); 至少一個(gè)主設(shè)備,連接到該總線上; 至少一個(gè)從設(shè)備,連接到該總線上;一個(gè)總線監(jiān)控裝置,連接到該總線上,該總線監(jiān)控裝置包括 配置寄存器,存儲(chǔ)禁止讀/寫參數(shù)范圍;比較器,連接該配置寄存器和總線,接收總線上的參數(shù),與該配置寄存 器存儲(chǔ)的禁止讀/寫參數(shù)范圍作比較,如果該總線上的參數(shù)屬于該禁止讀/寫參數(shù)范 圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口,否則發(fā)生使能信號(hào) 至相應(yīng)從設(shè)備的使能端口以使主設(shè)備通過總線對(duì)相應(yīng)從設(shè)備執(zhí)行操作。
10. 根據(jù)權(quán)利要求9所述的總線監(jiān)控系統(tǒng),其特征在于,該配置寄存器存儲(chǔ) 的禁止讀/寫參數(shù)范圍包括禁止讀/寫地址參數(shù)范圍和禁止讀/寫數(shù)據(jù)參數(shù)范圍和操 作規(guī)則列表。
11. 根據(jù)權(quán)利要求9所述的總線監(jiān)控系統(tǒng),其特征在于,該比較器包括地址比較器,比較總線上的地址參數(shù)和配置寄存器中的禁止讀/寫地址參數(shù)范 圍,如果該總線上的地址參數(shù)屬于該禁止讀/寫地址參數(shù)范圍,則發(fā)生中斷消息給 主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口;數(shù)據(jù)比較器,比較總線上的數(shù)據(jù)參數(shù)和配置寄存器中的禁止讀/寫數(shù)據(jù)參數(shù)范 圍,如果該總線上的數(shù)據(jù)參數(shù)屬于該禁止讀/寫數(shù)據(jù)參數(shù)范圍,則發(fā)生中斷消息給 主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口 ;操作比較器,比較總線上的操作參數(shù)和該配置寄存器中的操作規(guī)則列表,如果 該總線上的各項(xiàng)操作屬于操作規(guī)則列表范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相 應(yīng)從設(shè)備的使能端口 。
12. —種總線監(jiān)控系統(tǒng),包括總線,用于傳輸使能信號(hào)、主設(shè)備標(biāo)識(shí)號(hào)、讀/寫操作、地址/數(shù)據(jù)和中斷信號(hào);至少一個(gè)主設(shè)備,連接到該總線上; 至少一個(gè)從設(shè)備,連接到該總線上;至少一個(gè)總線監(jiān)控裝置,每一該總線監(jiān)控裝置連接該總線與其中的一個(gè)從設(shè) 備,該總線監(jiān)控裝置包括配置寄存器,存儲(chǔ)禁止讀/寫參數(shù)范圍;比較器,連接該配置寄存器和總線,接收總線上的參數(shù),與該配置寄存器 存儲(chǔ)的禁止讀/寫參數(shù)范圍作比較,如果該總線上的參數(shù)屬于該禁止讀/寫參數(shù)范 圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口,否則發(fā)生使能信號(hào) 至相應(yīng)從設(shè)備的使能端口以使主設(shè)備通過總線對(duì)相應(yīng)從設(shè)備執(zhí)行操作。
13 根據(jù)權(quán)利要求12所述的總線監(jiān)控系統(tǒng),其特征在于,該配置寄存器存儲(chǔ) 的禁止讀/寫參數(shù)范圍包括禁止讀/寫地址參數(shù)范圍和禁止讀/寫數(shù)據(jù)參數(shù)范圍和操 作規(guī)則列表。
14 根據(jù)權(quán)利要求12所述的總線監(jiān)控系統(tǒng),其特征在于,該比較器包括 地址比較器,比較總線上的地址參數(shù)和配置寄存器中的禁止讀/寫地址參數(shù)范圍,如杲該總線上的地址參數(shù)屬于該禁止讀/寫地址參數(shù)范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口;數(shù)據(jù)比較器,比較總線上的數(shù)據(jù)參數(shù)和配置寄存器中的禁止讀/寫數(shù)據(jù)參數(shù)范圍,如果該總線上的數(shù)據(jù)參數(shù)屬于該禁止讀/寫數(shù)據(jù)參數(shù)范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口;操作比較器,比較總線上的操作參數(shù)和該配置寄存器中的操作規(guī)則列表,如果該總線上的各項(xiàng)操作屬于操作規(guī)則列表范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口。
全文摘要
本發(fā)明公開了一種監(jiān)控總線非法操作的方法和裝置,可阻止非法程序利用總線實(shí)施的對(duì)系統(tǒng)的攻擊。其技術(shù)方案為該方法包括將比較參數(shù)范圍存儲(chǔ)在配置寄存器中;將總線上的參數(shù)與該配置寄存器中存儲(chǔ)的比較參數(shù)范圍作比較,如果該總線上的參數(shù)屬于該比較參數(shù)范圍,則發(fā)生中斷消息給主設(shè)備,并關(guān)閉相應(yīng)從設(shè)備的使能端口,否則該主設(shè)備通過該總線對(duì)該從設(shè)備執(zhí)行操作。本發(fā)明應(yīng)用于數(shù)據(jù)傳輸監(jiān)控領(lǐng)域。
文檔編號(hào)G06F21/55GK101334760SQ20071004262
公開日2008年12月31日 申請(qǐng)日期2007年6月26日 優(yōu)先權(quán)日2007年6月26日
發(fā)明者玲 呂, 楊軍委, 王新入, 暉 繆 申請(qǐng)人:展訊通信(上海)有限公司