马航失联航班的第三种可能:FMS和ACARS系统可被黑客攻击接管
作者: 日期:2014年03月19日 阅:6,117

MH370

马航MH370失联已经进入第十一天,创下世界航空史商业客机失踪时间记录,同时也引发了史上最大规模的跨国海空搜救行动。在调查MH370下落的过程中,全球媒体和民众的接触到了两个航空专用技术名词,FMS(飞行管理系统)和ACARS(飞机通讯地址与报告系统)。

据美国全国运输安全委员会前调查员雷格·费斯(Greg Feith)介绍,航班飞行路线改变是通过向飞行管理系统(FMS)输入指令实现的,飞行管理系统的信息会通过飞机通讯地址与报告系统(ACARS)传回航空公司的维护基地。

虽然诸多迹象表明MH370的失联与飞行员人为操纵有关,但正如劳斯莱斯飞机发动机引擎会自动回传数据这一事实被忽视一样,所有的媒体和调查机构目前都没有提及的一点是:与掌管汽车发动机的ECU等汽车专用计算机通讯网络一样,上述两个航空业的标准技术毫无安全可言,完全无法抵御潜在的主动或被动式攻击。

在本人一年前的文章——“如何用Android智能手机劫持一家客机”一文中,介绍了黑客如何通过攻击FMS和ACARS两个航空专用系统从而让飞机从飞行管理系统中消失,从地面用Android手机操控飞机飞行到指定地点,甚至让飞机坠毁。虽然这种攻击只是存在理论上的可能性,但是安全专家在开发概念验证攻击软件时暴露了FMS和ACARS系统的安全漏洞,正如黑帽大会揭示ATM机漏洞后犯罪集团立刻开发出了洗劫ATM机的U盘,在安全专家们发现FMS和ACARS系统漏洞一年后的今天,鉴于马航MH370失踪事件已经超出常识和想象范围,我们不能完全排除黑客远程攻击甚至遥控飞机的可能性。以下为原文转载:

航空公司的飞行安全专家们,你们还在担心恐怖分子或者好事者用大功率激光笔在飞机起降时晃瞎飞行员的眼睛吗?恐怖分子们,你们还在挖空心思把“家 伙”带上飞机吗?现在真正“革命性”的技术来了,劫机者用一部Android手机就能在家里遥控一架航班,就像操纵航模一样,这可不是恐怖分子的酒后胡 言。

Android手机应用千千万,但是有一种危险应用你可能打破头也想不到,那就是——劫持飞机。

昨天在阿姆斯特丹的Hack in the Box大会上,德国信息安全顾问Hugo Teso向人们演示(PPT下载[wpdm_file id=24])了如何通过一个普通的Android智能手机应用劫持一架飞机,这个演示立刻吸引了全场观众的注意力。

Teso在信息安全领域有超过11年的经验,但他作为经受专业训练的商业飞行员的驾龄则有12年。因此Teso是少数能综合利用科技和航空两个领域的技术进行跨界攻击的人选。

image

Teso开发了一个劫持框架(SIMON)和一个Android应用(PlaneSploit),向飞机的飞行管理系统(计算单元和控制显示单元)发送攻击信息。Teso向听众演示了这种攻击方法的可怕后果:完全控制并接管一家飞机。

Teso攻击的两个航空信息系统之一是播式自动相关监察系统(Automatic Dependent Surveillance-Broadcast,ADS-B),通过一个板载的发射器,该系统负责向航空管理员发送飞机状态信息(身份、目前位置、海拔高 度等)。ADS-B还能接受附近飞机的空中交通状况、天气等信息。

Teso攻击的另外一个系统是飞行器通讯寻址与报告系统(ACARS),这个系统的功能是在飞机和航空管理员之间通过无线电或卫星交换信息,同时还能自动更新飞行状态信息。

与掌管汽车发动机的ECU等汽车专用计算机通讯网络一样,上述两个航空业的标准技术毫无安全可言,完全无法抵御潜在的主动或被动式攻击。Teso首 先用ADS-B发现并锁定所要劫持的航班,然后用ACARS收集机载电脑信息并通过发送恶意信息攻击其漏洞,最终控制并操纵了整架飞机!

出于安全考虑,Teso自行研究开发的SIMON框架特意设计成只能在虚拟环境中运行,而不能在真实的飞机上使用。但是在Teso的测试实验室,所 有的软件硬件的连接和通讯方式都与现实场景完全一致。(编者按:事实上Teso使用的ACARS和FMS等大量软硬件都是从eBay上低价淘来的,如下 图)

image

SIMON一旦被部署到飞行管理系统(FMS)的计算机中,很难被察觉,因此也没有必要像Rootkit那样隐藏自己。通过SIMON,攻击者能向远程的飞行管理系统上传特定的载荷,包括飞行计划、具体命令甚至定制化的插件。

hitb-plane-2

为了让劫持看上去更直观“有趣”,Teso还开发了一款名为PlaneSploit的Android应用程序来通过SIMON遥控飞机。(编者按:当然,这款应用是不可能在Google Play上架的,我们就不提供超链了)

Teso的Android劫机应用PlaneSploit能完成以下操作(在虚拟环境中):

  •  让飞机飞往指定地点
  •  在特定高度和位置触发事件
  •  让飞机坠毁
  •  让飞机从飞行管理系统中消失
  •  让飞机驾驶舱里的各种指示灯一起闪烁,就像迪斯科舞会那样

更加狗血但却完全可行的是,Teso的Android应用还能利用手机里的加速感应器来用手势操作飞机。

当然,以上所有功能的前提是飞机必须处于自动驾驶模式,如果飞行员发觉情况不对,可以切换到手动模式,从而摆脱手机的控制,避免灾祸的发生。

饶是如此,我们也必须承认,随着数字化和物联网的高速发展,越来越多关键基础设施和交通系统的专用网络正在成为黑客攻击的目标,而其结果也比虚拟世界的攻击要可怕得多。

申明:本文系厂商投稿收录,所涉观点不代表安全牛立场!


相关文章