G110西門(mén)子0.12KW變頻器6SL3211-0KB11-2BB1
| 6SL3211-0KB11-2BB1 SINAMICS G110-CPM110 交流驅(qū)動(dòng),帶集成濾波器 B 200-240V+10/-10% 1AC 47-63Hz RS-485-接口 (USS-協(xié)議) CT:0.12kW;VT:0.12kW CT-過(guò)載:150% 60S 150x 90x 101(高x寬x深) IP20;帶扁平散熱器; 僅適用于散熱板安裝 環(huán)境溫度 -10+50°C 無(wú) BOP 無(wú)模擬輸入端 |
SIEMENS西門(mén)子
*,質(zhì)量保證,保修一年
專(zhuān)業(yè)銷(xiāo)售及維修西門(mén)子各類(lèi)工控自動(dòng)化配件;
:S7-200CN、S7-200SMART、S7-300、S7-400、 S7-1200、S7-1500、ET200、LOGO邏西門(mén)子可編程控制器輯控制模塊
西門(mén)子HMI人機(jī)界面:觸摸屏
西門(mén)子變頻器:MM420、MM430、MM440、G110、G120、6SE70
西門(mén)子工業(yè)以太網(wǎng):通訊網(wǎng)卡、通訊電纜、通訊接頭、總線(xiàn)連接器 工控機(jī)、交換機(jī)、自動(dòng)化軟件等系型號(hào)齊全,快速報(bào)價(jià),買(mǎi)我們的產(chǎn)品無(wú)憂(yōu)所值,我們的產(chǎn)品都承諾質(zhì)保一年,讓您買(mǎi)的省心舒心,用的放心!
摘要:眾說(shuō)周知,工業(yè)生產(chǎn)過(guò)程是通過(guò)可編程邏輯控制器(PLC)來(lái)控制的。 現(xiàn)在市場(chǎng)上許多PLC 都配置了以太網(wǎng)口并且可以用 IP 進(jìn)行通信。 我們將以西門(mén)子 SIMATIC S7-1200 機(jī)器為例展示一個(gè)蠕蟲(chóng)范例。此蠕蟲(chóng)不需要依賴(lài) PC 電腦去擴(kuò)散。該蠕蟲(chóng)僅僅活躍并運(yùn)行在 PLC 當(dāng)中。它可以通過(guò)網(wǎng)絡(luò)掃描來(lái)尋找新的目標(biāo)(新的 PLC),然后攻擊這些目標(biāo)并將自身拷貝到這些新的 PLC 中,而
且目標(biāo) PLC 上運(yùn)行原主程序不會(huì)發(fā)生任何改變。這些 PLC 目標(biāo)一旦感染該蠕蟲(chóng)后會(huì)再次進(jìn)行掃描感染。我們將分析蠕蟲(chóng)對(duì)目標(biāo)的影響以及提出可能的緩解技術(shù)。
1. 介紹
IT 系統(tǒng)在當(dāng)今工業(yè)生產(chǎn)發(fā)展至關(guān)重要的一部分。 可以說(shuō),沒(méi)有現(xiàn)代化的通信網(wǎng)絡(luò),就不可能有現(xiàn)代化的工業(yè)生產(chǎn)。然而不幸的是,正由于工業(yè)系統(tǒng)對(duì)當(dāng)今 IT 系統(tǒng)和通信網(wǎng)絡(luò)的依賴(lài),使得用戶(hù)也暴露于被攻擊的危險(xiǎn)之中,而這早已是 IT 界久知的問(wèn)題。IT 攻擊可能對(duì)工業(yè)系統(tǒng)造成多種傷害。比如他們可以造成工業(yè)生產(chǎn)的中斷以及高額的經(jīng)濟(jì)損失,與此同時(shí)還可能對(duì)生活環(huán)境以及生命健康造成負(fù)面影響。其攻擊的威力在 STUXNET 蠕蟲(chóng)上得到了充分的展示。西門(mén)子的可編程控制器(PLC)受到惡意篡改以阻礙伊朗核燃料鈾濃縮。通過(guò)利用微軟操作系統(tǒng)漏洞,該蠕蟲(chóng)感染進(jìn)入到鈾濃縮工廠的電腦當(dāng)中,PLC 的軟件被惡意篡改以摧毀鈾濃縮離心機(jī)。該蠕蟲(chóng)需要一臺(tái) PC 電腦來(lái)進(jìn)行傳播并且通過(guò) PC 電腦來(lái)攻擊 PLC。這篇文章將將闡述一種可以在 PLC 之間傳播的蠕蟲(chóng)。不需要任何 PC 電腦。蠕蟲(chóng)可能通過(guò)一個(gè)已經(jīng)被感染過(guò)的 PLC 而被引入到工業(yè)工廠中,蠕蟲(chóng)接下來(lái)便會(huì)通過(guò)自我復(fù)制來(lái)感染到其他 PLC 中,并且在修改目標(biāo) PLC 并執(zhí)行感染時(shí)添加到 PLC 用戶(hù)程序中…。這篇文章描述的蠕蟲(chóng)是基于西門(mén)子 SIMATIC S7-1200v3,該蠕蟲(chóng)通過(guò)結(jié)構(gòu)化文本(ST)編寫(xiě)而成,該語(yǔ)言是一種用于開(kāi)發(fā) PLC 軟件的編程語(yǔ)言。
2. 相關(guān)工作
2015 年在美國(guó) BlackHat 大會(huì)上,Klick 公司展示了一款在 PLC 上運(yùn)行的惡意軟件。他們使用PLC 的一個(gè)通信特征實(shí)現(xiàn)了代理服務(wù)。我們將用同樣的通信特性來(lái)實(shí)現(xiàn)了一個(gè)可以傳送一個(gè)蠕蟲(chóng)程序的協(xié)議。通過(guò)使用該協(xié)議,該蠕蟲(chóng)可以從一個(gè) PLC 直接傳到另一個(gè) PLC 中。這個(gè)蠕蟲(chóng)不需要更多系統(tǒng)去支持。我們沒(méi)有用更加聞名的 SIMATIC S7-300,取而代之的是,我們的工作成果基于新的 S7-1200v3。PLC 使用的協(xié)議也與舊版不同。該文章也將會(huì)介紹這種新型的協(xié)議。
3. PLC 體系結(jié)構(gòu)
PLC 使用簡(jiǎn)單系統(tǒng)結(jié)構(gòu)構(gòu)建而成。他們基于中央處理器(CPU)模塊,加上數(shù)字輸入和輸出的模塊組成。CPU 處理 PLC 操作系統(tǒng)以及運(yùn)行用戶(hù)程序。此外 CPU 還負(fù)責(zé)與其他設(shè)備通訊以及管理過(guò)程圖(Process image)。
過(guò)程圖(Process image)儲(chǔ)存著所有的輸入和輸出的狀態(tài)。用戶(hù)程序不能直接操作物理的輸入輸出,而是通過(guò)操作過(guò)程圖像而實(shí)現(xiàn)的。用戶(hù)程序的運(yùn)行是一個(gè)循環(huán)。每次循環(huán)的起始和結(jié)束的時(shí)候,CPU 會(huì)刷新過(guò)程圖像。循環(huán)上限指的是循環(huán)時(shí)間。如果(一個(gè)循環(huán)運(yùn)行的時(shí)間)超過(guò)循環(huán)上*,PLC 會(huì)停止用戶(hù)程序運(yùn)行并拋出一個(gè)異常。
Figure 1. Zyklus eines PLCs
用戶(hù)程序通過(guò)POU(程序組織單元)構(gòu)造而成。這些單元(程序組織單元)包含了控制PLC的使用說(shuō)明,因而可控制工業(yè)生產(chǎn)。SIMATIC S7-1200支持以下的POU:
Organisation block (OB): 用戶(hù)程序主入口
Data block (DB): 全局存儲(chǔ)器
Function (FC): 功能
Function block (FB): 有穩(wěn)固局部?jī)?chǔ)存器的功能
此外有幾個(gè)西門(mén)子提供的給用戶(hù)自定義的POU功能也可找到。這篇文章運(yùn)用了系統(tǒng)POU TCON和TDISCON。使用這些POU,PLC可以初始化或者銷(xiāo)毀任意系統(tǒng)的TCP連接。也可以通過(guò)TRCV和TSEND來(lái)接收和發(fā)送緩沖區(qū)數(shù)據(jù)。
4. 電腦蠕蟲(chóng)
電腦蠕蟲(chóng)從1988年就已經(jīng)出現(xiàn)并且是惡意軟件中有名的一種。蠕蟲(chóng)多種但都基本架構(gòu)相同。所有的蠕蟲(chóng)攻擊都可以歸為一下幾個(gè)階段:可能目標(biāo)的搜索,感染目標(biāo),在目標(biāo)上執(zhí)行,添加惡意功能。在PLC上蠕蟲(chóng)也同樣支持這些工功能。這篇文章將展示每個(gè)必須組件的實(shí)現(xiàn)方法。
5. 在 S7 1200 上實(shí)現(xiàn)一個(gè)蠕蟲(chóng)
5.1 體系結(jié)構(gòu)
這個(gè)蠕蟲(chóng)的編寫(xiě)與其他限制性蠕蟲(chóng)軟件一樣。在開(kāi)發(fā)過(guò)程中,必須滿(mǎn)足特定的PLC的限制條件,尤其是循環(huán)上限。蠕蟲(chóng)每幾微秒就必須中斷其執(zhí)行,并在接下來(lái)的每次循環(huán)中能夠繼續(xù)執(zhí)行。為了滿(mǎn)足這個(gè)要求,我們通過(guò)狀態(tài)機(jī)來(lái)設(shè)計(jì)該蠕蟲(chóng)。當(dāng)前的狀態(tài)被存在全局變量里面,在每次循環(huán)開(kāi)始開(kāi)始時(shí),蠕蟲(chóng)的相關(guān)代碼將會(huì)被調(diào)用。所以永遠(yuǎn)不會(huì)超過(guò)循環(huán)上限的時(shí)間。
如圖2中所展示的步驟,蠕蟲(chóng)首先初始化一個(gè)連接來(lái)連接可能目標(biāo)。一旦建立了連接,蠕蟲(chóng)會(huì)檢測(cè)目標(biāo)是否已經(jīng)被感染,如果沒(méi)有感染,蠕蟲(chóng)將暫停目標(biāo)機(jī)上的用戶(hù)主程序的執(zhí)行,使其能夠傳輸自己的代碼。用戶(hù)程序暫停后蠕蟲(chóng)將自己復(fù)制到目標(biāo)PLC上,完成后啟動(dòng)目標(biāo)PLC,接下來(lái)蠕蟲(chóng)再測(cè)試下一個(gè)可能的目標(biāo)。
Figure 2. Execution sequence of the worm
5.2 目標(biāo)偵查
蠕蟲(chóng)先掃描可能的目標(biāo),西門(mén)子的PLC可以通過(guò)102/tcp端口來(lái)識(shí)別。這個(gè)端口僅僅能夠被外部防火墻關(guān)閉,并且其他普通的服務(wù)不會(huì)使用這個(gè)端口。
S7-1200用POU TCON管理TCP連接。這個(gè)POU的的用法在圖3的第3行進(jìn)行了展示。任意一個(gè)IP地址和端口在第9行代碼中被傳遞。一旦POU被調(diào)用,PLC會(huì)試圖建立連接,并且這兩者是異步發(fā)生的。在之后的循環(huán)當(dāng)中會(huì)對(duì)當(dāng)前的連接狀態(tài)進(jìn)行驗(yàn)證。返回值DONE(Zeile 5)信號(hào)表示該連接是否被建立,如果為true,繼續(xù)感染。如果IP地址和端口無(wú)法找到是不會(huì)有錯(cuò)誤提示的。蠕蟲(chóng)需要在每次循環(huán)中通過(guò)遞增計(jì)數(shù)器來(lái)檢測(cè)超時(shí)。
G110西門(mén)子0.12KW變頻器6SL3211-0KB11-2BB1