歷史上代價最高的11個軟件故障

軟件錯誤監控系統每天讓成千上萬的開發者免受軟件錯誤所帶來的尷尬,有些錯誤甚至是災難性的。如果沒有了這些自動化錯誤監控系統會怎樣?我們收集了多年來發生的一些重大的災難事件,看看因爲軟件錯誤導致的混亂會給這個世界帶來多大的麻煩!

美國宇航局的火星氣候探測器

1999年,美國宇航局搭載火星氣候探測器的飛航在執行任務時在太空中“走丟”了。這個問題困擾了工程師一段時間,後來發現,這是因爲工程團隊裏的一名合同工忘記將一個英制單位轉換爲公制單位。這一令人尷尬的失誤導致這艘造價1.25億美元的飛船在接近火星表面並嘗試穩定軌道時因爲軌道過低,出現了致命的後果。飛行指揮員認爲,探測器在墜入火星大氣層後,相關的壓力導致通訊中斷,然後在圍繞太陽的軌道上高速飛行。

參考鏈接:

https://sma.nasa.gov/docs/default-source/safety-messages/safetymessage-2009-08-01-themarsclimateorbitermishap.pdf?sfvrsn=eaa1ef8_4

阿麗亞娜5號

歐洲最新的無人衛星發射火箭阿麗亞娜5號重用了其前身阿麗亞娜4號的系統軟件,不幸的是,阿麗亞娜5號的發動機遭遇了在之前的型號中沒有被發現的漏洞。在火箭首次發射後的三十六秒內,出現了多次計算機故障,工程師不得不按下自毀按鈕。原來,系統軟件試圖將一個64位的數字塞入16位的空間。由此產生的溢出導致主計算機和備份計算機(它們都運行完全相同的軟件系統)崩潰。

阿麗亞娜5號的開發成本接近80億美元,並攜帶了造價5億美元的衛星,然而它們都化爲灰燼。

參考鏈接:

https://en.wikipedia.org/wiki/Cluster_(spacecraft)

EDS兒童支持系統

2004年,EDS向英國兒童支持機構(CSA)推出了一個高度複雜的IT系統。與此同時,工作和養老金部門(DWP)決定對整個機構進行重組。然而,因爲兩個軟件系統完全不兼容,引入了一些不可逆轉的錯誤。系統超額支付了190萬人,少支付了另外70萬人,有70億美元的子女撫養費未收回,積壓了239,000個案件,有36,000個新案件“滯留”在系統中,迄今爲止已經花費了英國納稅人超過10億美元。

參考鏈接:

http://news.bbc.co.uk/2/hi/uk_news/3235394.stm

蘇聯天然氣管道爆炸

蘇聯天然氣管道因爲太過複雜,需要使用先進的自動化控制軟件。美國中央情報局(CIA)在得知蘇聯企圖竊取控制系統的計劃後,與設計管道控制軟件的加拿大公司合作,讓設計師故意在程序中留下缺陷。1982年6月,蘇聯竊取了該軟件後,其中留下的缺陷導致蘇聯部分天然氣管道發生大規模爆炸,造成地球歷史上最大的非核爆炸。

參考鏈接:

https://en.wikipedia.org/wiki/At_the_Abyss

Mt. GOX的比特幣攻擊

2010年,日本比特幣交易所Mt. Gox推出,是當時世界上最大的比特幣交易所。在2011年6月遭到黑客攻擊後,Mt. Gox表示,他們損失了超過850,000個比特幣(在撰寫本文時價值約5億美元)。

儘管大約有200,000個比特幣被收回,但Mark Karpeles(前首席執行官)承認,“我們的系統存在缺陷,導致我們的部分比特幣消失了”。

參考鏈接:

https://en.wikipedia.org/wiki/Mt._Gox#Bankruptcy;stolen_bitcoin(2014%E2%80%93ongoing)

希思羅機場5號航站樓

就在英國希思羅機場5號航站樓開通之前,工作人員測試了他們全新的行李處理系統。這個系統每天需要檢查大量的行李。在向公衆開放航站樓之前,工程師們對系統進行了全面的測試,測試了12,000多件行李。所有的測試都很完美,唯獨在航站樓正式開放那一天卻出了狀況。有人認爲,在“現實”場景中,如果行李箱中有重要物品,當乘客手動從系統中取出行李時,會導致整個系統產生混亂,進而關閉。

