公司動態(tài)
3300/53 超速保護轉(zhuǎn)速表
閱讀:107 發(fā)布時間:2018-2-263300/53 超速保護轉(zhuǎn)速表
PLC是工業(yè)領(lǐng)域中很常用的一種控制器?,F(xiàn)在常用的PLC都配備有以太網(wǎng)接口,并采用了IP協(xié)議。我們基于西門子S7-1200設(shè)計了一個蠕蟲病毒,這種蠕蟲病毒不需要借助PC機,僅僅基于PLC設(shè)備就能實現(xiàn)擴散,攻擊目標并將自身進行復(fù)制。該蠕蟲病毒代碼在目標機復(fù)制后不會發(fā)生變化,從而可以重復(fù)進行目標掃描,進一步擴散。我們分析了該蠕蟲病毒的影響和預(yù)防措施。
1.概述
IT是現(xiàn)代工業(yè)控制系統(tǒng)的重要組成部分,因為如果沒有IT系統(tǒng),生產(chǎn)過程將無法進行。不幸的事,由于引入了IT系統(tǒng),工控系統(tǒng)的使用者也面臨著傳統(tǒng)IT系統(tǒng)的信息安全威脅。IT系統(tǒng)的黑客可以從幾個不同的角度威脅工控系統(tǒng)。他們可以引起生產(chǎn)中斷,造成巨額經(jīng)濟損失,以及損壞周圍人員的健康安全。震網(wǎng)病毒的案例充分說明了這一點。伊朗鈾濃縮工作受西門子PLC被篡改的影響,被迫暫停。蠕蟲病毒利用windows的漏洞,在鈾濃縮工廠的PC之間傳播。PLC的軟件被篡改,使得離心機被毀。該蠕蟲病毒需要借助PC機進行傳播,并基于PC機攻擊PLC設(shè)備。本文演示了一種基于PLC設(shè)備進行傳播的蠕蟲病毒,而不需要PC機。這種病毒可能被在役的PLC傳播到工控系統(tǒng)中,并在PLC之間傳播和復(fù)制。該蠕蟲病毒進入目標后,復(fù)制自身代碼并修改目標PLC中已經(jīng)下載完畢的用戶代碼,使病毒激活。本文基于西門子S7-1200 v3進行實驗,用結(jié)構(gòu)文本編輯病毒代碼。
2.相關(guān)工作
2015年,Klick等人利用PLC的通信機制實現(xiàn)了一個代理,進而展示了一種病毒。本文利用這一通信機制,基于新型號的S7-1200 V3實現(xiàn)了蠕蟲病毒在PLC之間的傳播。
3.PLC結(jié)構(gòu)
圖1 Zyklus eines PLCs
PLC的過程映像區(qū)保存有所有輸入和輸出的狀態(tài),用戶程序在過程映像區(qū)中運行,不直接操作PLC的物理輸入和輸出接口。用戶程序按照循環(huán)周期運行,在每個循環(huán)周期的開始和結(jié)束時間CPU會刷新過程映像區(qū),循環(huán)的zui長時間限制被稱作循環(huán)周期。如果超出了循環(huán)周期,PLC會停止運行并報異常。
程序組織單元(Program Organization Units,POU),西門子S7-1200支持如下POU:
組織塊(Organization block,OB),進入用戶程序的主要入口
數(shù)據(jù)塊(Data block,DB),全局存儲
函數(shù)(Function),函數(shù)
函數(shù)塊(Function Block,F(xiàn)B),具有持續(xù)本地存儲的函數(shù)
除了用戶定義POU函數(shù),西門子還提供了幾種函數(shù)。包括TCON、TDISCON,利用這些函數(shù)PLC可以初始化和終止與任意系統(tǒng)之間的TCP連接。基于TRCV和TSEND函數(shù)緩沖區(qū)可以發(fā)送和接收函數(shù)。
4.計算機蠕蟲病毒
蠕蟲病毒攻擊包括以下三個階段:可能目標檢測,向目標擴散,在目標上激活并執(zhí)行惡意代碼。
5.S7 1200的蠕蟲病毒實現(xiàn)
5.1結(jié)構(gòu)
在S7 1200PLC上實現(xiàn)蠕蟲病毒首先要滿足PLC關(guān)于zui大執(zhí)行的循環(huán)時間限制,所以蠕蟲病毒必須每隔幾毫秒就暫停一次,然后在下一次循環(huán)周期開始時重新啟動。為了滿足這一要求,本文使用狀態(tài)機設(shè)計蠕蟲病毒,將病毒的當前狀態(tài)保存在一個全局變量中,每隔循環(huán)周期的開始階段會調(diào)用病毒的特定代碼,確保病毒的運行不會超出PLC的循環(huán)時間限制。