广播式自动相关监控(ADS-B,Automatic Dependent Surveillance-Broadcast)已被广泛用作空中交通监视的实际标准。航空法规要求所有飞机积极广播包含身份,位置和移动信息的状态报告。但是,由于缺乏安全措施,ADS-B受到了攻击者的网络攻击,目的是干扰空中安全。在本文中开发了一种非侵入式信任评估系统(https://github.com/kai-jansen/ADSB-Trust-Evaluation ),该系统可以使用地面传感器基础设施收集的真实飞行数据来检测对基于ADS-B的空中交通监视的攻击。通过以众包方式利用地理分布传感器的冗余,实施了验证测试来追求安全性。
本研究的核心是将验证检查与机器学习(ML)辅助的接收模式分类相结合,以便用户收集的数据对其他用户提供的数据进行交叉验证。系统是外接性的,因为它既不需要修改已部署的硬件,也不需要修改软件协议,而仅利用已经可用的数据。本系统可以用至少三个良性传感器观察空域以成功检测GPS欺骗,ADS-B欺骗,甚至Sybil攻击。还能够区分攻击类型,识别受影响的传感器并调整系统以动态适应不断变化的空中交通状况。
空中交通监控已从基于模拟无线电检测和测距(RADAR)的系统发展成为一种数字化辅助的监视基础设施。从2020年1月1日起,所有飞机都必须配备ADS-B系统,以进入大多数领空。具有ADS-B功能的发射器会定期广播状态报告,这些状态报告会告知其他人其标识,位置,移动和其他状态码。尽管航空业的发展周期非常长(长达数十年),但要求高安全性保证的应用通常落后于安全性方面的进步。因此,ADS-B报告既未加密也未通过身份验证。同时,ADS-B的开放规范促进了飞机报告的收集和免费使用。简单的传感器可以解码飞机的广播报告并获得其周围空域的实时视图。OpenSky网络是一个以众包方式结合了1000多个用户操作的地面传感器的网络。该网络收集并存储来自世界各地的空中交通数据,并将其用于研究。
由于ADS-B缺乏基本的安全实践,长期以来一直有大量工作讨论针对空中交通的网络攻击。这些以往工作展示了攻击者如何干扰飞机传感器,以及如何将假飞机信息注入空中交通监控系统。例如,具有现成商用硬件和知识优势的攻击者可以生成模仿有效ADS-B报告的任意消息。此类攻击包括驾驶舱或控制室的干扰,违反强制性安全分离规定,甚至增加了飞机相撞的可能性。由于实施这些攻击绝不仅仅是学术性质的,因此迫切需要安全解决方案来保护空中交通监视的完整性。实际上,数据信任的建立是航空业的一个开放而核心的问题,并且已经出现了公众关注的新问题。
为了满足安全驱动的航空业对更高安全性的需求,本研究提出了一种以数据为中心的信任评估系统,旨在使用已经收集的数据评估ADS-B报告的信任度。当消息来自功能性非恶意源时,它们是可信任的。相比之下,应该检测到试图伤害系统的容易出错或攻击控制的消息。此外还探讨了攻击类型的识别和恶意攻击的可追溯性自动自动控制系统中的传感器。
这种系统的开发面临高度管制的航空业带来的若干挑战。从不需要对已部署的硬件和软件进行任何修改的意义上讲,可行的解决方案需要是非侵入性的。特别是,安全系统不应干扰已经存在的其他系统,以避免冗长的(重新)认证过程。优选地,解决方案是在已有传感器输入的情况下自主运行的增强系统。
系统的核心利用了传感器网络的众包性质,其中用户收集的数据对其他用户提供的数据进行交叉验证。建立基于相互审核的可信任传感器网络,追求无线见证(wireless witnessing)。无线见证是观察分布式无线系统状态的协作过程。将其应用于安全性环境中,以评估和验证ADS-B报告的可信赖性。特别是,实施了基于机器学习(ML)的验证测试,该测试在典型的消息接收模式上进行了训练。传感器的协作可表征从某些空域传输的飞机报告的预期接收模式,同时自动考虑自然的消息丢失。
首先介绍当今的空中交通监控技术,重点是ADS-B。然后介绍了信任定义,并提出合并的系统模型,最后定义了攻击者模型。
近年来,用于空中交通监视的传统基于模拟RADAR的系统已经通过用于主动无线通信的数字方式得到了增强。为了与地面站和其他飞行器通信,飞机必须配备ADS-B转发器,该转发器会定期广播状态报告。这些报告包含飞机识别信息,有关速度,航迹和加速度的信息以及其他观测数据。定位信息主要通过GPS导出,这是自定位的首选方法。
由于ADS-B协议是公开指定的,因此调制和数据帧模式是已知的。 ADS-B的工作频率为1,090 MHz,典型的接收范围可达700 km。因此,信号可以通过简单的消费级硬件(例如通用软件无线电外围设备(USRP)或更便宜的软件定义无线电(SDR),如RTL-SDR加密狗)接收,其价格低至20美元。 SDR的可用性不仅允许被动监听,而且还导致了用于主动ADS-B传输的软件工具或伪造的GPS信号的产生。令人惊讶的是,ADS-B协议缺乏基本的安全措施,并且既不应用加密也不进行身份验证。
将对系统的信任定义为ADS-B报告的确定性是正常行为的结果,并且不会因故障或主动操作而中断。为此,可信报告表示由真实来源传输的有效数据。另一方面,不可信的报告要么是错误的,要么包含应从进一步处理中丢弃的虚假数据。尽管传统的信任概念是以实体为中心和僵化的,但是当今快速变化的临时网络需要调整信任模型。
因此本研究寻求建立一个以数据为中心的信任模型,考虑到易失性环境中的短暂关联,本文设计了一个信任系统,该系统由地理共享的传感器收集的数据驱动,这些传感器在网络中共享其观测值。冗余视图的组合使系统能够交叉验证数据并最终建立一种无线见证形式。
考虑以下系统模型,配备有ADS-B发射器的飞机会定期广播状态报告,其中包括GPS衍生位置等信息。一组按地理位置分布的传感器接收这些报告,并以众包方式与他人共享其观察结果。中央服务器收集并处理转发的观察结果。总体而言,面临着飞机的高机动性,而接收传感器是固定的,不太可能显着移动。下图概述了考虑用来评估ADS-B报告的可信度的系统模型。
攻击者模型包括几个突出的攻击媒介。根据它们的预期目标和范围对其进行分类。下表显示了概述。本研究针对这些攻击评估了提出的系统,此外即使是完全了解本研究的验证方案的攻击者也无法绕过,并且仍然可以被检测到。
GPS欺骗:机载(自)定位传感器处理从多颗卫星接收到的GPS信号,并将结果嵌入到广播的ADS-B报告中。一种攻击情形是考虑GPS信号的欺骗,即攻击者以相当大的信号强度发送特制信号。结果,攻击者可以将错误的定位或时间信息注入飞机系统,从而诱导对伪造的攻击者控制的数据进行处理。
ADS-B欺骗(单):能够生成伪造的ADS-B消息的攻击者可以发送任意报告,对其内容进行完全控制。这些虚假的报告可能代表:例如任何飞机标识符,定位解决方案或移动信息。此类消息的接收者将对消息内容进行解码,并将感测到的信息转发到中央服务器。根据受影响的传感器数量来区分这种攻击,由于其广泛的空间分布,有效范围受到限制的攻击者可能只会影响单个传感器。
ADS-B欺骗(多)。大规模攻击者也可能同时针对多个地理上分散的传感器。但是,此攻击者需要多个天线或高架高功率天线。攻击以广播方式进行,预计会影响其目标区域内的所有传感器。结果,一个以上的传感器将收到相同的伪造报告并将其转发到中央服务器。
传感器控制:由于监视网络的开放性,攻击者可能会操作自己的传感器并成为众包基础架构的一部分。具有对传感器的完全控制权,攻击者能够注入封装在真正ADS-B报告中的任意数据。可以在不广播任何信号的情况下执行此攻击,并且可以直接在网络级别进行此攻击。
Sybil攻击:使用大量传感器的大规模攻击者可以进行Sybil攻击,目的是推翻网络的保护系统。传感器可以部署在不同的位置,以同时影响多个冗余视图。这是对传感器网络的最强大攻击之一。
本文提出了一种建立动态验证空中交通监视ADS-B消息的系统。首先描述所分析数据的详细信息,并说明一般网络统计信息。然后定义(i)三种验证测试,用于检查消息的内容,以及(ii)一种基于ML的报告元数据分类,例如接收模式。
作为数据的来源,利用了来自OpenSky网络的真实空中交通数据。传感器由志愿者安装和操作,他们可以保持匿名或选择通过提供个人信息进行注册。超过1000个传感器促进了网络的覆盖,该网络在欧洲和美洲大陆表现出特别高的传感器密度。该网络依靠用户提供的数据,在集中式服务器上对其进行处理,并提供对每天大约200亿条消息的收集数据的访问权限。值得注意的是,网络中的节点未配备任何加密手段或证书,这会阻碍传感器网络的增长并与对众包平台的便捷访问相抵触。当存在其他空中交通传感器网络时,利用该网络的研究友好型数据共享。
为简便起见,最初将所考虑的ADS-B报告限制为开放空域网络传感器密度最高的欧洲空域。为了进一步降低复杂度,将此空间划分为边缘长度约为2的非重叠正方形C。总共 10公里,所考虑的环境变为232,139个不同集群Cj∈C的并集。
为了更好地了解OpenSky网络提供的数据,将传感器的覆盖范围和已处理的ADS-B消息相对于其空间分布的数量可视化。这些评估是基于从一天(2020年2月15日)收集的数据得出的,实际飞机总共广播了132,883,464条消息。下图描绘了所有已记录的ADS-B报告的空间分布的热图。可以看到,大多数报告来自中欧机场附近的几个集群区域。值得注意的是,数据库仅包含到达至少一个贡献传感器的消息。
网络的总体覆盖范围是所有参与的传感器的组合。由于传感器的覆盖范围可能会明显重叠,因此与农村地区相比,具有更多传感器的地区的冗余度更高。下图显示了截至2020年2月15日OpenSky网络的汇总传感器覆盖范围。该热力图描述了同时覆盖指定区域的传感器数量。总共729个不同的传感器报告了所考虑的空域的数据。注意到,在操作最多的传感器的中欧地区,控制力很强。但是,传感器网络的覆盖范围也限制了系统的适用性,没有传感器覆盖的空域没有受到保护。
在本文的其余部分,使用以下符号。该网络由一组基于地面的传感器S组成,其中每个传感器称为Si∈S。每个ADS-B消息m可以被任意数量≥1的传感器Si接收,因此链路(m, Si)存在。由于噪声影响和消息冲突,消息自然会发生丢失,将传感器Si接收从群集Cj发送的消息作为Prec(Si,Cj)的概率表示为概率。此外,消息由接收传感器加盖时间戳,其中t是发布的时间戳。当消息没有被任何传感器接收时,因此不在所考虑的数据库中,下表总结了使用的符号。
为了评估ADS-B消息的可信赖性,设计了一个包含四个验证测试的评估过程,即(i)完整性,(ii)差异性,(iii)依赖性和(iv)交叉检查。为了完成起见,对前三个测试进行了说明,但研究专注于针对现有传感器基础结构量身定制的交叉检查,以实现无线见证。系统概述如下图所示,并在下面进行开发。
1)完整性检查:完整性检查表示针对定义的值范围的消息内容验证。在数据值不受定义限制的情况下,应用物理可能性范围。完整性检查特定于信息内容,例如报告的飞机状态。下表概述了已实施的完整性检查。
位置:报告的位置包含有关纬度,经度和海拔高度的信息。纬度仅在-90°至90°范围内定义,而经度则在-180°至180°范围内定义。海拔不受其定义的限制,但受大约2至5毫米的物理限制。 −3 m是最低的欧洲机场阿姆斯特丹史基浦机场的高度。对于最大高度,使用20,000 m的界限,这对于普通的空中交通来说是很难达到的。
移动:在机载时,速度应为正值,并受特定飞机类型的最大速度限制,通常小于大约2毫米。 1200公里/小时运动方向称为真实航迹,由与真实北方对齐的角度定义,范围为0°至360°。此外,垂直速率还取决于飞机,预计不会超过±50 m / s。
标识:每架飞机都分配有唯一的标识,即国际民航组织的24位注册标识。可以对照包含当前分配的ICAO注册的数据库检查该标识符。此外,每架飞机都分配了一个易失性呼号,也可以对其进行验证。
2)差异检查:差异检查考虑了来自同一飞机的后续ADS-B消息之间的变化。因此,这些检查需要根据所包含的标识符将消息分配给航迹。考虑到消息更新速率和广播频率,确定了每秒合理的最大变化,这些变化符合惯性和飞机的能力,并且被实际飞行数据的观测所覆盖。下表包含已实现的容许参数更改。如果长时间失去联系后收到更新的ADS-B报告,例如缺少传感器覆盖范围,将通过根据可错过的时间段缩放可容忍的最大变化来弥补数据的不足。
3)依赖性检查:依赖性检查验证来自同一飞机的后续报告的物理依赖性参数之间的关系。根据对下一个位置的预测来验证报告的水平和垂直变化,并允许最大100 m的公差,这是根据经验从可用数据集中得出的。在报告的高度和指示在地面上的飞机之间还存在进一步的依赖关系。根据瑞士最高的欧洲机场(1,707 m)的高度粗略地执行此检查。值得注意的是,有关地理拓扑的更细粒度的信息将极大地提高有效性。下表显示了已实现的依赖性检查。
4)交叉检查:交叉检查以协作的方式利用监视网络的空间冗余。参与的传感器分布广泛,并且覆盖范围明显重叠,如图所示。即使传感器位置未知,也可以通过检查嵌入在其接收到的ADS-B报告中的报告位置来确定哪些传感器观察到哪个空域。因此,在基于网格的方法中,每个集群Cj都专门用于覆盖传感器Si,使得以下等式成立:
如果多个传感器Si覆盖同一集群Cj,从而Prec(Si,Cj)> 0,可以通过轮询所有指定的传感器来对收到的消息进行核对。对于覆盖报告的飞机位置的每个传感器,区分两个事件-传感器已收到消息或传感器未收到消息:
由于噪声影响和信号碰撞,传感器自然会经历10%至75%的信息丢失,具体取决于到原点的距离,视野中的障碍物和空域密度。因此,丢失报告的情况并不表示存在异常行为或存在攻击,因此需要相应地加以考虑。将事件X,Si∈S的组合称为从声明位置广播的报告的观察消息接收模式。因此,每个感测到的消息都映射到一个向量,该向量表示每个传感器的接收事件:
其中n是网络中传感器的总数。对于考虑的场景,获得了一个具有729个维度的向量,它表示消息接收模式。这些模式表现出一定的差异,由于不确定的传感器接收,无法转换成固定的规则。因此,选择一种机器学习方法来处理大量可用数据,同时考虑未知的外部影响。
特别是,对于132,883,464个记录的ADS-B报告中的每个报告,确定729个传感器中的哪个报告了该特定消息。结合嵌入式定位信息可以学习一天的典型接收模式,并将数据标记为正常运行的空中交通和传感器的结果。在处理完所有报告之后,为每个集群Cj分配了实际观察到的消息接收模式,假设这些模式代表正常行为。
算法选择:由于特征空间是由传感器的数量定义的,并且每个特征都被限制为0(未接收)或1(已接收),因此选择使用决策树(DT)。
如果至少一项验证测试表明存在异常行为,则会触发攻击分析,以尝试进一步推断(i)攻击类型和(ii)受影响的传感器。根据触发攻击分析的测试,可以得出告警原因的不同结论。
1)攻击类型:注意到三个攻击类别,即GPS欺骗,ADS-B欺骗和传感器控制/Sybil攻击,可以通过它们分别在网络上对消息造成的操纵类型来表征。这可以直接在ADS-B消息的内容上,也可以在消息接收特性上更微妙。完整性,差异性和依赖性检查可以验证消息有效负载,而交叉检查则可以评估接收模式。对于每种攻击媒介,确定哪种验证测试是指示性的,并在下表中提供概述。
完整性检查:完整性检查可检测到超出定义的值范围的情况。当报告是在ADS-B欺骗攻击中专门生成的,或者传感器完全在攻击者的控制之下时,可能会发生这种情况。
差异检查:差异检查指示数据中出现异常跳变。如果该位置出现突然跳跃,则可能因此可以检测到GPS欺骗攻击。所有其他攻击也可能会触发警报,具体取决于生成的假数据中的差异。
依赖性检查:依赖性检查可检测到飞机内部来自独立传感器的可靠数据之间的不一致。由于成功的GPS欺骗攻击只会影响与GPS相关的传感器,因此有关移动或航向的其他信息可能会导致违规。同样,如果伪造的报告不满足参数依赖性,其他攻击也可能无法通过此测试。
交叉检查:交叉检查尝试确定消息接收模式是否是正常行为的结果。受GPS欺骗攻击影响的飞机报告表明位置错误,接收方式可能与实际位置的实际接收方式有所不同。对于其他攻击,交叉检查的有效性取决于观察要求保护的飞机位置的良性传感器的数量。同时覆盖一个区域的传感器越多,仅特定数量的传感器(例如,传感器)的可能性就越小。例如,受到ADS-B欺骗攻击的影响,请接收特定的消息。攻击者向网络添加传感器时也应遵循类似的考虑。不受影响的传感器将不会报告注入的消息,这些消息最终会以异常的接收模式反映出来。对于这两种攻击类别,接收模式越容易确定参与的传感器越多。
2)受影响的传感器:如果成功检测到异常行为并确定了攻击类型,则将尝试对受影响的ADS-B传感器进行推理。通常会在攻击过程中区分被动参与式传感器和主动参与式传感器。尽管可以将报告不可信消息的所有传感器标记为潜在恶意软件,但对哪些传感器确实在攻击者的控制之下感兴趣。这些受损的传感器正在积极尝试破坏网络。因此将所有报告清楚地分配给传感器控件/Sybil攻击的消息的传感器识别为恶意软件。它们的标识允许断开网络连接并恢复网络的完整性。
另一方面,本身成为攻击受害者的传感器只能暂时与网络断开连接。一旦攻击结束,以后可以重新激活以这种方式识别的传感器。跟踪受影响的传感器还可以对攻击进行粗略定位。即使传感器位置未知,也可以确定传感器的覆盖范围,因此可以缩小攻击者的位置。
虽然可以从实际收到的ADS-B报告中了解正常运行的空中交通的特征,但仍需要根据现实的假设和经验来模拟攻击情景。假设在选定的日期(2020年2月15日)未发动任何攻击,将使用所有报告来绘制典型的接收模式。在下文中描述了如何模拟三种考虑的攻击类别,即。例如GPS欺骗,ADS-B欺骗和传感器控制/Sybil攻击。对于每次攻击,至少生成正常收到的报告数量,即例如,代表每项攻击的超过1.32亿个不同的虚假报告。请注意,这并不反映正常报告和攻击报告之间的实际分布,而是用来建立合理的伪造报告数据库的。此分配仅用于训练过程。
为了模拟成功的GPS欺骗攻击,操纵嵌入在ADS-B报告中的报告的GPS派生的定位信息。更准确地说,从整个数据集中随机抽取一份ADS-B报告。然后从相应的飞机上收集了前15分钟和接下来的60分钟内代表75分钟飞机航迹的所有报告。然后,该航迹会受到选择的1°,2°,5°,10°,20°或45°偏差α的模拟,以模拟攻击从攻击开始= 15分钟开始逐渐将飞机带离其航迹的情况。下图描述了此过程。对于每个偏差,将替换报告中的GPS位置,而所有其他数据字段和接收消息的传感器保持不变。将消息标记为攻击后GPS欺骗攻击的结果,并跟踪所应用的偏差,与原始航迹的距离以及发起攻击后经过的时间。重复从数据集中随机抽样报告并处理GPS位置的过程,直到达到所需的报告数量为止。
在模拟ADS-B欺骗攻击时,面临着传感器位置未知的问题。甚至观察到的簇跟踪也无法揭示传感器的位置,因为接收范围可能会发生很大变化,并且在不同方向上可能会有所不同。值得注意的是,攻击者将面临相同的问题,无法精确定位传感器,但在瞄准多个传感器时需要盲目影响较大的区域。根据有多少传感器成为攻击的受害者来区分攻击,即例如,选定区域内的单个传感器,多个传感器或所有传感器。下图说明了这些攻击。为了模拟针对多个传感器的攻击者,随机选择传感器,直到各个群集的平均观察传感器数量。
通过从现实世界的飞机报告中随机抽样,再次为每种情况生成假消息。提取相应的75分钟长航迹,并根据考虑的群集的覆盖范围以及受攻击影响的传感器数量来调整接收传感器。所有其他数据字段保持不变。使用真实的飞机报告来表示攻击者,他们试图通过将这些消息发送到与场景相关的传感器数量来将幽灵飞机注入网络。
在传感器控制/ Sybil攻击中,攻击者将网络添加到受攻击者同步控制的传感器。假设攻击者的传感器最初的行为正常,在注入任何虚假消息之前不会被察觉。发起攻击后,所有受控传感器将相互尝试报告相同的虚假消息。关于良性传感器的数量,再次区分受控传感器的数量,即。例如,一个传感器或攻击者的传感器与良性传感器之间相等。
航迹的采样和选择过程与ADS-B欺骗的过程相同。假设攻击者利用所有受控传感器注入相同的消息。值得注意的是,覆盖同一区域的良性传感器不受Sybil攻击的影响,因此不会报告此类消息的注入。
将对已开发的ADS-B信任系统的评估分为(i)检测每种考虑的攻击的性能,(ii)区分攻击向量,(iii)识别受影响的传感器,(iv)分析不同网格分辨率的影响,( v)研究时间依赖性,以及(vi)估计计算性能。
以两种不同的方式来处理攻击检测性能。首先考虑了单个ADS-B报告的分类结果,而不链接连续报告,其次决定了组合飞机航迹。训练过程将使用选定日期的所有报告以及根据从OpenSky网络数据库中随机采样的75分钟长的飞机航迹为基础的模拟攻击矢量。攻击检测评估原型使用边缘长度为10 km的聚类Cj。将每个报告分配给其原始簇,该簇由嵌入位置表示,将观察区域中的所有消息均分成几部分。然后通过遍历所有群集,使用选定的DT分类器执行训练。
为了进行测试,再次在数据库中查询1000条未经训练的随机选择的飞机航迹。除了要求至少50%的广播报告由网络实际记录外,对选择过程没有任何限制。此过滤器将迅速离开覆盖区域的航迹,例如网络的范围,因此由于缺少报告而无法分类。应用不同的攻击向量,相应地标记每个航迹,然后使用指定集群的分类器对结果报告进行分类。对于三个攻击类别:GPS欺骗,ADS-B欺骗和传感器控制/ Sybil攻击,将简短描述哪个测试会触发警报,然后重点介绍支持ML的交叉检查,以提供TPR和FPR。
1)GPS欺骗:当增量位置偏差通过差分检查时,依赖性检查始终表示预测位置与报告的GPS位置之间不匹配。即使考虑了特定的不确定性阈值,但在某个时间点,攻击仍超过了此阈值。考虑到交叉检查,直觉是飞机声称离其实际位置越远,接收方向图的差异就越大。值得注意的是,用于交叉检查的所选聚类由报告/声明的位置确定。如果真实位置和欺骗位置仍在同一群集中,则接收模式相同,并且无法确定是否存在GPS欺骗攻击。
为了评估GPS欺骗攻击的检测性能,考虑对分类器进行了训练,该分类器使用了来自正常操作的样本和模拟的GPS欺骗报告。基于分类器结果和报告总数进一步计算分数。按照此指标,得分为1表示每个报告都被标记为真实,而得分为0则意味着每个报告都被标记为恶意。评估(i)关于分类器的所有1000次运行的平均得分,相对于原始航迹的不同偏差α和图7中的经过时间,以及(ii)关于相对于原始航迹的距离的平均得分,如下图所示,到原始航迹的距离是所应用的偏差与发动攻击后所经过的时间的组合。
结果:尽管依赖性检查可以有效地检测GPS欺骗攻击,但在可能丢失其他信息的情况下,交叉检查足以在经过一定时间后以高概率检测此类攻击,请参见下图。例如,考虑到α=2◦,α=10◦和α=45◦,分数在经过大约1分钟后降至0.5以下。分别为20分钟,5分钟和1分钟。平均分数下降的速度由所应用的偏差α决定。偏差越大,假位置接近其他簇的速度越快,从而导致接收模式不匹配。值得注意的是,由于部分报告被错误分类,即使在正常操作下,平均得分也永远不会达到1。将通过在确定飞机航迹时链接连续的报告来解决此问题。
上图将偏差和经过的时间浓缩为距原始航迹的距离。对于不超过一个网格分辨率(即i)的距离,平均得分迅速接近0.5。例如,在评估原型中为10公里。达到此点后,下降速度减慢并达到大约。两个网格分辨率的距离为0.35。进一步的距离只会适度降低平均得分,并且此时几乎稳定下来。观察到分类器可以区分接收模式,并且随着欺骗航迹偏离真实飞机航迹的距离越来越远,其性能也会越来越好。请注意,在最坏的情况下,距离约为√2倍的网格分辨率仍可以指向同一群集。但是,增加距离可以进一步保证不同的群集。
现在要解决如何确定飞机航迹的问题,与上述评估相反,在上述评估中,显示了各个报告在所有测试运行中的平均得分。真实的报告有时被标记为恶意,即使没有应用攻击,也永远不会达到完美的1分。因此,检测攻击不能仅基于单个消息而不触发大量错误警报。考虑到将系统设计为用于攻击检测的增强系统,因此错误警报事件具有破坏性,并且数量很多是不可接受的。
为了补偿单一的误报,例如在未实施攻击时检测到恶意模式,本研究实施了时间窗。特别是测试了三个不同的时间窗口w,例如5分钟、10分钟和15分钟。时间记录仅向后应用,以使时间t处的分数成为最近w分钟内所有已接收报告的平均分数。然后根据分数阈值做出最终决定。为了最大程度地减少错误警报,将阈值设置为在攻击后任何给定时间在随机选择的所有1000条飞机航迹上观察到的最低分数。结果,相对于所考虑的航迹,通过设计实现了0%的误报率。所选阈值取决于时间窗口的长度,其中较短的时间窗口会导致较高的阈值,而较大的时间窗口会导致更严格的阈值。
在上表中列出了考虑到不同的偏差和时间窗口的GPS欺骗检测性能。分析了攻击检测率,即。例如,与所有测试的运行相比检测到的攻击数量和检测延迟,即观察到违反阈值并发出警报的时间。另外说明了中位数和标准差,粗体字标记为每一行的最佳结果。要强调的是,由于如何选择阈值,因此对于每种配置,FPR为0%。
随着偏差α的增加,攻击检测可达到约99.5%。在启动攻击后的第一小时内降低阈值时,将算为检测到的攻击。未检测到丢失的0.5%是由于飞机非常缓慢甚至停下。考虑到模拟,GPS欺骗的影响在这种情况下可以忽略不计。其余偏斜的飞机航迹很有可能被发现。检测延迟在很大程度上取决于所施加的偏差α。对于更高的值,平均检测延迟可以低至大约6分钟,标准偏差在8分钟左右。时间窗口w也影响性能,由于最佳的攻击检测率和检测延迟取决于所施加的偏差α,因此不同时间窗口的实施是有益的。
2)ADS-B欺骗:为了评估ADS-B欺骗检测性能,特别关注交叉检查的结果。由于攻击者可以生成任意报告,因此假设攻击者可以通过完整性,差异和依赖性检查成功地将其检测不到。考虑到交叉检查的测试集,从GPS欺骗评估中提取了相同的飞机航迹。在定时攻击中,攻击者发起欺骗攻击,表示通常情况下飞机航迹将结束,但通过向系统中进行虚假注入而继续进行。根据传感器的目标数量来区分三种情况,值得注意的是使用了分类器,该分类器接受了来自正常操作的样本和来自ADS-B欺骗的模拟样本的训练。
结果:这三种情况的最终平均得分如上图所示。可以看到,正常操作的得分非常接近1,而任何形式的ADS-B欺骗都会大大降低所有1000次运行的平均得分。这种变化几乎是在攻击发起后立即发生的,此后继续减少。此外,方案对分数的影响也不同。从攻击者的角度来看,从多个传感器而不是从所有传感器注入报告优于所有其他策略。
即使是优化的攻击者策略也无法仅通过影响特定传感器来模仿典型的接收模式。由于传感器在地理位置上分布在未知位置,因此攻击者无法系统地控制哪些传感器和多少传感器接收到虚假报告。甚至实际上,攻击者也需要从声称的位置附近的某个位置进行广播,以模拟现实的消息接收模式,从而实际上从该广告位置成为合法的广播。
即使针对多个传感器,在接收范围内传感器不断丢失的报告仍然是某种注入的有力指示。自然地,观察发生注入的簇的传感器的数量影响了重要性。当操作较少的传感器时,这些模式的变化较少,与恶意模式的区别也将不那么明显。下图显示出了与观察传感器的数量有关的平均得分。仅具有三个传感器,与传感器覆盖范围为10、30或50的群集相比,攻击者在更多情况下仍无法被检测到。
3)传感器控制/Sybil攻击:为了评估传感器控制/Sybil攻击的检测性能,再次将重点放在交叉检查的结果上。考虑两种情况,即不同数量的受损传感器,例如一个传感器或攻击者的传感器与已经观察到该特定空域的传感器数量相等。值得注意的是,攻击者的传感器最初正常参与,并且在训练消息接收模式时已被考虑。攻击之后,攻击者开始使用受控传感器注入飞机航迹。与对ADS-B欺骗的假设相比,攻击者现在可以使用所有受控传感器来模拟任意接收模式,而同一群集中的良性传感器则不受影响。
结果:结果与ADS-B欺骗结果非常相似。对分数的影响是立竿见影的,可以与正常行为清楚地区分开。类似结果背后的原因是基于不受攻击者影响的良性传感器。来自受控传感器的消息注入表示在同一条消息上缺少大量良性传感器的极不可能的情况。因此,Sybil攻击的检测是基于丢失的报告,而不是所有传感器都同意同一消息。当仅考虑未损坏传感器的传感器覆盖范围时,可以转换为这种情况。
但是,需要强调一些限制。如果攻击者控制一个群集的每个传感器,则可以模拟任意模式,并且没有机会检测到攻击。但是,一旦攻击者尝试为传感器已经观察到的群集注入报告,就可以检测到攻击。至少一个传感器已经观测到绝大多数的空域。只要大多数良性传感器正常运行,仍可以检测到攻击。
4)组合攻击:到目前为止,已经评估了单个攻击的检测性能,即例如GPS欺骗,ADS-B欺骗和传感器控制/Sybil攻击。现在分析是否有任何攻击组合可以增加攻击者未被发现的机会。值得注意的是,传感器控制优于ADS-B欺骗,因为完全受损的传感器不仅会注入任何形式的虚假ADS-B报告(就像ADS-B欺骗一样),而且还会丢弃传感器可能收到的任何其他消息。因此,可以将ADS-B欺骗视为传感器控制/ Sybil攻击类别的子集。攻击者获得成功的成功可能将其组合的成功发挥到极致,而攻击者还可以控制受ADS-B欺骗影响的传感器。尽管控制传感器子集的攻击者仍可能决定额外欺骗其他传感器,但检测性能与良性传感器的数量紧密相关。
专注于同时受GPS欺骗和ADS-B欺骗影响的报告。例如,通过ADS-B欺骗注入的伪造GPS轨迹。将偏差α设置为5°,并假设攻击者通过欺骗多个传感器来注入航迹。从两个不同的角度考虑对检测性能的影响。上图显示了基于分类器的更改,该更改指示了GPS欺骗。下图描绘了另一个图,其中ADS-B欺骗分类器评估攻击组合。
结果:将伪造的GPS欺骗报告的检测性能与其他ADS-B欺骗进行比较,可以清楚地注意到由于组合中的ADS-B欺骗导致的得分突然下降。在30分钟内,平均得分不断降低,这使得组合不利于攻击者。出乎意料的是,从ADS-B欺骗的角度来看,可以注意到攻击组合实际上导致得分略高,并且效果随着时间的推移而增加。似乎组合有利于攻击者,但是分数差异是由于图中未反映的变化所致:通过额外操纵GPS位置,伪迹更快地接近了由较少传感器观察到的边缘区域,因此分类失去了意义。只要足够的良性传感器不受影响,任何攻击组合都不会对攻击者有利。
5)从单个报告到航迹移动:在评估中将单个报告的分类结果链接在一起,以决定整个飞机的航迹。虽然单个报告可能被错误地归类为恶意报告,但时间窗可以减轻这种影响。针对不同集群的训练模型是分开的,有些模型可能比其他模型更简洁。有助于进行检测的一个事实是飞机的固有运动,因此航迹在其路线上横越许多不同的群集。结果,多个群集的组合决策受益于具有更高传感器覆盖范围的群集,即使涉及到难以确定的群集,最终也会产生非常高的分类性能。
到目前为止,对每个考虑的攻击媒介使用了不同的分类器。攻击类型可以由指示攻击的分类器轻松确定。忽略了一些可能性,例如专门针对GPS欺骗检测而设计的数据包,例如在遇到ADS-B欺骗时也可能会发出警报,反之亦然。请注意,由于设置阈值的方式,当不进行攻击时,没有分类器会产生任何错误警报。现在分析是否可以区分攻击模式。为了评估区分模拟攻击的能力,将二分类转换为决定攻击类型的多分类。使用来自GPS欺骗和ADS-B欺骗的报告训练了DT分类器。由于两种攻击都具有多种配置,因此为GPS欺骗选择了20º的偏差,为ADS-B欺骗选择了多个受影响的传感器。应用w = 15分钟的时间窗,并在攻击+ 30分钟时评估结果。下图描绘了分类结果的混淆矩阵。
结果:考虑到没有应用任何攻击修改的飞机航迹,组合分类器不会产生错误分类。对于α= 20°的GPS欺骗,可以检测并正确识别78.5%的随机运行,而仍将13.9%认为是正常的。约7.6%的案例被指定为ADS-B欺骗。相比之下,正确分类了85.4%的ADS-B欺骗航迹,确定为4.2%为正常,并且有10.4%与GPS欺骗混合。由于对GPS欺骗的早期阶段的接收模式有类似的影响,分类器为此难以解决。总而言之,大多数攻击都已正确分配和隔离。
通常会区分自己是遭受攻击的受害者的传感器和积极协作的传感器。例如,在GPS或ADS-B欺骗攻击中,传感器可能面临伪造的输入数据,但是它们仍在正常运行,并且符合其预期的行为。虽然对于GPS欺骗攻击,接收模式反映了正常的行为,但是对于所声明的不同消息来源,ADS-B欺骗攻击的接收模式被更改。当攻击分析显示出后一种情况的攻击类型时,报告传感器可能会与网络断开连接,并被排除在其他报告的交叉检查过程之外。这些传感器直接受到攻击的影响,并且其记录不可信任。但是,一旦攻击结束,可以重新激活识别出的传感器,以再次为网络做出贡献。
另一方面,如果攻击分析显示有传感器控制/Sybil攻击,则将面临受到威胁的传感器,它们会主动在网络上发起攻击。报告接收到已识别的虚假报告的所有传感器都应视为攻击者控制的传感器联合的一部分。来自此类传感器的任何共享报告都不能被认为是可信赖的。他们必须停止参与众包网络,并且转发的报告将相应地过滤掉,以恢复网络的完整性。
考虑的基础网格的分辨率决定了将报告和传感器分配给群集Cj的过程。网格分辨率越高,区域之间的差异以及最终的接收模式就越精细。但是,提高网格分辨率不仅会增加计算量,还会导致监视传感器的面积过大。例如由于不知道传感器的确切位置,因此需要从报告的ADS-B消息中了解观察到的区域。即使传感器实际上观察到该空域,但传感器越小,其未报告来自特定区域的任何消息的机会就越大。在选择边长度为10 km的网格大小来比较攻击检测性能的同时,还评估了不同网格分辨率的影响,并获得了以下见解。
结果:集群的扩散程度越大,则至少有一部分区域的传感器潜在地在观察。接收模式具有更多的有源传感器,并且在同一集群内具有更高的方差。但是,这也使得很难在正常操作和恶意模式之间进行清晰区分。另一方面,具有非常紧密区域的群集实际上阻止了有意义的接收模式的估计,因此也降低了有效性。由于攻击检测性能与接收模式的差异有关,因此确定了灵敏度和泛化之间的合理折衷,从而得出了10 km的网格分辨率。
为了评估检测方案的时间依赖性,另外在2020年2月17日收集的数据集上评估其性能。该数据集表示正常工作日,即之前分析的日期之后的两天。选择这一天是由于气温下降和阴雨天气,因此代表了不利的条件。在这新的一天中,航班的数量和路径与之前选择的数据集相似(但不相同)。在这一天里,OpenSky网络记录了超过1.35亿个ADS-B报告和728个活动传感器。这两天的传感器网络结构强烈重叠,显示出很小的波动。评估步骤与之前的分析相同,揭示了以下结果。
结果:总体而言,上表显示与以前的结果几乎没有偏差,变化程度可与传感器网络的同质性相提并论。具体而言,在上表中给出了显示考虑GPS欺骗攻击的检测性能的结果。 ADS-B欺骗和传感器控制/ Sybil攻击的结果都与先前的结果重叠,因此无法从视觉上捕获差异,因此不提出相同的数字。总而言之,这提供了证据,表明(i)不同的飞行路线,(ii)变化的空域密度和(iii)不断变化的天气条件仅轻微影响了方案的检测性能,表明其对这些参数的鲁棒性。
基于ML的交叉检查的实施带来了一个挑战,即仅在一天之内,并且仅在欧洲,就需要处理来自700多个传感器的超过1.32亿个报告。有了如此大量的数据,就无法在现成的设备上对整个数据集进行训练。为了减少训练和分类所需的时间,决定将数据分成多个网格,每个网格中的数据都可以单独处理。如果在指定的服务器上实现,则所需的时间预计将减少很多。结果,甚至可以定期进行再训练。另一方面,分类的重复成本只是训练持续时间的一小部分,因此一整天的所有分类仅需花费几分钟,因此可以实时高效地进行。
在检测ADS-B欺骗和Sybil攻击的性能分析中,考虑了攻击者控制了一定数量的传感器。完全了解本系统的攻击者可能会尝试优化所追求的攻击策略并模仿真实的接收模式。对于ADS-B欺骗攻击和Sybil攻击,只能在一定程度上实现,并且认为攻击者无法克服具有足够传感器冗余的区域中的检测方案。即使是完全有意识的攻击者也不知道其他传感器的确切位置,因此不可能以有针对性的方式(例如,通过ADS-B欺骗)来操纵它们。此外,攻击者无法访问其他传感器的未经处理的读数以试图对其进行定位。在ADS-B欺骗的情况下,攻击者会影响多个传感器,因此无法单独针对实际受害者。在进行Sybil攻击的情况下,攻击者可以尝试使用受控传感器来模拟现实的接收模式,但不能使用声音用户操作的传感器来模拟。良性传感器覆盖的群集越好,攻击越明显。因此认为,由于其他传感器的隐蔽位置,即使是完全了解本系统的攻击者也无法克服检测方案。
承认本系统存在虚假警报事件,即例如,错误检测到的攻击极大地阻碍了开发的系统的接受。特别是在考虑与安全相关的空中交通监视时,虚假警报事件会分散空中交通管制员的注意力,从而导致与想要实现的目标相反。通过选择设置阈值,在1000个随机采样航迹的数据集中获得了0%的误报。诚然,这不能保证不存在误报。但是,如果出现错误警报,则可以使用更新的阈值和时间窗口来调整本系统。即使对于更大的阈值,也期望在合理的延迟内有意义的攻击检测率。
众包传感器是信任系统的核心,其分布和密度对于检测攻击至关重要。交叉检查的有效性,即例如,无线见证随着覆盖相同空域的传感器数量的增加而增加。因此,冗余度越高,接收模式中存在的变化就越大,并且可以检测到更好的恶意攻击和传感器。通过考虑与不同覆盖范围相关的区域来分析OpenSky网络的当前弹性。下表列出了总覆盖面积的细分并将其与欧洲大陆的总面积相关联。
为了进一步发展网络的安全性,鼓励在覆盖较少的区域中部署新传感器,以通过优化网络扩展来优化当前的地理分布。根据网络中现有传感器的覆盖范围信息(请参见图3),以填充盲点为目标来优化新传感器的放置。优化目标是提高总体覆盖率,从而增强对攻击的抵抗力。
为了提供最有利于部署新传感器的领域的概述,根据网络当前的传感器冗余,对更好覆盖范围的需求进行了权衡。覆盖范围越小,对新传感器的需求就越高。将可能的位置限制在陆地上。进一步假设平均接收距离为400 km,并将可观察的空域简化为传感器周围的圆圈。上图根据整个网络覆盖范围的增加来描绘区域。尽管在中欧部署新传感器并不会显着影响抵御攻击的总体弹性,但靠近海岸线的新传感器设置可以大大提高攻击的弹性。
这项工作使用了现存的众包传感器基础设施,为基于ADS-B的空中交通监视建立了一个信任评估系统。 本解决方案利用传感器冗余来建立无线见证,以保护原本不安全的开放系统。 为此针对突出的攻击媒介测试了系统,表明不仅可以检测到它们,而且可以得出有关其类型和参与传感器的结论。 信任评估的有效性取决于观察相同空域段的传感器的冗余性。 此外概述了未来传感器部署的注意事项,这些传感器可以通过优化扩展来加强网络的安全性。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。