西門子PLC系統(tǒng)再曝嚴(yán)重漏洞 攻擊者可繞過保護(hù)并執(zhí)行遠(yuǎn)程代碼
上周五,西門子發(fā)布了一個(gè)更新,以修復(fù)近日曝出的又一個(gè)可編程邏輯控制器(PLC)的嚴(yán)重漏洞。受影響的 PLC 型號(hào)包括了 SIMATIC S7-1200 和 S7-1500,兩者都可能被惡意行為者用來遠(yuǎn)程訪問受保護(hù)的內(nèi)存區(qū)域,以實(shí)現(xiàn)不受限制和難以被發(fā)現(xiàn)的代碼執(zhí)行。
(來自:Claroty)
通過對(duì)用于在微處理器中執(zhí)行 PLC 指令的 MC7 / MC7+ 字節(jié)碼語言進(jìn)行逆向工程,Claroty 證實(shí)了西門子 PLC 中存在的這個(gè)內(nèi)存保護(hù)繞過漏洞(CVE-2020-15782)。
該漏洞的 CVSS 嚴(yán)重性評(píng)分為 8.1,慶幸的是目前尚無證據(jù)表明其已在野外被利用。西門子在警報(bào)(PDF)中提到,未經(jīng)身份驗(yàn)證的遠(yuǎn)程攻擊者可通過網(wǎng)絡(luò)訪問 102 號(hào) TCP 端口。
在將任意數(shù)據(jù)或代碼寫入受保護(hù)的內(nèi)存區(qū)域、或讀取敏感區(qū)域的數(shù)據(jù)之后,黑客就能夠?qū)υO(shè)備發(fā)起進(jìn)一步的攻擊。
Claroty 研究員 Tal Keren 補(bǔ)充道:想要在可編程邏輯控制器等工業(yè)控制系統(tǒng)上實(shí)現(xiàn)本機(jī)代碼執(zhí)行,顯然不是普通攻擊者能夠輕易達(dá)成的目標(biāo)。
在具有諸多復(fù)雜的內(nèi)存保護(hù)機(jī)制的系統(tǒng)中,攻擊者不僅達(dá)成了運(yùn)行其選擇的代碼的目的,還必須確保自己不會(huì)被發(fā)現(xiàn),意味著只有資深經(jīng)驗(yàn)的少數(shù)高級(jí)黑客能夠做到這一點(diǎn)。
具體說來是,新漏洞不僅允許攻擊者在西門子 S7 控制器上執(zhí)行本機(jī)代碼,還可繞過底層操作系統(tǒng)或任何診斷軟件的監(jiān)測(cè),從而讓用戶沙箱將任意數(shù)據(jù)和代碼直接注入受保護(hù)的內(nèi)存區(qū)域。
另一方面,Claroty 指出攻擊需要獲取 PLC 的網(wǎng)絡(luò)訪問和下載權(quán)限。通過對(duì) PLC 的原生沙箱進(jìn)行越獄,攻擊者將能夠把內(nèi)核級(jí)的惡意軟件植入操作系統(tǒng),從而實(shí)現(xiàn)遠(yuǎn)程代碼執(zhí)行。
當(dāng)然,這并不是西門子首次遭遇針對(duì) PLC 的未經(jīng)授權(quán)代碼執(zhí)行漏洞。早在 2010 年,臭名昭著的震網(wǎng)(Stuxnet)蠕蟲就曾利用各種 Windows漏洞,通過修改西門子 PLC 上的代碼來對(duì)工控系統(tǒng)進(jìn)行重編程,從而實(shí)施了秘密破壞和網(wǎng)絡(luò)間諜活動(dòng)。
為降低風(fēng)險(xiǎn),西門子強(qiáng)烈建議客戶將軟件更新到最新版本。同時(shí)該公司正在醞釀?lì)~外的更新,并讓用戶在等待更新到來的空窗期內(nèi)采取相應(yīng)的對(duì)策和落實(shí)緩解措施。