歷史上,有哪些計算機bug造成過極嚴重的經濟、社會影響?


說一個造成美帝嚴重傷亡的bug。

第一次海灣戰爭,一枚伊拉克發射的飛毛腿導彈準確擊中美帝的宰赫蘭基地,炸死28個美國士兵,炸傷100多人,美帝傷亡很大。

按理講,美帝那時候有反導系統,不應該攔不住導彈,為啥沒攔住呢?

後來經過仔細調查,由於一個簡單的計算機bug,使基地的愛國者反導彈系統失效,未能在空中攔截飛毛腿導彈。

當時,負責防衛該基地的愛國者反導彈系統已經連續工作了100個小時,每工作一個小時,系統內的時鐘會有一個微小的毫秒級延遲,這就是這個失效悲劇的根源。愛國者反導彈系統的時鐘寄存器設計為24位,因而時間的精度也只限於24位的精度。在長時間的工作後,這個微小的精度誤差被漸漸放大。在工作了100小時後,系統時間的延遲是三分之一秒。

對一般人人來說,0.33秒是微不足道的。但是對一個需要跟蹤並摧毀一枚空中飛彈的雷達系統來說,這是災難性的——海珊飛毛腿導彈空速達4.2馬赫(每秒1.5公里),這個」微不足道的」0.33秒相當於大約600米的誤差。

在宰赫蘭導彈事件中,雷達在空中發現了導彈,但是由於時鐘誤差沒有能夠準確地跟蹤它,因此基地的反導彈並沒有發射。


經常爆發的計算機病毒必須要入選!

計算機病毒(Computer Virus)定義:「壞人」利用計算機軟體和硬體所固有的脆弱性(所謂bug)編製的一組指令集或程序代碼。

下面是歷史上造成極大破壞的計算機病毒舉例:

1. CIH (1998年)

該計算機病毒屬於W32家族,感染Windows 95/98中以EXE為後綴的可行性文件。它具有極大的破壞性,可以重寫BIOS使之無用(只要計算機的微處理器是Pentium Intel 430TX),其後果是使用戶的計算機無法啟動,唯一的解決方法是替換系統原有的晶元(chip),該計算機病毒於4月26日發作,它還會破壞計算機硬碟中的所有信息。該計算機病毒不會影響MS/DOS、Windows 3.x和Windows NT操作系統。

CIH可利用所有可能的途徑進行傳播:軟盤、CD-ROM、Internet、FTP下載、電子郵件等。被公認為是有史以來最危險、破壞力最強的計算機病毒之一。1998年6月爆發於中國台灣,在全球範圍內造成了2000萬-8000萬美元的損失。

2.梅利莎(Melissa,1999年)

這個病毒專門針對微軟的電子郵件伺服器和電子郵件收發軟體,它隱藏在一個Word97格式的文件里,以附件的方式通過電子郵件傳播,善於侵襲裝有Word97或Word2000的計算機。它可以攻擊Word97的註冊器並修改其預防宏病毒的安全設置,使它感染的文件所具有的宏病毒預警功能喪失作用。

在發現Melissa病毒後短短的數小時內,該病毒即通過網際網路在全球傳染數百萬台計算機和數萬台伺服器, 網際網路在許多地方癱瘓。1999年3月26日爆發,感染了15%-20%的商業PC,給全球帶來了3億-6億美元的損失。

3. I love you (2000年)

2000年5月3日爆發於中國香港,是一個用VBScript編寫,可通過E-Mail散布的病毒,而受感染的電腦平台以Win95/98/2000為主。給全球帶來100億-150億美元的損失。

4. 紅色代碼 (Code Red,2001年)

該病毒能夠迅速傳播,並造成大範圍的訪問速度下降甚至阻斷。這種病毒一般首先攻擊計算機網路的伺服器,遭到攻擊的伺服器會按照病毒的指令向政府網站發送大量數據,最終導致網站癱瘓。其造成的破壞主要是塗改網頁,有跡象表明,這種蠕蟲有修改文件的能力。2001年7月13日爆發,給全球帶來26億美元損失。

5. SQL Slammer (2003年)

該病毒利用SQL SERVER 2000的解析埠1434的緩衝區溢出漏洞對其服務進行攻擊。2003年1月25日爆發,全球共有50萬台伺服器被攻擊,但造成但經濟損失較小。

6. 衝擊波(Blaster,2003年)

該病毒運行時會不停地利用IP掃描技術尋找網路上系統為Win2K或XP的計算機,找到後就利用DCOM RPC緩衝區漏洞攻擊該系統,一旦攻擊成功,病毒體將會被傳送到對方計算機中進行感染,使系統操作異常、不停重啟、甚至導致系統崩潰。另外,該病毒還會對微軟的一個升級網站進行拒絕服務攻擊,導致該網站堵塞,使用戶無法通過該網站升級系統。2003年夏爆發,數十萬台計算機被感染,給全球造成20億-100億美元損失。

7. 大無極.F(Sobig.F,2003年)

