老化的 FAA 软件在历史性地面停留两年后仍在运行未定义的数据状态

2023 年 1 月的一个星期二早上,航班运营主管 Dana Kessler 正在芝加哥奥黑尔国际机场进行班前简报,这时屏幕上出现了……

来源:Altitudes杂志

2023 年 1 月的一个星期二早上,芝加哥奥黑尔国际机场的航班运营主管达纳·凯斯勒 (Dana Kessler) 正在做班前简报,这时屏幕突然安静下来。 NOTAM——空中任务通知,管理每次起飞的关键安全警报——已经停止更新。一个小时内,美国联邦航空管理局发布了全国范围内的停飞令,全美范围内约 11,000 架航班停飞。调查人员后来证实,原因是一个损坏的承包商文件,该文件用未定义的条目覆盖了有效数据,并通过一个过于脆弱而无法拒绝错误输入的系统进行级联。

两年多后,根据联邦审计记录和接受本报告采访的航空技术专家的说法,造成这一故障的结构性漏洞——缺乏明确的错误状态和输入验证的软件系统——尚未从 FAA 基础设施中完全消除。该机构已经取得了有记录的进展,但进展的速度和范围仍然存在争议。

“未定义”在航空软件中的含义及其重要性

在软件工程中,当程序遇到未编写的处理条件(意外输入、缺失值或损坏的数据字段)时,就会出现“未定义”状态,并产生不可预测的输出而不是受控错误。对于消费类软件来说,这可能意味着应用程序崩溃。根据 FAA 的运营数据,对于每天管理 45,000 架次航班的系统来说,后果是截然不同的。

FAA 的 NOTAM 系统,正式名称为“空中任务通知系统”,建立在 20 世纪 90 年代的代码架构之上。该系统最初设计时并未采用现代输入验证协议,这意味着它缺乏在错误数据条目传播到管制员和飞行员之前自动隔离或拒绝这些数据条目的能力。

要点

— Marcus Holden,MITRE 公司航空网络安全研究员

11,000+

$1.8B

3

1