




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、AM北京底努特技術(shù)有限公司%Q皿TeidmctefkiiutiL工業(yè)病毒的超級(jí)進(jìn)化(一)PLC-Blaster一種能夠在PLC獨(dú)立存活的蠕蟲病毒摘要:工業(yè)生產(chǎn)過程由可編程邏輯控制器(PL。控制。目前銷售的許多PLC都配有以太網(wǎng)端口,其可以通過IP進(jìn)行通信。我們將基于西門子SIMATICS7-1200演示一個(gè)蠕蟲病毒。該蠕蟲不需要通過任何額外的PC來進(jìn)行擴(kuò)散,其只在PLC上運(yùn)行和存活。該蠕蟲會(huì)掃描網(wǎng)絡(luò)中的新攻擊目標(biāo)(PLC9,然后攻擊這些目標(biāo)并自我復(fù)制到這些目標(biāo)上。在目標(biāo)PLC上運(yùn)行的原始主程序并不會(huì)被修改。一旦目標(biāo)被后蠕蟲感染后會(huì)再次開始掃描。我們將分析蠕蟲對(duì)目標(biāo)的影響以及可能的防護(hù)技術(shù)。0x
2、01前言IT系統(tǒng)是現(xiàn)代工業(yè)生產(chǎn)過程中的關(guān)鍵組件。沒有現(xiàn)代通信網(wǎng)絡(luò),這些過程將是不可能實(shí)現(xiàn)的。不幸的是,在工業(yè)系統(tǒng)采用現(xiàn)代IT系統(tǒng)和通信網(wǎng)絡(luò)會(huì)使用戶暴露在久負(fù)盛名的IT攻擊世界中。IT黑客攻擊可能以幾種方式破壞工業(yè)系統(tǒng)。它們可引起系統(tǒng)故障和高額的經(jīng)濟(jì)損失,同時(shí)還可能對(duì)工人的身心健康造成負(fù)面影響。這些攻擊的效果已被震網(wǎng)(Stuxnet)蠕蟲證明1。西門子可編程邏輯控制器被修改后破壞了伊朗濃縮裂變材料過程。蠕蟲病毒利用微軟Windows操作系統(tǒng)的漏洞在鈾濃縮電腦上進(jìn)行傳播。PLC的軟件以這樣的方式被修改最終破壞了濃縮過程離心機(jī)。該蠕蟲需要一臺(tái)PC傳播并通過PCt擊PLC本文將展示僅通過PLC本身來傳
3、播的蠕蟲,不需要任何PC蠕蟲可能通過被控制的PLC植入工廠,然后,該蠕蟲通過復(fù)制自身感染其他PLC并執(zhí)行。本文是基于西門子公司的SIMATICS7-1200v3,蠕蟲病毒采用結(jié)構(gòu)化文本(ST)編寫,ST是用于開發(fā)PLC軟件的一種語言。0x02相關(guān)研究2015年在美國的BlackHat2015KLICK等人曾展示過運(yùn)行在PLC的惡意軟件2,他們使用PLC的通信特性執(zhí)行了一個(gè)代理。我們采用與其相同的通信協(xié)議北京威努特技術(shù)有限公司北京威務(wù)樽技術(shù)有m公司來傳播蠕蟲程序,使用此協(xié)議蠕蟲病毒能夠從某個(gè)PLC直接傳播到另一個(gè)PLC此蠕蟲程序不需要其他系統(tǒng)來支撐,我們基于SIMATICS7-1200協(xié)議來開展
4、我們的工作,而前者采用SIMATICS7-300來實(shí)現(xiàn)。此新的協(xié)議與前者并不相同,本文會(huì)描述此新的協(xié)議。0x03PLC架構(gòu)PLC采用一個(gè)簡(jiǎn)單的架構(gòu),它們基于一個(gè)CPUf口用于支持?jǐn)?shù)字輸入輸出的模塊。CPU用于執(zhí)行操作系統(tǒng)和用戶程序,此外CPUS于負(fù)責(zé)與附屬外部設(shè)備的通訊以及管理進(jìn)程映像。進(jìn)程映像存儲(chǔ)輸入和輸出設(shè)備的狀態(tài),用戶程序在進(jìn)程映像上執(zhí)行,而不是通過物理的輸入輸出設(shè)備,用戶程序按周期執(zhí)行。CPU在周期開始及結(jié)束時(shí)刷新進(jìn)程映像,周期的最大限制是周期時(shí)間,周期時(shí)間違規(guī)后PLCa停止用戶程序并拋出異常。RadInputwnteOutputProcessimageExecuteUserprogr
5、amOtherfunctions電,g,commjmcationFigure 1, ZykluseinesF-Cs用戶程序通過程序組織單元(POU結(jié)構(gòu)化,這些單元包含指令來控制PLC以及工業(yè)過程。SIMATICS7-1200包含以下POU?組織塊(OB:進(jìn)入用戶程序的主入口?數(shù)據(jù)塊(DB:全局內(nèi)存?功能(F。:功能?功能塊(FB):用于持久化本地內(nèi)存的功能北京威努特技術(shù)有限公司北京威努博技術(shù)有限公司目TedhndafkigJEd_除了用戶自定義的POU西門子提供的一些功能也可用。本文采用系統(tǒng)的POUTCON和TDISCON采用這些POUPLC能夠初始化和銷毀TCP接用于控制系統(tǒng),采用TRC麗T
6、SENDE這些連接上發(fā)送數(shù)據(jù)。0x04計(jì)算機(jī)蠕蟲計(jì)算機(jī)蠕蟲病毒起始于1988年,所有蠕蟲病毒攻擊可被總結(jié)為以下幾個(gè)階段:探測(cè)可能的目標(biāo);傳播到目標(biāo);在目標(biāo)上執(zhí)行惡意功能。在PLC上蠕蟲也必須支持這些功能,本文將展示各個(gè)組件的執(zhí)行。0x05實(shí)現(xiàn)一個(gè)基于S71200的蠕蟲1.1 架構(gòu)基于PLC的蠕蟲同其它蠕蟲一樣都有些限制條件,在開發(fā)PLC過程中這些限制條件必須滿足,尤其是最大周期限制必須保持。蠕蟲必須在每隔幾微秒中斷其執(zhí)行,其執(zhí)行可能會(huì)在下一個(gè)周期繼續(xù),當(dāng)前的狀態(tài)存儲(chǔ)在一個(gè)全局的變量中。在每個(gè)周期開始時(shí)蠕蟲中的代碼會(huì)被調(diào)用,這樣最大周期時(shí)間便不會(huì)違規(guī)。圖2中展示了這些步驟。蠕蟲由初始化一個(gè)到可能
7、目標(biāo)的連接開始,一旦連接建立蠕蟲首先檢查目標(biāo)是否已經(jīng)被感染,如果沒被感染蠕蟲會(huì)停止目標(biāo)上的用戶程序執(zhí)行然后開始傳輸自身代碼,蠕蟲將自己拷貝到目標(biāo)機(jī)后隨后啟動(dòng)目標(biāo)PLC接下來蠕蟲開始探測(cè)下一個(gè)可能目標(biāo)。北京威努特技術(shù)有限公司InfectionprocessiCLtfYlfXlltNIIIninhr)Chedc近DonSiioccnextJPSwpiarEP|t:FHf0碗條丁仁RrogtwtdfTftnfcxiilFigure 2, Executionsequenceoftheworm5.2目標(biāo)探測(cè)蠕蟲開始時(shí)掃描可能的目標(biāo)機(jī),西門子SIMATICPLC能夠通過端口TCP10怵鑒別,這個(gè)端口只能通
8、過外部防火墻來關(guān)閉,其他通用服務(wù)都不使用這個(gè)端口。S7-1200使用POUTCON理TC唯接,這個(gè)POU勺用法為列表3的第3行。一個(gè)IP和端口通過第9行來傳遞,一旦POUK調(diào)用PLC會(huì)嘗試建立這個(gè)連接,它會(huì)異步發(fā)生。在下一個(gè)周期此連接的狀態(tài)會(huì)被驗(yàn)證。返回值DONEZeile5)標(biāo)識(shí)連接是否建立。如果返回TURE染會(huì)繼續(xù),如果IP地址和端口為不可到達(dá)不會(huì)引發(fā)任何錯(cuò)誤。北京威努特技術(shù)有限公司iIFdata.constate-10THEN,jTCON_D3(REQ:d讓丁.action,4ID:=1,jDONE=ftdatafl,con_donerBUSY二戶data,con_busyf7ERROR
9、=,data*f.conferror,sSTATUS=datacon_statusfqCONNECTdata.conparawl;拙hIFdata*con_done=TrueTHENi2connectionopen國data,con_$tate20;mELSE/connectionnotopenifr11datatcon_timeout:=wdatacon_timeout+L;n/connectiontimeout?謔IFdata.con_tinieoiit200THEM評(píng)datall.C0n_state:=0;加ENDF;:iEND_IF;BGOTOCYCLE,END;uENDIF;_-11
10、1/jl=3-1_,尸F(xiàn)igureXTargetDendatan.con_busy,iERROR=datan.con_erroi:r(STATUS=rtdata11.con.status);騰IFdata.con_error=TrueORn11datacon_don=TruejiTHENwCAta.con_param.REM_STADDR4:=ji(dataVconaram.REM.STADDR+1)MOD255;js*data-con_timeout:=0;ndatar.constate:=10:wm-ritENDIF;itmGOTOCYCLE_END;yEND.IF;Figure4,Tar
11、getdetects,inSCI.5.3感染目標(biāo)在感染階段蠕蟲會(huì)將自身復(fù)制到目標(biāo)PLC上,通常的軟件采用西門子TIA-Portal傳輸?shù)絇LC上。蠕蟲仿冒TIA-Portal協(xié)議并實(shí)現(xiàn)所有的西門子協(xié)議。5.3.1 軟件傳輸協(xié)議本文剩余部分所有的協(xié)議均被稱為S7CommPlus它是利用TPKE口ISO8073的二進(jìn)制協(xié)議,典型的所有這些協(xié)議都用TCP10淵口。S7CommPlu的主要特性包括:?配置PLC?開啟和停止PLC?讀寫進(jìn)程變量?程序傳卒&(上/下)?調(diào)試北京威努特技術(shù)有限公司北京威努樽技術(shù)肓電公司由*卡研皿儂由MfklgIJd_提供調(diào)試信息警報(bào)5.3.2 報(bào)文所有的S7CommPlu兼
12、用相同結(jié)構(gòu)的報(bào)文。圖5為連接的第一個(gè)報(bào)文Q000Q0QQ內(nèi)Q0QQ8d382If0000m3816900151653的1276657253657373696f6e.ServerSession5f364236313B324631a3822100152c31_6B6182F1SequenceuwberAitribuichbclJInknnvnFigure5.S7CommPlusinessageslrucu5.3.3屬性塊實(shí)際的數(shù)據(jù)通過屬性塊結(jié)構(gòu)化,圖6為第一個(gè)屬性塊的例子Figure6.Attributeblock5.3.4編碼數(shù)屬性塊中的數(shù)字通過特殊的方式編碼,圖7展示了屬性id的解碼以及其長(zhǎng)度
13、域北京威努特技術(shù)有限公司1w北京戚努特技術(shù)肓用公司W(wǎng)Muw.TcduwAauCajle5.3.5816%二10000001011010012二0001011019)(i)22M一233Figure7,Encodingofnumbers0*歷:己抗重播機(jī)制S7CommPlu協(xié)議監(jiān)測(cè)重播攻擊,PLC在相應(yīng)報(bào)文中發(fā)送一個(gè)25位的隨機(jī)字節(jié)如圖8所示。antireplaybyte=challenge+0x800300820000008902fO807200000236110287If0000a38169DO0100B715007a323dal過3B2000032000000ca20003d00皿8480
14、cO4030004B480cO40823f0015lb313b36455337203231322d31.1J6ES7212-14245333L2d30584230203b56332e3082RE31-0XB0;V3.0.40001505葭3b光34”B2Wi0003000300T,2;544.A*a20000000012010000013a823b00048200823cDO04914082AnnbuieNockFigure8.Antireplaymechanim0300008c02fC807202007d3100000542CO000Q030。OO0334WOO030101823201CO1
15、7OOOO013a823bOO046200623c0004SI40823d000400823e00048480c0403f0015OO82400015la313b35455337203231322dn424533312d30534230030072003502000000000013008900046t006a000000002*3?7212-3b56332e30S24189E9Q0120C00Q004000。0D0000.E.-1;6ESE31-CXB0;V340,A.ttrihiiirbkx;kFigure9.AntireplayMechanism北京威努特技術(shù)有限公司北京威努精技術(shù)肓第公
16、司5.3.6 程序轉(zhuǎn)換特殊的報(bào)文用于傳輸用戶程序,如圖10所示。03Q0M0002fO00720205a931000004car上000。DOId000003a234000000030D0400。003000alI945;2000a?31692,.鐘,.二0015g4d$1696e.AurihutebktckFigure10*Transferringtheuserprogram5.3.7 確定需要的報(bào)文在用戶程序傳輸過程中一些報(bào)文被交換,但這些報(bào)文對(duì)進(jìn)程來說并不是強(qiáng)制性的。這些不相關(guān)的報(bào)文會(huì)增加蠕蟲需要的內(nèi)存因此被跳過。圖11展示了一個(gè)成功感染過程的報(bào)文,通信被發(fā)起,為避免重復(fù)感染蠕蟲首先測(cè)試目標(biāo)然后嘗試下載自身的拷貝,附屬代碼的上傳只有在停止PLC時(shí)才能發(fā)生然后程序被傳輸,最后PLC又開始工作。北京威努特技術(shù)有限公司5.3.8實(shí)現(xiàn)1S0WI7.UVCMincctionReutvsiSu邪wsSu)pOKSianSP5StartOKAgur11,Meg叫esexchangedduringkiftlQnPLG所有需要的報(bào)文DB用于存儲(chǔ)臨時(shí)變量和基于對(duì)協(xié)議的分析,一個(gè)程序可能被記錄、修改或重播到都是已知的,為了存儲(chǔ)蠕蟲中的報(bào)文需要DBPOU附片發(fā)送/結(jié)束緩沖區(qū)。北京威努特技術(shù)有限公司Manu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2031年中國炭烤鹽味雞胸肉軟骨串行業(yè)投資前景及策略咨詢研究報(bào)告
- Module7 Unit 1 How do you go to school (教學(xué)設(shè)計(jì))-2024-2025學(xué)年外研版(一起)英語二年級(jí)上冊(cè)
- 2025至2030年中國耐寒增塑劑數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國清真牛肉腸數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國無磁高腳碗數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國復(fù)合棒型支柱絕緣子數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國雙顯式兆歐表數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國化學(xué)試劑瓶數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國三人釣魚充氣船數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 高壓氧科工作總結(jié)高壓氧科個(gè)人年終總結(jié).doc
- 電子電路基礎(chǔ)習(xí)題解答
- 《政治學(xué)概論》教學(xué)大綱
- 食品生物化學(xué)習(xí)題謝達(dá)平(動(dòng)態(tài))
- 保安員工入職登記表
- 斷路器控制回路超詳細(xì)講解
- 簽證戶口本完整翻譯模板
- 睿達(dá)RDCAM激光雕刻切割軟件V5.0操作說明書
- 變電設(shè)備運(yùn)行與維護(hù)培訓(xùn)課件(共102頁).ppt
- 機(jī)械設(shè)計(jì)基礎(chǔ)平面連桿機(jī)構(gòu)課件
- 寒假學(xué)習(xí)計(jì)劃表-
評(píng)論
0/150
提交評(píng)論