自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

震網(wǎng)蠕蟲中的一個Bug差點令其“出師未捷身先死”

安全
由于內(nèi)部代碼中存在一個Bug,使其可以感染古老的Windows系統(tǒng)。超級蠕蟲病毒震網(wǎng)(Stuxnet)差一點暴露,從而無法完成破壞。

由于內(nèi)部代碼中存在一個Bug,使其可以感染古老的Windows系統(tǒng)。超級蠕蟲病毒震網(wǎng)(Stuxnet)差一點暴露,從而無法完成破壞。

[[132922]]

業(yè)內(nèi)眾所周知,該病毒可以隱秘地破壞控制離心機的計算機系統(tǒng)。它由美國和以色列的神秘黑客所設計,被用于破壞位于伊朗那達茲郡的鈾濃縮設施。該病毒導致伊朗的濃縮鈾項目推遲了兩年之久,但由于其自身的代碼缺陷,震網(wǎng)差點未能發(fā)揮作用。

為了完成行動目標,Stuxnet必須保證自己無法被伊朗人檢測到。不幸的是,一個編程錯誤可能會讓它傳播到較老版本的Windows上。由于病毒并不支持老版本的Windows,這可能會引發(fā)系統(tǒng)崩潰,大量的出現(xiàn)的系統(tǒng)藍屏可能會引起那達茲核試驗室工作人員們的注意。

and與or的故事

在上周結(jié)束的RSA安全大會上,BlueCoat的技術(shù)分析人員表示,當震網(wǎng)開始引發(fā)Windows 95和Windows 98系統(tǒng)崩潰時,它的任務可能還沒開始就即將結(jié)束。

“震網(wǎng)編程團隊里的某個人可能度過了糟糕的一天,并將代碼中的and錯誤地寫成了or。結(jié)果是,震網(wǎng)在執(zhí)行安裝策略時會進行or檢查,這導致它會自動注入所有版本的Windows,甚至是Win 95和Win 98這些它并不支持的操作系統(tǒng)。”

“類似一種在某個項目上花費了很多年時間,但由于造成了遠程系統(tǒng)崩潰,突然前功盡棄的意思。”

不過從實際情況來看,震網(wǎng)還是在2010年被發(fā)現(xiàn)之前成功地干擾了離心機。這可能是因為碰巧震網(wǎng)在那時沒有碰到任何運行老版本W(wǎng)indows的機器,也有可能是伊朗科學家對Win 95和Win 98的藍屏錯誤早就習以為常。

同病相憐的Conficker

安全研究人員還發(fā)現(xiàn),震網(wǎng)并不是唯一一個存在Bug的著名惡意軟件。Conficker蠕蟲自身存在的Bug也削弱了其自身的潛在破壞力。

Conficker 蠕蟲攻擊網(wǎng)絡上的Windows設備,從理論上講,它幾乎可以感染任何人。但由于負責生成隨機地址的代碼中存在一個Bug,它只能掃描到IPv4總地址數(shù)量的四分之一:它的隨機數(shù)生成函數(shù)會產(chǎn)生15位的整數(shù),從0到0x7fff(0~RAND_MAX),它調(diào)用這個函數(shù)兩次,本意是生成一個32位的 IPv4地址。不過,事實上它生成的只是30位整數(shù),比32位的整數(shù)還差了兩位。

“如果你連續(xù)攻擊受害者,會很容易被檢測到,因此黑客在這方面采取了聰明的辦法,每次攻擊一個隨機地址。”

“有趣的事情在于,RAND_MAX變量只有15位,這意味著當Conficker通過調(diào)用兩次該函數(shù)來生成IP地址時,得到的只是一個30位隨機數(shù),這導致病毒并沒有掃描整個地址空間,而只是掃描了其中的四分之一。”

如果企業(yè)的客戶由于這個原因并沒有感染該蠕蟲,他們可能要感謝自己的好運了。

與Bug有緣的惡意軟件

還有更多的例子。2007年被披露的風暴(Storm)蠕蟲由于更新版本時的一個錯誤而變成了和風細雨。黑客在更新病毒版本、編寫代碼中關(guān)于選取入侵系統(tǒng)類型的部分時,將Windows錯拼成了Windoss。(有點敬業(yè)精神好不好?)