Sobig.f是一個利用互聯網進行傳播的病毒,當其程序被執行時,它會將自己以電子郵件的形式發給它從被感染電腦中找到的所有郵件地址。在被執行後,Sobig.f病毒將自己以附件的方式通過電子郵件發給它從被感染電腦中找到的所有郵件地址,它使用自身的SMTP引擎來設置所發出的信息。此蠕蟲病毒在被感染系統中的目錄為C:\WINNT\WINPPR32.EXE。2003年8月19日爆發,為此前Sobig變種,給全球帶來50億-100億美元損失。

8. 貝革熱(Bagle,2004年)

該病毒通過電子郵件進行傳播,運行後,在系統目錄下生成自身的拷貝,修改註冊表鍵值。病毒同時具有後門能力。2004年1月18日爆發,給全球帶來數千萬美元損失。

9. MyDoom (2004年)

MyDoom是一種通過電子郵件附件和P2P網路Kazaa傳播的病毒,當用戶打開並運行附件內的病毒程序後,病毒就會以用戶信箱內的電子郵件地址為目標,偽造郵件的源地址,向外發送大量帶有病毒附件的電子郵件,同時在用戶主機上留下可以上載並執行任意代碼的後門(TCP 3127 到3198範圍內)。2004年1月26日爆發,在高峰時期,導致網路載入時間慢50%以上。

10. Sasser (2004年)

該病毒是一個利用微軟操作系統的Lsass緩衝區溢出漏洞( MS04-011漏洞信息)進行傳播的蠕蟲。由於該蠕蟲在傳播過程中會發起大量的掃描,因此對個人用戶使用和網路運行都會造成很大的衝擊。2004年4月30日爆發,給全球帶來數千萬美元損失。


再黑一波。

大黃蜂(bumblebee)。

好了到這裡有所耳聞的大概都懂了,

沒聽說過的科普一下:

----------假裝很有必要存在的科普內容分割線----------

bumblebee是一個著名的開源項目,其作者有一天半夜的一次commit有這樣一句:

rm -rf /usr /lib/nvidia-current/xorg/xorg

造成了軒然大波。

在此之前大概應該先科普下linux系統,於windows不同,其不存在直接的C:,D:這樣的磁碟概念,而是存在一個根目錄,各個磁碟以及系統的各個部分都以文件的形式掛在在根目錄之下。

稍有常識的人都知道【滑稽】,usr是Unix software resource的意思(即unix軟體資源,類似C:Program Files,謝知友指正),而這句代碼的本義是:

rm -rf /usr/lib/nvidia-current/xorg/xorg

(rm=remove刪除,-r=recursive遞歸刪除子目錄,-f=force強制刪除無需確認)

也就是,移除當前用戶目錄下英偉達的XXXX(此處省略細節),然而作者卻一(mo)不(ming)小(shou)心(hua)地在/usr後面打了一個空格,於是原先的一個目錄就成了

/usr 和 /lib/nvidia-current/xorg/xorg 兩個目錄都要刪除

問題在於,我們本來只是想刪除/usr下面的一個很小的部分,現在成了把整個/usr都刪掉了,於是無數該軟體的用戶一覺醒來,發現自己的整個用戶目錄都沒有了,其中就包括了電腦上安裝的所有軟體。(想像一下手滑把C盤格式化的感覺,當然windows是不會允許你這麼做的)

其作者早上檢查自己郵箱的時候大概能找到的未讀郵件數量各位大概估計一下即可。

這一事件在當時的開源世界影響極大,大概轉幾張歪果仁的表情包感受一下反響:

以上。


1996年, 歐洲 Ariane 5運載火箭,在起飛37秒之後, 爆炸。 事故的罪魁禍首是短短的一段代碼。

在Ariane 5的軟體中,有一部分代碼是直接來自它的前輩Ariane 4。由於Ariane 4當時非常成功,所以大家覺得這樣做沒什麼問題,根據新的參數稍微修改一下代碼就好了。問題是,修改並不完全。有一行代碼需要將64位浮點數轉換成16位整數,他們認為不會出現什麼問題,所以沒有進行修改。也沒有測試這段代碼。

就是這行代碼,因為Ariane 5比前輩Ariane 4強力得多,於是在Ariane 4上沒有問題的這行代碼,在Ariane 5上發生了溢出錯誤:那個64位的浮點數代表的數值超出了16位整數可以表達的範圍。在出錯後,備用代碼系統被啟動,其中包含著同樣的一行代碼。結果就是整個系統被鎖死了。更為諷刺的是,這行代碼所在的函數,對於Ariane 5來說是不必要的。

複製自:計算的極限(十二):不會出錯的程序計算的極限(十二):不會出錯的程序


千年蟲

CIH 病毒


千年蟲http://baike.baidu.com/view/9349.htm


千年蟲---&>命運石之門~暗黑次元的海德


推薦閱讀:

MacBook Pro 玩pc遊戲如何?
世界上有哪些開源組織?他們的運營模式是怎樣的?
有哪位大神能用簡單的語言,解釋下硬體和軟體是如何結合的,代碼如何控制硬體機器?
頂級配置的組裝電腦,實際性能表現也一定是頂級的嗎?
硬體編程與軟體編程的區別與聯繫?

TAG:軟體 | 計算機 | Bug | 硬體 |