在接下來的10天裏,約有42,000個行李被滯留機場,超過500個航班被取消。

參考鏈接:

http://news.bbc.co.uk/2/hi/uk_news/7314816.stm

水手1號航天器

1962年,在一次飛躍金星的任務中,這艘飛船幾乎沒能飛出卡納維拉爾角。當時的一個軟件編碼錯誤導致火箭偏離軌道,幾乎要撞回地球。驚慌失措的美國宇航局地面工程師發出了自毀指令。審查委員會後來確定,由於計算機指令中少了一個連字符,導致可能向航天器發送錯誤的制導信號。據報道,當時火箭的造價超過1800萬美元。

參考鏈接:

https://www.edn.com/electronics-blogs/edn-moments/4418667/Mariner-1-destroyed-due-to-code-error--July-22--1962

莫里斯蠕蟲病毒

1988年,康奈爾大學的一名學生開發了一個程序,他說這個程序本來應該是無害的,但由於編碼錯誤導致數千臺計算機崩潰。這是互聯網上第一次出現廣泛的蠕蟲攻擊。這名學生(Robert Tappan Morris)被判犯有黑客入侵罪,並被判處罰款10,000美元。莫里斯的律師在審判中稱,這個程序實際上有助於提高計算機安全性。

清理這個爛攤子的成本可能高達1億美元。有趣的是,莫里斯還和其他人共同創立了創業孵化器Y Combinator,現在是麻省理工學院的教授。帶有蠕蟲源代碼的磁盤現在被波士頓大學收藏。

參考鏈接:

https://en.wikipedia.org/wiki/Morris_worm

愛國者導彈

有時候,軟件故障導致的成本無法用美元來衡量。1991年2月,美國在沙特阿拉伯部署的愛國者導彈防禦系統未能偵測到對一處軍營的攻擊。一份政府報告指出,一個軟件問題導致跟蹤計算不準確,系統運行的時間越長,這個問題就越嚴重。事發當天,該系統已經運行了100多個小時,而且不準確度嚴重到足以導致系統在錯誤的地方偵測入侵導彈。襲擊造成28名美國士兵喪生。但其實在攻擊事件發生之前,軍方已經修復了這個問題,只是修復後的軟件是在發生攻擊事件的第二天才到達基地。

參考鏈接:

http://www-users.math.umn.edu/~arnold//disasters/patriot.html

奔騰處理器的浮點數除法錯誤

1994年,一位數學教授發現並公佈了英特爾頗受歡迎的奔騰處理器的一個缺陷,英特爾的反應是根據用戶的要求更換芯片,只要用戶能夠證明他們確實受到了影響。英特爾表示,由缺陷引起的錯誤很少會發生,絕大多數用戶都不會注意到。但憤怒的用戶要求英特爾爲所有提出要求的人更換芯片,英特爾同意了。這一事件讓英特爾公司損失了4.75億美元。

參考鏈接:

https://en.wikipedia.org/wiki/Pentium_FDIV_bug

股票做市商的4.4億美元錯誤

美國最大的股票做市商之一在30分鐘內因軟件故障導致4.4億美元損失。該軟件故障導致市場出現大量意外交易,這家公司股價在兩天內下跌75%。據報道,這家公司的交易算法導致近150支不同股票的不穩定交易,使它們陷入痙攣狀態。

參考鏈接:

http://www.businessweek.com/articles/2012-08-02/knight-shows-how-to-lose-440-million-in-30-minutes

NOA-19衛星

雖然這不是軟件錯誤,但在2003年9月6日,這顆衛星在洛克希德·馬丁太空系統工廠嚴重受損。當技術人員試圖將衛星轉向水平位置時,衛星卻倒在了地上。事故調查表明,這是因爲整個設施缺乏程序性紀律。事實證明,雖然翻轉操作有被記錄下來,但一名技術人員拆除了24個用於固定適配器板的螺栓,這個操作沒有被記錄下來。技術人員隨後使用推車轉動衛星,但在試圖移動衛星之前,沒有按照程序規定檢查螺栓。

修復衛星花費了1.35億美元。

你還知道哪些因爲程序故障導致的重大事故嗎?

請在評論區爲大家科普~

參考鏈接:

https://www.nasa.gov/pdf/65776main_noaa_np_mishap.pdf

英文原文

https://raygun.com/blog/costly-software-errors-history/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章