2014 年被披露的活力狗熊(Energetic Bear),又名蜻蜓(DragonFly),是一個用于滲透和破壞系統(tǒng)的惡意軟件。該軟件在安全研究人員的手里變成了小玩具,因為研究人員找到了它從緩存中計算公鑰和私鑰的方式,獲得受害者自由訪問列表的方式,甚至是它未來版本的架構(gòu)細節(jié)。

通過同樣的方法,利用SimpleLocker被加密的安卓文件也可以被恢復。在總結(jié)銀行木馬Yaludle的漏洞時,安全人員表示,“SQL注入很漂亮,但不講衛(wèi)生”。

以彼之道,還施彼身

惡意軟件分析并不只是逆向工程師的工作,只要做足準備,研究人員利用系統(tǒng)漏洞甚至可以控制攻擊者發(fā)動攻擊的服務器。

舉例而言,安全研究人員可以輕而易舉地將Conficker無害化。一旦該病毒注入了一臺電腦,就會從MaxMind上下載IP-地理地址數(shù)據(jù)庫,以找到自己在真實世界所處的位置。由于Conficker并不攻擊烏克蘭的電腦,如果這個數(shù)據(jù)庫中的所有IP都映射到烏克蘭,那么會引發(fā)蠕蟲自殺,停止傳播。通過向Conficker推送改動后的MaxMind數(shù)據(jù)庫,安全人員完全可以擊敗Conficker的攻擊。

我們鼓勵每一個人都來做這些事。”

(回復“malwarebug”,可獲得演講資料地址)

提醒:

研究人員在RSA大會上展示的PPT和他們的演講內(nèi)容有所不一樣。PPT上顯示的代碼實際上表明,Stuxnet并不會向Win 95和Win98系統(tǒng)上傳播,這可能是因為研究人員所展示的是Stuxnet的修復版。他們所闡釋的通過逆向工程發(fā)現(xiàn)的Bug只是老版本的內(nèi)容,因此他們有可能只是將Stuxnet代碼中正確的一部分拿了出來,而在會議上介紹了那些有缺陷的部分。

以下C語言部分展示了Stuxnet進行x86安裝檢測的源代碼:

if ( GetVersionExW(&OsVersion)

&& OsVersion.dwPlatformId == VER_PLATFORM_WIN32_NT

&& (OsVersion.dwMajorVersion >=5 || OsVersion.dwMajorVersion <= 6))

Install();

安全人員表示,以下這行代碼

(OsVersion.dwMajorVersion >=5 || OsVersion.dwMajorVersion <= 6))

對于Windows 9x、XP、200x、Vista和7而言都會返回True,這是沒錯的。但是這段代碼

OsVersion.dwPlatformId == VER_PLATFORM_WIN32_NT

對Windows 9x系統(tǒng)會返回False,因為Windows 95和Windows 98的dwPlatformId值都是1,VER_PLATFORM_WIN32_NT是2。因此,如果按照以上代碼來運行,Install()永遠不會在Windows 9x版本上被調(diào)用。

 

責任編輯:藍雨淚 來源: 安全牛
相關(guān)推薦

2012-01-13 08:57:13

SaaS云計算

2023-08-15 07:42:53

2021-05-17 11:32:49

Windows 10Windows微軟

2016-09-25 23:35:41

2021-10-08 07:50:57

軟件設計程序

2024-04-22 00:00:01

Redis集群

2010-10-09 09:19:30

2021-04-30 07:09:48

SQLP0事故

2009-09-14 17:08:02

WebFormView

2015-04-20 09:31:41

初創(chuàng)企業(yè)融資風險額度

2013-11-27 11:04:05

震網(wǎng)病毒震網(wǎng)Stuxnet

2011-07-28 10:31:52

2017-02-28 21:30:51

2025-02-13 07:00:00

Dubbo-goJava服務端

2012-03-21 21:30:11

諾基亞

2016-09-25 23:03:14

2013-06-18 11:37:42

XFSRHEL 6.4

2013-12-09 10:43:16

震網(wǎng)病毒StuxnetICS

2020-05-26 13:49:59

云計算生物云計算資源

2013-12-09 14:36:20

點贊
收藏

51CTO技術(shù)棧公眾號