[發明專利]一種工控系統協議模糊測試的腳本管理方法在審
| 申請號: | 201811577595.1 | 申請日: | 2018-12-20 |
| 公開(公告)號: | CN109634870A | 公開(公告)日: | 2019-04-16 |
| 發明(設計)人: | 王進;吳濤;何躍鷹;擺亮;鄒瀟湘;郭濤;李明柱 | 申請(專利權)人: | 國家計算機網絡與信息安全管理中心 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 成都明濤智創專利代理有限公司 51289 | 代理人: | 丁國勇 |
| 地址: | 100029*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 模糊測試 測試 測試腳本 分層管理 工控系統 腳本管理 畸形數據 數據集合 綜合協議 腳本層 結構層 協議層 腳本 構建 字段 引擎 自動化 架構 模糊 | ||
本發明涉及一種工控系統協議模糊測試的腳本管理方法,采用如下步驟:步驟一:對模糊測試中的腳本采用分層管理的方式,形成六個層次的樹式結構;上述六個層次為:行業層、協議層、腳本層、PDU層、結構層、字段層;它采用分層管理方式來架構測試腳本以及測試用例,且構建綜合協議測試畸形數據體系,它能夠減少測試腳本的數量,通過模糊引擎自動按照數據集合生成相應的測試用例,實現了測試的自動化,縮短測試時間,提高模糊測試效率。
技術領域
本發明涉及一種工控系統協議模糊測試的腳本管理方法。
背景技術
模糊測試是一種通過向目標系統提供非預期的輸入并監視異常結果來發現軟件漏洞的方法。模糊測試是一項用于驗證程序中真實錯誤的重要工具,也是所有意識到安全性問題且著力于程序健壯性的程序員們的工具箱中所必備的工具。
各行業都有各自的工控設備和通訊協議,工控系統多種多樣,隨著國家對工業領域安全的重視,針對工控協議的模糊測試工具也開始受到重視,目前市場上的模糊測試產品很多,但是對于如何管理測試腳本,目前為止尚未形成整套高效的管理方法和體系。
發明內容
本發明的目的在于針對現有技術的缺陷和不足,提供一種工控系統協議模糊測試的腳本管理方法,其提出一整套完整的模糊測試腳本通用管理方法,將適用于大部分工控協議模糊測試工具,極大提高了測試效率。
為實現上述目的,本發明采用的技術方案是:
本發明所述的一種工控系統協議模糊測試的腳本管理方法,采用如下步驟:
步驟一:對模糊測試中的腳本采用分層管理的方式,形成六個層次的樹式結構;上述六個層次為:行業層、協議層、腳本層、PDU層、結構層、字段層;
(1)根據不同行業進行分類管理,形成按行業層管理樹式結構;
(2)針對步驟(1)行業來對該行業所涉及的協議進行管理,形成協議層;以電力行業為例,協議層包括協議MMS、協議Modbus、協議OPCUA等;
(3)針對步驟(2)中的不同協議,按功能碼類型進行區分,如MMS進行read腳本、Write腳本進行管理,協議OPCUA進行OpenChannel腳本、CreatSession腳本等的管理,形成腳本層;
(4)針對步驟(3)中的read腳本實現對協議數據單元PDU-TPKT、PDU-COTP、PDU-Request管理,OpenChannel腳本實現對協議數據單元PDU-Request等管理,形成PDU層;
(5)針對步驟(4)的協議數據單元PDU-Request來構建Struct結構,形成結構層;
(6)針對步驟(5)中的Struct結構來構建Field字段、length字段,形成字段層;
步驟二:針對步驟一中的腳本層,其腳本采用XML規范定義;
步驟三:根據步驟二中的腳本層來進行腳本約束,在需要動態計算的字段或者結構中,增加約束函數,模糊測試引擎根據不同的約束函數,調用不同的約束計算方法,生成動態數據,并自動填充到相應的測試用例數據域中;
(1)采用CRC計算校驗;
(2)字段長度計算,根據指定的數據域,將模糊后的數據重新統計計算
出新的字段長度,并填充;
(3)字段自增,定義變量,根據協議規范執行相應的計算,并將結果填充;
(4)自動獲取時間,并填充相應字段;
(5)簽名加密計算,根據協議規范指定的算法,將模糊后的數據重新計算簽名值或加密值,并填充;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于國家計算機網絡與信息安全管理中心,未經國家計算機網絡與信息安全管理中心許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811577595.1/2.html,轉載請聲明來源鉆瓜專利網。





