[發明專利]一種基于狀態關系圖的PLC漏洞挖掘方法在審
| 申請號: | 201710087439.6 | 申請日: | 2017-02-17 |
| 公開(公告)號: | CN106647612A | 公開(公告)日: | 2017-05-10 |
| 發明(設計)人: | 王勇;劉蔚;賀文婷 | 申請(專利權)人: | 上海云劍信息技術有限公司 |
| 主分類號: | G05B19/05 | 分類號: | G05B19/05 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 200433 上海市*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 狀態 關系 plc 漏洞 挖掘 方法 | ||
技術領域
本發明涉及漏洞自動挖掘領域,尤其涉及一種基于狀態關系圖的PLC漏洞挖掘方法。
背景技術
PLC漏洞挖掘是當前工業控制系統安全的一個非常重要的關鍵技術,PLC作為工業控制系統的重要組成部分之一,其安全性也是如今關注的焦點。在近幾年對工控系統的評估研究中,發現PLC系統存在著不少安全隱患,如西門子PLC及監控軟件APOGEE Insight存在“劫持漏洞”;施耐德電氣公司所發布的莫迪康(Modicon)M340可編程邏輯控制器(PLC)存在高嚴重性緩沖區溢出漏洞;三菱FX3G PLC存在拒絕服務漏洞,允許攻擊者利用該漏洞通過發送特殊數據包使PLC重啟等。所以對PLC系統的漏洞挖掘是當下研究的重點。
PLC(可編程邏輯控制器)是一種采用一類可編程的存儲器,用于其內部存儲程序,執行邏輯運算、順序控制、定時、計數與算術操作等面向用戶的指令,并通過數字或模擬式輸入/輸出控制各種類型的機械或生產過程。其工作原理是通過反復執行用戶程序來實現控制功能,采用循環掃描的工作方式,系統周而復始的以一定的順序完成一系列的具體工作,這些工作包括內部處理、通信處理、輸入處理、程序執行、輸出處理這五個階段。PLC每進行一次掃描循環所用的時間為掃描周期。PLC分為運行(RUN)和停止(STOP)兩種工作狀態,當處于運行狀態時,上述掃描周期不斷循環;當處于停止狀態時,只完成內部處理和通信服務工作。
當前對工控系統的漏洞挖掘主要基于模糊測試技術,模糊測試是一種通過向目標系統提供非預期的輸入并監視異常結果來發現軟件漏洞的方法。其主要是利用SPIKE、Peach、Sulley、Dfuz和Bunny等工具進行模糊測試。當前對PLC漏洞挖掘技術有基于軟硬件編程數據的工業控制系統的漏洞挖掘方法,但是當前PLC挖掘的模糊測試效率還比較低,產生的畸形數據導致PLC異常的漏洞挖掘方法不適用于運行狀態下PLC漏洞監測。
發明內容
本發明的目的在于克服現有技術的不足,提供一種基于狀態關系圖的PLC漏洞挖掘方法。該方法的基本原理是根據PLC的運行過程,首先在正常狀態下生產輸入狀態圖和輸出狀態圖,然后在對數據輸入、程序處理、數據輸出過程注入攻擊數據,通過對比狀態圖的差異,判斷PLC是否存在安全漏洞。
本發明為克服現有技術的不足采取以下技術方案實現:
本發明公布了一種基于狀態關系圖的PLC漏洞挖掘方法,該方法主要利用采集某時刻輸入映像區和輸出鎖存區的數據,生成狀態,研究輸入狀態與輸出狀態之間的邏輯關系,以此得出邏輯狀態關系圖,由此圖來判斷PLC中是否存在壞數據注入攻擊,以及是在PLC工作過程中的哪一部分區域存在何種壞數據注入攻擊。
這種方法可以分為三個模塊:狀態關系圖生成模塊、壞數據注入攻擊模塊和PLC漏洞判斷模塊。
狀態關系圖生成模塊:讀取輸入映像區的數據,就可以生成某時刻輸入映像區的狀態。與此同時,讀取輸出鎖存區的數據,就可以生成某時刻輸出鎖存區的狀態。然后,通過輸入映像區的狀態以及輸出鎖存區的狀態之間的邏輯關系,產生出邏輯狀態關系圖。
壞數據注入攻擊模塊:在某個時鐘周期內,在PLC正常運行過程中,對PLC的輸入映像區和輸出鎖存區注入壞數據。PLC的所有輸入端子的數據按順序存入輸入映像區。然后在程序處理區中,PLC根據讀入的輸入數據,依次執行指令中的內容,并寫入映像區。當所有指令執行結束后,將輸入映像區中的狀態傳輸至輸出鎖存區中做最后的輸出處理。在壞數據注入攻擊后,會導致輸入映像區、程序處理區和輸出鎖存區的數據產生差異,通過數據之間的邏輯關系,引發數據之間的關聯故障。
PLC漏洞判斷模塊:通過對比正常時候產生的輸入狀態、輸出狀態的邏輯關系來判斷PLC工作過程中的各區域是否存在壞數據注入攻擊,其步驟如下:
步驟1:采集輸入數據,采集所有輸入端子的數據;
步驟2:根據所采集的輸入數據,生成某時刻的輸入狀態圖;
步驟3:采集輸出數據,采集所有輸出端子的數據;
步驟4:根據所采集的輸出數據,生成某時刻的輸出狀態圖;
步驟5:根據輸入和輸出的邏輯狀態關系圖判斷此時刻的輸入狀態和輸出狀態是否符合邏輯關系,若符合則回到步驟1,因為PLC的工作流程是周而復始地進行,所以開始新一輪的數據采集,若不符合則繼續進行PLC漏洞判斷;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海云劍信息技術有限公司,未經上海云劍信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710087439.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種雨水滲透收集管
- 下一篇:景觀水河道濕地取水裝置





