写点什么

历史上代价最高的 11 个软件故障

  • 2019-01-23
  • 本文字数:2930 字

    阅读完需:约 10 分钟

历史上代价最高的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/


2019-01-23 09:0811330
用户头像
小智 让所有人认同的文字称不上表达

发布了 410 篇内容, 共 409.9 次阅读, 收获喜欢 1986 次。

关注

评论

发布
暂无评论
发现更多内容

OpenVINO: 一款全面的深度学习应用程序优化工具

IT蜗壳-Tango

三周年连更

Shell脚本中的echo命令

芯动大师

echo Shell命令 三周年连更

解决Centos7 yum 出现could not retrieve mirrorlist 错误

北桥苏

Centos 7 linux\

今日分享丨5分钟快速了解Containerd

inBuilder低代码平台

云原生

长三角生物医药产业加速跑,飞桨螺旋桨为创新药企、医药技术伙伴装上AI大模型引擎

飞桨PaddlePaddle

飞桨 科学计算 飞桨螺旋桨 文心生物计算大模型

QUIC协议在天翼云CDN全站加速产品中的应用

天翼云开发者社区

云计算 QUIC

天翼云“息壤”荣膺第六届数字中国建设峰会“十大硬核科技”称号

天翼云开发者社区

云计算 算力 超算

滋灌中小企业,分销伙伴和华为来做“送水人”

脑极体

分销

RDMA网络实践

天翼云开发者社区

云计算 存储 RDMA

解决easyswoole的swServer_start_check: onTask event callback must be set at报错

北桥苏

php swoole

【涨知识】PCB板为什么多是绿色的?

华秋PCB

PCB PCB电路板 电路板 PCB设计 显影

大咖说丨云计算:数字世界的“中枢神经”

天翼云开发者社区

云计算

飞书深诺电商广告素材搜索实战

飞书深诺技术团队

向量检索 Milvus 以图搜图

数据不只是数字:描述、分析、展示呈现数据的故事

Data 探险实验室

数据分析 数据 数据可视化 数字 可视化分析

二层交换机和三层交换机到底区别在哪?

wljslmz

交换机 三周年连更

今天开讲,6 大演讲主题、5 位技术大咖!龙蜥大讲堂 5 月精彩直播预告抢先看

OpenAnolis小助手

开源 操作系统 内核 龙蜥社区 龙蜥大讲堂

开源赋能 普惠未来|统信软件寄语2023开放原子全球开源峰会

开放原子开源基金会

DPDK与ScaleFlux CSD 3000:金融数据处理的创新组合

ScaleFlux

DPDK 存储技术 数据压缩 金融开源

解析内存中的高性能图结构

NebulaGraph

数据结构 图数据库

直播预告 | 博睿学院:全面升级自适应AIOps

博睿数据

可观测性 AIOPS 智能运维 博睿数据 博睿学院

一文读懂 DNS 解析

火山引擎边缘云

DNS 域名解析 火山引擎 边缘云

解决nginx配置负载均衡时invalid host in upstream报错

北桥苏

nginx

急吗?光急可没用呀!满满干货,两小时速成,别搁那干瞪眼了!

加入高科技仿生人

低代码 数字化 OA 数字转型

linux上SVN出现 "Unable to connect to a repository at URL 'svn://xx.xx.xx.xx/xxx' 和 No repository ...

北桥苏

svn linux\

【修复问题】HBuilder打包编译报错汇集(持续更新)

红泥

可计算存储技术全面升级CSD 3000存储体验

ScaleFlux

人工智能 机器学习 计算与存储 数据压缩

开源家装小程序

源字节1号

开源 软件开发 前端开发 后端开发 小程序发开

PostgreSQL-HA 高可用集群在 Rainbond 上的部署方案

北京好雨科技有限公司

postgresql Kubernetes 云原生 rainbond 企业号 5 月 PK 榜

「MIAOYUN」:降本增效,赋能传统企业数字化云原生转型 | 36kr 项目精选

MIAOYUN

云原生 数字化转型 智能运维 降本增效 36氪

基于 TiDB + Flink 实现的滑动窗口实时累计指标算法

PingCAP

MySQL 数据库 开源 分布式 TiDB

为什么ChatGPT用强化学习而非监督学习?

OneFlow

历史上代价最高的11个软件故障_技术管理_Nick Harley_InfoQ精选文章