版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
工業(yè)控制協(xié)議通信健壯性測試規(guī)范范圍本文件給出了工業(yè)控制協(xié)議通信健壯性的測試方法、測試項和異常監(jiān)測方法。本文件適用于工業(yè)控制設(shè)備或工控上位機所采用的工業(yè)控制協(xié)議的通信健壯性測試,可用于指導(dǎo)檢測機構(gòu)、產(chǎn)品供應(yīng)商等開展相關(guān)測試活動,也可用于指導(dǎo)相關(guān)測試工具的研發(fā)。規(guī)范性引用文件下列文件中的內(nèi)容通過文中的規(guī)范性引用而構(gòu)成本文件必不可少的條款。其中,注日期的引用文件,僅該日期對應(yīng)的版本適用于本文件;不注日期的引用文件,其最新版本(包括所有的修改單)適用于本文件。GB/T25069-2022信息安全技術(shù)術(shù)語術(shù)語和定義GB/T25069界定的以及下列術(shù)語和定義適用于本文件。工控上位機industrialcontrolhost在工業(yè)控制環(huán)境中,管理、控制工業(yè)控制設(shè)備的主機。注1:通常運行通用的操作系統(tǒng),如Windows,Unix/Linux等。[來源:GB/T37962-2019,3.2]工業(yè)控制設(shè)備industrialcontroldevice對工業(yè)生產(chǎn)過程及裝置進行檢測與控制的設(shè)備。[來源:GB/T37962-2019,3.3]工業(yè)控制協(xié)議industrialcontrolprotocol工業(yè)控制系統(tǒng)中,上位機與控制設(shè)備之間以及控制設(shè)備與控制設(shè)備之間的通信報文規(guī)約。通常包括模擬量和數(shù)字量的讀寫控制。[來源:GB/T37933-2019,3.1]健壯性robustness描述網(wǎng)絡(luò)關(guān)鍵設(shè)備或部件在無效數(shù)據(jù)輸入或者在高強度輸入等環(huán)境下,其各項功能可保持正確運行的程度。[來源:GB40050—2021,3.5]縮略語下列縮略語適用于本文件。TLV:TLV編碼(TypeLengthValue)概述工業(yè)控制協(xié)議通信健壯性測試主要用于驗證工業(yè)控制設(shè)備或工控上位機在采用工業(yè)控制協(xié)議進行通信時,針對異常輸入或高強度輸入下的正確性和穩(wěn)定性。測試對象工業(yè)控制協(xié)議通信健壯性測試對象為工業(yè)控制設(shè)備或工控上位機上實現(xiàn)的工業(yè)控制協(xié)議,如Modbus/TCP、Ethernet/IP、IEC60870-5-104等。測試要求工業(yè)控制協(xié)議通信健壯性測試應(yīng)覆蓋相關(guān)協(xié)議規(guī)約中約定的所有報文類型和協(xié)議狀態(tài)機,應(yīng)對每種報文類型進行錯誤注入測試、結(jié)構(gòu)變異測試和風(fēng)暴測試,對每種協(xié)議狀態(tài)進行上下文異常測試。測試環(huán)境工業(yè)控制協(xié)議通信健壯性測試環(huán)境通常由測試儀和測試對象組成,測試儀用于向測試對象發(fā)送異常報文或網(wǎng)絡(luò)風(fēng)暴,并實時監(jiān)測測試對象運行狀態(tài)。測試儀應(yīng)盡量與測試對象直接相連,以避免中間網(wǎng)絡(luò)設(shè)備造成的干擾。圖1工控協(xié)議通信健壯性測試示意圖測試項工業(yè)控制協(xié)議通信健壯性測試包括報文錯誤注入測試、報文結(jié)構(gòu)變異測試、上下文異常測試和風(fēng)暴測試。報文錯誤注入測試針對協(xié)議規(guī)約的每種報文類型,構(gòu)造或捕獲該類型報文的典型通信樣本,對通信樣本中各字段進行錯誤注入,即對各字段值進行變異,生成測試報文并發(fā)送給測試對象,考察測試對象處理此種異常報文的能力。單字段變異基于通信樣本報文,依次對報文各個字段值進行變異,每次只變異一個字段,直至遍歷該類型報文所有字段,考察測試對象處理單字段異常報文的能力。根據(jù)報文字段長度是否變化可將字段分為定長字段和不定長字段。定長字段變異定長字段通常包括協(xié)議標識字段、報文長度字段、功能碼/服務(wù)字段、序列號字段、校驗和字段、數(shù)字簽名字段等,字段的值類型包括有符號整型、無符號整型、字符串類型等。定長字段變異應(yīng)滿足如下要求:當定長字段為N位有符號整型數(shù)值時,變異值應(yīng)覆蓋兩側(cè)端點值:–2(N–1)、–2(N–1)+1、+2(N–1)–1、+2(N–1)–2和主要中間值:-2、-1、0、+1??山Y(jié)合協(xié)議規(guī)約,將該字段的一個或多個典型非法值作為變異值引入??勺詣由梢粋€或多個隨機值作為變異值引入。當定長字段為N位無符號整型數(shù)值時,變異值應(yīng)覆蓋兩側(cè)端點值0、1、2N–2、2N–1,典型中間值2(N–1)–2、2(N–1)–1、2(N–1)、2(N–1)+1??山Y(jié)合協(xié)議規(guī)約,將該字段的一個或多個典型非法值作為變異值引入??勺詣由梢粋€或多個隨機值作為變異值引入。當定長字段為N字節(jié)字符串時,應(yīng)根據(jù)字符串長度進行變異,變異值應(yīng)包括特殊字符(如“reboot”、“shutdown”等系統(tǒng)命令字符,“\r”、“\n”換行符,“%s”、“%n”等格式化符)、空字符串和違反編碼規(guī)則的字符串(如非法的字符編碼或字符集)。對于重要功能字段,如功能碼、子功能碼、服務(wù)字段等,變異值可覆蓋該字段的所有合法值和典型非法值。在N較小情況下,變異值可遍歷字段所有可能數(shù)值,即從0至2N–1。在對定長字段進行變異時,應(yīng)確保報文中其他非變異字段值的正確性,如校驗和字段、數(shù)字簽名字段、長度字段等。不定長字段變異不定長字段通常包括用戶名、文件名等自限制長度的字符串字段、TLV結(jié)構(gòu)等。不定長字段變異應(yīng)滿足如下要求:當不定長字段為自限制長度的字符串類型時,變異值應(yīng)包括含特殊字符(如“reboot”、“shutdown”等系統(tǒng)命令字符,“\r”、“\n”換行符,“%s”、“%n”等格式化符)、空字符串、超長字符串和違反編碼規(guī)則的字符串(如非法的字符編碼或字符集)。當不定長字段為TLV結(jié)構(gòu)時,應(yīng)結(jié)合Type字段取值首先確定Value字段值類型,根據(jù)Value字段值類型對其變異。Length字段取值應(yīng)與變異值長度保持一致。當不定長字段值超過單報文最大長度時,可根據(jù)協(xié)議規(guī)約對報文進行分片。在不對定長字段進行變異時,應(yīng)確保報文中其他非變異字段值的正確性,如校驗和字段、數(shù)字簽名字段、長度字段等。字段組合變異基于通信樣本報文,選取兩個或多個報文字段同時進行變異,考察測試對象處理此種異常報文的能力。組合變異的字段可選取重要功能字段或語義相關(guān)的字段(如:對于Modbus/TCP協(xié)議,同時對協(xié)議標識和長度字段進行變異、同時對功能碼和子功能字段進行變異)。組合變異選取的字段數(shù)量不宜過大,可通過限制字段變異值數(shù)量、限制變異組合數(shù)量,將變異報文數(shù)量控制在可接受范圍內(nèi)。報文結(jié)構(gòu)變異測試針對協(xié)議規(guī)約的每種報文類型,根據(jù)報文結(jié)構(gòu)將報文劃分為標識部分、控制部分、數(shù)據(jù)部分、選項部分等,對劃定部分進行變異,包括復(fù)制、刪除、截斷、位置變換等操作,即報文結(jié)構(gòu)變異,生成測試報文,考察測試對象處理此種結(jié)構(gòu)異常報文的能力。在結(jié)構(gòu)變異中,應(yīng)保證非變異部分字段值于有效范圍。上下文異常測試根據(jù)協(xié)議規(guī)約,發(fā)送前置報文,使測試對象協(xié)議狀態(tài)機處于指定狀態(tài),在該狀態(tài)下向測試對象發(fā)送非預(yù)期協(xié)議報文,考察測試對象處理此種上下文異常的能力。非預(yù)期報文可從當前協(xié)議狀態(tài)下不應(yīng)收到的報文類型中選取。測試應(yīng)覆蓋協(xié)議狀態(tài)機所有狀態(tài)。風(fēng)暴測試根據(jù)協(xié)議規(guī)約,選取一種報文類型,構(gòu)造或捕獲該協(xié)議狀態(tài)的典型通信樣本,以線速或接近測試對象最大處理能力的速率發(fā)送樣本報文,并持續(xù)一段時間,考察測試對象在風(fēng)暴停止后,其網(wǎng)絡(luò)服務(wù)能否在合理時間內(nèi)恢復(fù)正常。如測試對象具備控制功能,可同時考察測試對象在風(fēng)暴測試過程中其控制輸出有無異常。風(fēng)暴測試應(yīng)覆蓋協(xié)議規(guī)約中的所有報文類型。異常監(jiān)測異常監(jiān)測包括網(wǎng)絡(luò)服務(wù)監(jiān)測和控制功能監(jiān)測,主要用于考察測試對象在報文錯誤注入測試、報文結(jié)構(gòu)變異測試、上下文異常測試或風(fēng)暴測試中,其網(wǎng)絡(luò)狀態(tài)或控制功能是否出現(xiàn)異常。網(wǎng)絡(luò)服務(wù)監(jiān)測網(wǎng)絡(luò)服務(wù)監(jiān)測要求如下:在報文錯誤注入測試、報文結(jié)構(gòu)變異測試和上下文異常測試過程中,應(yīng)對測試對象的網(wǎng)絡(luò)狀態(tài)進行實時監(jiān)測,考察測試對象的網(wǎng)絡(luò)狀態(tài)在測試過程中是否出現(xiàn)異常。對于風(fēng)暴測試,應(yīng)在風(fēng)暴停止后監(jiān)測測試對象的網(wǎng)絡(luò)狀態(tài),考察測試對象的網(wǎng)絡(luò)狀態(tài)能否在合理時間內(nèi)恢復(fù)正常。可從不同層面對測試對象網(wǎng)絡(luò)狀態(tài)進行監(jiān)測,如通過ICMP協(xié)議監(jiān)測測試對象的IP可達性、通過SNMP協(xié)議監(jiān)測測試對象的系統(tǒng)狀態(tài)、通過工控協(xié)議端口狀態(tài)監(jiān)測測試對象工控服務(wù)的可用性、通過工控協(xié)議狀態(tài)監(jiān)測報文或控制報文監(jiān)測測試對象的協(xié)議功能有無異常。應(yīng)為測試對象設(shè)定合理的網(wǎng)絡(luò)狀態(tài)監(jiān)測周期,監(jiān)測周期過短會降低測試效率、過長會導(dǎo)致異常狀態(tài)被遺漏。對于測試對象系統(tǒng)或服務(wù)進程重啟速度較快、出現(xiàn)異常難以發(fā)現(xiàn)的情況,可采用基于TCP長連接的協(xié)議功能監(jiān)測方式進行異常監(jiān)測。控制功能監(jiān)測對于具備控制功能的測試對象,可通過專用信號采集模塊對測試對象的控制輸出波形進行實時采集與分析,可根據(jù)測試對象廠商聲明的控制輸出抖動最大容差和置信度(一般不低于95%),考察測試過程中控制輸出是否出現(xiàn)異常抖動。注2:抖動是指信號事件被檢測到的時間與基于參考信號的預(yù)期時間之間的差異。在需要精確同步的工業(yè)場合,異常抖動會導(dǎo)致控制過程中的不確定性。注3:置信度以百分比表示,表示預(yù)期有該比例的抖動測量值小于最大容差。例如抖動最大容差為50ms和置信度為95%,則意味著預(yù)計95%的抖動測量值將小于50ms。測試方法報文錯誤注入測試針對協(xié)議規(guī)約的每種報文類型,構(gòu)造或捕獲該類型報文的典型通信樣本,對通信樣本中各字段進行錯誤注入,生成測試報文并發(fā)送給測試對象,考察測試對象處理此種異常報文的能力。單字段變異測試單字段變異測試方法如下:預(yù)置條件:對測試對象進行配置,使其工控協(xié)議相關(guān)業(yè)務(wù)功能處于有效狀態(tài)。如測試對象支持控制功能,配置其控制輸出模塊周期性輸出指定波形,用于控制功能監(jiān)測。檢測步驟:啟動異常監(jiān)測器,對測試對象的網(wǎng)絡(luò)服務(wù)狀態(tài)或控制輸出進行實時監(jiān)測。根據(jù)協(xié)議規(guī)約,選定一種協(xié)議報文類型,構(gòu)造或捕獲該類型報文的通信樣本,樣本內(nèi)容應(yīng)與測試對象配置參數(shù)相匹配。向測試對象發(fā)送樣本報文,分析測試對象反饋報文,驗證樣本報文能否被正確處理。如樣本報文類型需要測試對象處于特定協(xié)議狀態(tài),則應(yīng)先發(fā)送前置報文使其到達測試所需狀態(tài),再發(fā)送樣本報文。如樣本報文可被正確處理,則基于樣本報文,選定一個報文字段,根據(jù)字段類型對該字段值進行變異;同時重新計算報文長度、校驗和、簽名等字段值,以保證非變異字段的有效性;生成測試報文,發(fā)送給測試對象,監(jiān)測測試對象有無異常。如樣本報文需要測試對象處于特定協(xié)議狀態(tài),則應(yīng)先發(fā)送前置報文使其到達測試所需狀態(tài),再發(fā)送測試報文。重復(fù)步驟4,依次遍歷該字段需覆蓋的全部變異值。重復(fù)步驟4-5,依次對樣本報文所有字段進行變異。重復(fù)步驟2-6,依次對協(xié)議規(guī)約中約定的所有報文類型進行單字段變異測試。可根據(jù)測試對象性能調(diào)整測試報文發(fā)送速率和異常監(jiān)測周期,以提升測試效率。預(yù)期結(jié)果:在測試過程中,異常監(jiān)測器未檢測到測試對象的網(wǎng)絡(luò)狀態(tài)異常(如IP不可達、TCP/UDP工控協(xié)議服務(wù)端口不可達、協(xié)議功能異常等)或控制輸出異常。判定原則:測試結(jié)果應(yīng)與預(yù)期結(jié)果相符。字段組合變異測試字段組合變異測試方法如下:預(yù)置條件:對測試對象進行配置,使其工控協(xié)議相關(guān)業(yè)務(wù)功能處于有效狀態(tài)。如測試對象支持控制功能,配置其控制輸出模塊周期性輸出指定波形,用于控制功能監(jiān)測。檢測步驟:啟動異常監(jiān)測器,對測試對象的網(wǎng)絡(luò)服務(wù)狀態(tài)或控制輸出進行實時監(jiān)測。根據(jù)協(xié)議規(guī)約,選定一種協(xié)議報文類型,構(gòu)造或捕獲該類型報文的通信樣本,樣本內(nèi)容應(yīng)與測試對象配置參數(shù)相匹配。向測試對象發(fā)送樣本報文,分析測試對象反饋報文,驗證樣本報文能否被正確處理。如樣本報文類型需要測試對象處于特定協(xié)議狀態(tài),則應(yīng)先發(fā)送前置報文使其到達測試所需狀態(tài),再發(fā)送樣本報文。如樣本報文可被正確處理,則基于樣本報文,從中選取兩個或多個字段組合進行變異;同時重新計算報文長度、校驗和、簽名等字段值,以保證非變異字段的有效性;生成測試報文,發(fā)送給測試對象,監(jiān)測測試對象有無異常。如樣本報文類型需要測試對象處于特定協(xié)議狀態(tài),則應(yīng)先發(fā)送前置報文使其到達測試所需狀態(tài),再發(fā)送測試報文。重復(fù)步驟4,依次遍歷選定字段的所有變異值組合。重復(fù)步驟4-5,依次選取重要功能字段或語義相關(guān)字段進行組合變異。重復(fù)步驟2-6,依次對協(xié)議規(guī)約中約定的所有報文類型進行組合變異。可根據(jù)測試對象性能調(diào)整測試報文發(fā)送速率和異常監(jiān)測周期,以提升測試效率。預(yù)期結(jié)果:在測試過程中,異常監(jiān)測器未檢測到測試對象的網(wǎng)絡(luò)狀態(tài)異常(如IP不可達、TCP/UDP工控協(xié)議服務(wù)端口不可達、協(xié)議功能異常等)或控制輸出異常。判定原則:測試結(jié)果應(yīng)與預(yù)期結(jié)果相符。報文結(jié)構(gòu)變異測試報文結(jié)構(gòu)變異測試方法如下:預(yù)置條件:對測試對象進行配置,使其工控協(xié)議相關(guān)業(yè)務(wù)功能處于有效狀態(tài)。如測試對象支持控制功能,配置其控制輸出模塊周期性輸出指定波形,用于控制功能監(jiān)測。檢測步驟:啟動異常監(jiān)測器,對測試對象的網(wǎng)絡(luò)服務(wù)狀態(tài)或控制輸出進行實時監(jiān)測。根據(jù)協(xié)議規(guī)約,選定一種協(xié)議報文類型,構(gòu)造或捕獲該類型報文的通信樣本,樣本內(nèi)容應(yīng)與測試對象配置參數(shù)相匹配。向測試對象發(fā)送樣本報文,分析測試對象反饋報文,驗證樣本報文能否被正確處理。如樣本報文類型需要測試對象處于特定協(xié)議狀態(tài),則應(yīng)先發(fā)送前置報文使其到達測試所需狀態(tài),再發(fā)送樣本報文。如樣本報文可被正確處理,則基于樣本報文,從中選取一個報文結(jié)構(gòu)對其進行變異;同時重新計算報文長度、校驗和、簽名等字段值,以保證非變異字段值的有效性;生成測試報文,發(fā)送給測試對象,監(jiān)測測試對象有無異常。如樣本報文類型需要測試對象處于特定協(xié)議狀態(tài),則應(yīng)先發(fā)送前置報文使其到達測試所需狀態(tài),再發(fā)送測試報文。重復(fù)步驟5,依次對選定報文結(jié)構(gòu)進行各種變異,包括復(fù)制、刪除、截斷、位置變換等。重復(fù)步驟4-5,依次遍歷樣本報文的所有結(jié)構(gòu)。重復(fù)步驟2-6,依次對協(xié)議規(guī)約中約定的所有報文類型進行結(jié)構(gòu)變異測試??筛鶕?jù)測試對象性能調(diào)整測試報文發(fā)送速率和異常監(jiān)測周期,以提升測試效率。預(yù)期結(jié)果:在測試過程中,異常監(jiān)測器未檢測到測試對象的網(wǎng)絡(luò)狀態(tài)異常(如IP不可達、TCP/UDP工控協(xié)議服務(wù)端口不可達、協(xié)議功能異常等)或控制輸出異常。判定原則:測試結(jié)果應(yīng)與預(yù)期結(jié)果相符。上下文異常測試預(yù)置條件:對測試對象進行配置,使其工控協(xié)議相關(guān)業(yè)務(wù)功能處于有效狀態(tài)。如測試對象支持控制功能,配置其控制輸出模塊周期性輸出指定波形,用于控制功能監(jiān)測。檢測步驟:啟動異常監(jiān)測器,對測試對象的網(wǎng)絡(luò)服務(wù)狀態(tài)或控制輸出進行實時監(jiān)測。根據(jù)協(xié)議規(guī)約,選定一種協(xié)議狀態(tài),發(fā)送前置報文使測試對象到達測試所需協(xié)議狀態(tài)。向測試對象發(fā)送該協(xié)議狀態(tài)下的非預(yù)期報文,非預(yù)期報文應(yīng)為格式和內(nèi)容均正確且與測試對象配置參數(shù)相匹配的報文,監(jiān)測測試對象有無異常。重復(fù)步驟3,至少覆蓋3種非預(yù)期報文。非預(yù)期報文類型應(yīng)盡量為當前狀態(tài)語義相關(guān)報文。重復(fù)步驟2-4,依次對協(xié)議規(guī)約中約定的所有協(xié)議狀態(tài)進行上下文異常測試。預(yù)期結(jié)果:在測試過程中,異常監(jiān)測器未檢測到測試對象的網(wǎng)絡(luò)狀態(tài)異常(如IP不可達、TCP/UDP工控協(xié)議服務(wù)端口不可達、協(xié)議
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《酒店新員工培訓(xùn)》課件
- 《教育本質(zhì)》課件
- 《詞類句子成分》課件
- 急性風(fēng)濕熱的健康宣教
- 兒童牙病的健康宣教
- 垂體性閉經(jīng)的健康宣教
- 孕期水樣分泌物的健康宣教
- 《例解決問題》課件
- 武漢大學(xué)金融工程學(xué)課件-金融工程
- 腎上腺髓質(zhì)增生的臨床護理
- 2024-2025學(xué)年小學(xué)美術(shù)一年級上冊(2024)桂美版(2024)教學(xué)設(shè)計合集
- 國際貿(mào)易理論與實務(wù) 課件 第7章 區(qū)域經(jīng)濟一體化
- 2024內(nèi)蒙古財經(jīng)大學(xué)輔導(dǎo)員公開招聘(列編招聘)3人及歷年高頻難、易錯點500題模擬試題附帶答案詳解
- 安徽省2023-2024學(xué)年七年級上學(xué)期期末數(shù)學(xué)試題(原卷版)
- 醫(yī)院等級創(chuàng)建工作匯報
- 2024至2030年中國3C電子產(chǎn)品租賃行業(yè)市場深度研究及投資規(guī)劃建議報告
- 11G902-1 G101系列圖集常用構(gòu)造三維節(jié)點詳圖
- DL∕T 5372-2017 水電水利工程金屬結(jié)構(gòu)與機電設(shè)備安裝安全技術(shù)規(guī)程
- 溝槽土方開挖施工
- 2024年云南中考歷史試卷試題答案解析及備考指導(dǎo)課件(深度解讀)
- 工程電磁場(山東聯(lián)盟)智慧樹知到期末考試答案章節(jié)答案2024年山東航空學(xué)院
評論
0/150
提交評論