20199133-《网络攻防实践》综合实践

这个作业属于哪个课程 《网络攻防实践》
这个作业的要求在哪里 网络攻防综合实践要求,作业二:《基于GPS/INS的道路位置跟踪系统安全性研究》
我在这个课程的目标是 对所选论文进行深入学习,并对文章的技术原理做出分析
这个作业在哪个具体方面帮助我实现目标 对GPS导航系统与惯性导航系统进行学习,研究作者开发的欺骗算法原理
作业正文 见作业
其他参考文献 见文末

1.实践内容

1.1论文简介

一、确导航安全的重要性

  • 跟踪自己位置的能力对于各种安全和安保关键应用程序都很重要。例如,处理高价值商品的物流公司,需要不断监测车队中每辆运载贵重物品的车辆的位置,以确保它们安全地运输到预定目的地。医疗和执法等紧急支援服务依靠位置信息追踪人员,优化响应时间,甚至适当激活交通信号灯。执法人员使用脚踝手镯来监视被告或假释的位置,如果罪犯在允许的区域外迷路,就通知他们。诸如Uber和Lyft这样的叫车应用程序使用位置信息来跟踪、计费和为出行分配司机。此外,公共交通的位置不断受到监测,以确保服务的顺利和及时运行。随着自主车辆和交通系统的出现,对位置信息的依赖性必然会增加。以上应用大多依赖于全球定位系统(GPS),这是目前实际使用的室外定位系统。据估计,到2020年底,全球导航卫星系统将使用超过8亿台设备。
  • 我们评估了基于道路定位跟踪系统的GPS/INS的安全保障。具体来说,我们解决了以下研究问题:给定一个地理区域的道路网络,并且假设GPS和惯性传感器数据都被连续监视以跟踪实体的位置,那么攻击者是否有可能伪造其导航路径或最终目的地?如果是,攻击者的限制和可能性是什么?我们能否利用城市道路网中存在的物理运动约束,设计一种安全的导航算法,生成难以伪造的旅行路线?例如,携带高价值商品车辆的驾驶员是否可以在没有被监控中心检测到的情况下伪造其指定路线并偏离?带GPS/INS踝关节监测仪的假释是否可以欺骗他的位置和旅行路线,而不会造成GPS和惯性传感器计算出的估计值有任何差异?
  • 具体来说,我们在本文中做出了以下贡献。首先,我们证明了基于道路定位跟踪和导航的GPS/INS系统具有严重的局限性。我们开发的算法表明,攻击者确实有可能劫持远离预定目的地的车辆或采取替代路线而不触发任何警报,即使GPS位置和惯性传感器不断受到监测。我们评估了我们的攻击在全球10个主要城市的可行性和影响,结果表明,攻击者可以在监控系统检测到潜在攻击之前,将车辆带到30公里远的地方。注意,即使在检测之后,跟踪系统也不知道真实的位置。据我们所知,这是第一次演示基于GPS/INS的位置验证和跟踪系统中存在的安全漏洞。最后,基于观察结果,我们将我们的逃逸攻击算法套件转过来,以构建跟踪服务可以运行的对策,以减轻此类欺骗攻击。具体来说,我们修改了ESCAPE算法以输出安全的导航路径,这些路径可以被分配给一个起点和终点,这严重限制了攻击者的可能性。

二、研究背景

(一)全球定位系统

  GPS是目前实际使用的室外定位系统。GPS是一个基于卫星的全球导航系统,由24颗以上的卫星组成,它们围绕地球运行,距离地面20000多公里。每颗卫星都配有高精度的原子钟,因此卫星提供的时间信息几乎完全同步。每颗卫星都发送导航信息,这些信息使用该卫星特有的伪随机码传播。地面上的GPS接收机接收这些导航信息并估计它们的到达时间。根据导航信息中包含的传输时间及其到达时间,接收器计算其到每个可见卫星的距离。一旦接收机获得四颗及以上卫星的导航信息,就可以使用多向定位技术确定自己的位置。

(二)GPS欺骗攻击

  由于缺乏任何信号认证,并且每个卫星的扩频码、调制方案和数据结构都是公开的,民用GPS很容易受到信号欺骗攻击。攻击者向GPS发送精心编制的无线电信号,这些信号与真实的卫星信号相同,由于合法卫星信号在接收器处的功率较低,攻击者的欺骗信号可能会使真实信号黯然失色。在欺骗攻击中,GPS接收器锁定更强的信号,即攻击者的信号,而忽略合法的卫星信号。如今,用不到100美元的硬件设备执行GPS欺骗攻击是可行的。GPS信号发生器可编程以发送对应于静态位置(例如纬度、经度和海拔)或模拟整个运动轨迹的射频信号。

(三)惯性传感器辅助导航与跟踪

  在GPS无法访问、不可靠或可能被敌方干扰情况下,人们寻求辅助解决方案和攻击检测技术,提出了若干对策和替代的定位技术。惯性传感器正成为一种流行的选择,主要有两个原因。首先,惯性测量不受无线信号干扰的影响,因此能够抵御拒绝服务攻击。其次,它们在大多数现代智能手机中的广泛可用性,使它们易于部署并集成到现有的导航和跟踪模块中,而不需要对GPS接收机进行任何硬件或软件修改。惯性导航是将选定的传感器(如加速度计、陀螺仪和磁强计)的读数集成到一个完整的三维位置、速度和方向的过程。加速度计沿三个轴测量重力加速度和非重力加速度。陀螺仪测量物体旋转的速率,并用来计算物体的姿态和航向。陀螺仪的测量有助于加速度计确定物体的方位。通常情况下,三个加速度计和三个陀螺仪组合成一个惯性测量单元(IMU)。本文重点研究了基于GPS和惯性传感器测量的道路导航跟踪系统的安全性问题。我们首先演示攻击者如何伪造其导航路线,即使在下一节中GPS和惯性传感器都被连续监视。


图1:道路网络施加的约束使得跟踪道路应用的精度更高。蓝色路径是一辆车实际走的和估计走的路线,使用低成本的惯性传感器跟踪。绿色路径是空中导航时的估计轨迹。

1.2欺骗INS辅助定位系统

在本节,将对依赖GPS和惯性传感器进行定位的道路导航实施欺骗攻击。这是对GPS/INS定位系统的欺骗攻击的第一次演示。首先,我们描述了系统和攻击者模型,然后对所提出的欺骗攻击算法进行了高层次的概述。
一、系统和攻击者模型

  • 我们的攻击与GPS/ INS系统的部署方式无关,即它既可以是受信任的智能手机上的应用程序,也可以是安装在目标实体上的专用跟踪设备(例如电子脚链)。监控系统的主要目的是跟踪实体的位置和行驶路线。我们假设攻击者能够使用gps-sdrsim之类的工具,生成和传输与他选择的位置或路线相对应的伪造GPS信号。攻击者的目标是欺骗其位置和路线,而不被发现。例如,攻击者可以在监控系统检测到异常并发出警报之前,尝试偏离预定的行驶路线,并尽可能地远离预定的目的地。当时,攻击者的位置仍不能确定。或者,攻击者在指定的地点出发并到达,但是行驶的路线却与反馈给监控系统的路线不同。我们假设攻击者可以完全接触到被跟踪实体,并且知道部署了用于监控的GPS/INS系统。本文工作中,我们假设跟踪设备本身是防篡改的。 例如,攻击者是货运公司(或被劫持车辆)的驾驶员。他可以接触到车辆,并定期驾驶汽车运输贵重货物。而且他了解该公司采用的基于GPS和INS的跟踪系统。但是,他无法修改智能手机上的软件或物理上篡改跟踪设备。

二、攻击概述

  • 攻击者的主要目的是在不引起怀疑的情况下伪造所报告的行驶路线,简单地欺骗GPS信号是不够的,因为INS测量将表明所报告的GPS位置和惯性估计之间的差异。为了成功实现攻击,攻击者现在必须识别并欺骗具有相似距离、道路曲率和转角的行驶路线,以最大程度减小INS和GPS估计值之间的差异。作者所开发的ESCAPE算法,利用许多城市道路网络中存在的规则模式,识别出与报告给监控中心的路线相似的导航路径。最后,INS和GPS估计值之间的差异十分微小,攻击就成功了。
    攻击开始时,攻击者先向ESCAPE提供预定路线的起点和终点。然后,ESCAPE计算两组路径:(1)欺骗路径和(2)逃逸路径。欺骗路线是起点和终点之间存在的一组路线。这些是攻击者生成虚假GPS信号并欺骗接收器,报告给监控中心的路线。这些应该是对于起点和终点的合理路径。 对于每个被欺骗路线,ESCAPE都会计算出一组逃生路线,攻击者可以在进行欺骗攻击时使用这些逃生路线偏离预定的路线。换句话说,欺骗路线是报告给监控中心的路线,逃生路线是攻击者到达目的地的真实路线。然后,攻击者选择一条逃生路线,使他能够到达期望位置。期望位置可以是远离预定目的地的位置,也可以是到达指定目的地之前偏移预定路线的位置。攻击者可使用与被欺骗路线相对应的逃生路线来生成欺骗信号。图2举例说明了在曼哈顿的两个端点(从绿色标记到红色标记的绿线)之间生成的被欺骗路线,和这条被欺骗路线生成的逃生路线的目的地(红色点)。最后,攻击者沿着逃生路线行驶时,报告被欺骗路线以欺骗跟踪设备,实现了攻击。


图2:曼哈顿的欺骗路径,和为该欺骗路径生成的逃逸目的地的示例。我们的算法为给定的源/目标位置生成100条欺骗路径,使对手无法检测到更大的位置集。

三、ESCAPE算法的核心
算法由三个主要模块组成:(1)图构造器,(2)欺骗路径生成器和(3)逃逸路径生成器。

  • (一)图构造器:地理区域G的路径由有向图生成。我们选择OpenStreetMap作为地图提供商,因为它包含了世界上主要城市的准确道路信息以及各种元数据,如道路和建筑物的类型。每个地理区域可以表示为,其中A是一组坐标点(原子段的集合),是一组连接的集合,其中X表示两个坐标点s和s`之间的连接。我们将原子段定义为两个坐标点之间的一段道路,这样它保留了道路的曲率,但不包含转弯或急弯。连接是连接两个原子区段的路口。这些连接可能延伸同一条道路,也可能转入另一条道路。如公式1所定义,函数给出了与连接相关的转弯角度,原子段的曲率由函数给出。图3显示了一个示例道路网和相应的图形构造。根据OpenStreetMap中的道路类型,为每个原子区段分配默认速度限制。

    图3.道路网及其相应图形表示的示例。

  • (二)欺骗路径生成器:欺骗路径生成器搜索并编译特定路线起点和终点之间的可能路径。欺骗路径是一组N个路径使得更容易欺骗,其中i<j并且。在给定攻击者地区的情况下,该算法生成的路径可以最大程度地找到该地区其他部分的相似的道路曲率和转弯。因此,它使逃生路线的数量最大化。 它利用市区布局的规律性,即多数道路通常是笔直的,转弯角度大多是直角。这些的实现是通过运用一个评分机制,即在相同起点和终点的情况下,包含这类常规模式的道路排名要高于不寻常道路。图4展示了曼哈顿道路的曲率和转弯分布,并为我们的方法提供了直观的认识。我们注意到,大多数转弯为90°,这意味着,当给定的路线的所有转弯都≈90°时,我们找到具有相似转弯的另一条路线的可能性会很高。
    欺骗生成器的基本思想是找到与图中其他路线有相似属性的路线。找到这样的路线后,会更容易发现到图中其它目的地的路线。在此程度上,我们实施了一种评分机制,先分析该地区的道路曲率和转弯角度,并让有频发曲率和频发转弯角度的路线分数最大化。使用改进的深度优先搜索(DFS)算法来实现路线搜索算法。典型的DFS算法是在给定起点和终点间计算出一条路线。这限制了攻击者在这些端点间生成多条被欺骗路线。我们扩展了基本的DFS算法,计算出起点和终点间所有合理的非循环路径。 如果路径在最短路径的20%以内,则该路径是合理的。为了将算法运用到更大的图(对于大城市),我们合并了过滤和评分函数,在每次迭代中去掉可能性较小的路径并修剪低评分路径,从而加快了计算速度。

    图4:曼哈顿的曲率和转弯分布。

    • 评分:图的所有顶点都是原字段,和连接两个坐标点的边。连接的转弯角度由函数给出,原子段s的曲率由函数给出。这个曲率可以从给定的坐标计算出来。设表示从N个地理坐标计算的方位集。设是连接这个原子部分的第一个和最后一个地理坐标的虚线的方位角。该原子截面的曲率计算为B中所有方位与参考方位B0的归一化绝对差,即

      所有道路曲率和转角的集合表示地理区域的道路结构。图4显示了曼哈顿的这些属性。请注意,大多数计算的曲率值为0°且大多数转角为90°。这是典型的曼哈顿和其他城市的代名词网格状道路结构。要使用此信息进行评分,将为该区域预先计算概率分布表。此表可以表示为,其中每个条目是特定曲率和转角组合(四舍五入到最接近的整数)出现的概率。
      图上有M个顶点的路径可以用每个顶点的曲率和下一条边的转角来表示,例如,,其中。评分开始时,路径初始化为1分。对于每个顶点和边添加到路径,从表P(G)中获得概率。注意,由于算法的构造,所有连接边的出现概率相等,并且与当前路径无关。因此,将每个顶点的得分与先前的路径得分相乘,以计算路径中所有顶点的复合概率。最终路径得分计算为

    • 过滤:该算法设计用于生成输入源和目标之间的所有路径。对于一个大的图,可能性的数量可以是数十亿的顺序,这使得搜索效率非常低。为了扩展计算,该算法使用以下过滤器来加速似是而非的路径搜索,同时启用排名。在给定当前路径p、源s、边e和目标d的情况下,当路径的距离与边和目标之间的欧几里德距离之和超过最大允许距离时,该算法会过滤该边,例如,其中,d(.)表示路径的长度,指定源和目标之间的最短时间路径。对于这项工作,我们将F=1.2设置为只允许距离与计算的最短路径相似的路径。该算法还始终保持最佳N条路径,并过滤得分较低的任何新路径。在我们的评估中,我们选择N=100,以确定在许多城市中对多条路径的攻击效率(算法对每个源/目标对运行大约1分钟)。但是,具有足够资源的确定攻击者可以很容易地使用较大的N来增加欺骗路径的数量。此外,对手将只对每个攻击实例上的单个源/目标位置对感兴趣,因此可能需要更多的时间来获得最大的欺骗和逃逸路径集。最短路径p也由一个矩形(添加了m=1000米的填充)限定,使得矩形之外的所有边都超出范围。注意,上述算法参数是可调的,并在本工作中设置为保守值。我们认为,当这些参数被更积极地调整时,攻击性能可以显著地提高,例如,设置F=1.5和N=1000(当聚焦于单个源/目标时,N的大值非常合理)。

  • (三)逃逸路径生成器:逃逸路径生成器的思想是找到攻击者可以到达不同目的地的所有路径,而无需发出任何警报。该算法的一个重要考虑因素是,所有计算出的路径必须具有与欺骗路径相似的加速度计和陀螺仪模式,以避免被GPS/INS跟踪系统检测到。我们正式定义逃逸路径如下。与欺骗路径对应的逃逸路径是M个路径集合使得,但语义上与相似,对于任何,当路径具有相似的距离、道路曲率和转角时,它们在语义上是相似的。
    可以通过分析用于跟踪的惯性传感器的噪声灵敏度来确定与欺骗路径的偏差(以避免INS检测)。我们证明,商品加速度计和陀螺仪在精确计算距离、道路曲率和转弯角度方面存在挑战,这使得攻击者可以在不被检测的情况下前往多个目的地。我们还表明,磁强计可以很容易地被欺骗,使它们无法检测到车辆前进方向的异常。我们对加速度计和陀螺仪噪声的分析以及磁强计欺骗的可能性在第IV-A节中报告。与按分数排列路径的欺骗路径生成器算法不同,此算法计算的逃逸路径的分数始终为1。直觉是,通过算法滤波器的所有路径都一定会避免INS跟踪系统的检测。

    • 过滤:在这个算法中,我们用
      来表示输入的欺骗路径,其中表示交叉口之间的距离和道路曲率的集合,表示交叉口处的转向角。我们首先提出了利用转角进行滤波的思想,然后将讨论扩展到包括距离和道路曲率。设是欺骗路径的导出转角,其中K是交叉点的数目。当转角差小于设定的阈值时,逃逸路径中的转角连接(其中)对交叉点k∈K有效,例如。参数取决于陀螺仪传感器的噪声灵敏度。
      距离的滤波器类似于转角。设是K个交叉点之间的欺骗路径的导出距离。对于交叉口k∈K,表示路径与上一个交叉口k-1的距离,即,其中d(.)表示给定交叉口处欺骗路径的总距离。注意,k=0是路径的源,k=K+1是路径的目标。当逃逸路径中的连接k与前一个交叉点k-1的路径距离()在欺骗路径的第k个交叉点定义的范围之间时,该路径对交叉点k有效,即,这里,d'(.)表示交叉点处逃生路径的距离。上述参数和取决于加速计传感器的噪声灵敏度。
      道路曲率滤波器比转角和距离滤波器更复杂。其原因是,给定一个交叉口k∈K,距离和转角是标量,而是一个矢量,必须从交叉口k-1和k之间的路段的方向导出。分别用于路段和的两个不同方位矢量和不能直接进行比较,因为它们可能具有不同的长度和方向,例如当指向东时,可以指向北。定义,表示的道路曲率相似性计算的思想是,用线性插值将这些方向角转换为相同大小的N,将插值后的方向角转换为曲率,然后比较曲率。让分别表示的插值后的方向角。具有M个方向角的路段s的曲率,可以通过从B中的所有方向角中减去第一个方向角(为参考角度),即。设分别为从导出的曲率。两段的曲率相似性可以表示为:
      当最大曲率相似度值小于设定的阈值时,逃逸路径中的连接χ对交叉口k有效,即,与旋转滤波一样,这个参数也取决于陀螺仪的噪声灵敏度。为了避免被发现,上述约束必须适用于逃逸路径的所有K个交叉点。因此,当且仅当满足以下所有条件时,逃逸路径才被视为有效。

1.3攻击影响:实施与评估

在本节中,我们将介绍我们攻击的实施情况,并评估其在全球各个城市的有效性。首先,我们评估了惯性传感器的精度,并推导了逃逸算法的真实噪声阈值设置。然后,我们描述了实验装置和方法的细节。最后,我们使用两个指标来呈现评估结果:(i)从指定目的地的位移和(ii)逃逸路径的覆盖区域。
一、 惯性传感器的精度
用于评估加速度计和陀螺仪噪声灵敏度的传感器数据来自开放数据集。该数据集由加速度计、陀螺仪和磁强计样本组成,这些样本是从美国马萨诸塞州波士顿市和沃尔瑟姆市约140个实际驾驶实验中记录的。传感器样本采集于4部智能手机(HTC One M7、LG Nexus 5、LG Nexus 5X和三星S6)。还记录了这些路线的GPS轨迹,以便进行地面真实性比较。这项工作的作者特别关注回转过程中的陀螺仪噪声。我们扩展了他们的工作,以确定当距离从加速度计传感器计算,以及当道路曲率从陀螺仪传感器计算时的噪声灵敏度。

  • 1.加速计精度:加速计传感器可用于计算路径的行驶距离。此数据可以表示为以离散时间间隔t∈T采样的向量,其中是设备在x、y和z轴上所经历的实际加速度,是由多种因素引起的未知噪声量。例如,由于制造缺陷,如轴不对中,传感器具有固有的偏差。另一个噪声源是车辆和发动机的机械结构引起的振动。由于道路状况和交通等外部环境,传感器会产生附加噪声。当根据加速度计数据计算距离时,我们研究目的是找出由于引起的实际值的发散范围。为了获得这个范围,我们使用数据集中每个传感器路径的加速度计数据计算交叉口之间的距离,并将其与从OpenStreetMap获得的实际距离进行比较。注意,为了减少噪声的影响,我们在计算之前执行了[47]中描述的校准和旋转技术。作者还对多个样本进行平均,以进一步减少噪声的影响。由于交叉点之间的距离可能有很大的差异,我们将距离误差表示为导出的加速度计距离与实际距离的比率。更准确地说,如果是N个导出加速度计距离的向量,而是N个实际距离的向量,则误差可以表示为向量。图5a显示了误差ea的分布。注意错误的期望值应该接近1,请注意,错误的期望值应该接近1,但是,我们看到0.1到5之间有很大的变化。这表明加速计传感器不适合进行距离计算,并使攻击者能够移动远大于预期路径的距离。在第III-C3节中,逃逸路径生成器算法使用参数和来基于距离过滤转义路径的连接。从误差分布中选择这些参数,使得允许的范围基于分布的75%即Td1=0.2和Td2=3.3。

    图5:使用真实实验测量的加速度计(距离)和陀螺仪(道路曲率和转角)误差。

  • 2.陀螺仪精度:陀螺仪传感器可用于测量路径的转角和道路曲率。这些数据也可以表示为向量,式中,是装置在x、y和z轴上所经历的角变化率,是一个未知的噪声量。然而,在这种情况下,的影响不如加速计显著,而且测量值更接近实际值。为了计算转动误差,作者将转动误差定义为陀螺仪导出的转动角与实际转动角之间的绝对差。然而,我们对所有手机而不是单个手机的总体错误分布感兴趣。图5b显示了数据集中所有匝数的转角误差分布。该分布重申了陀螺仪比75%的回转误差在5.5°以内的加速度计更精确为了计算曲率误差,回顾一下我们计算两个路段和之间的曲线相似性的技术(方程式(3))。道路曲率已经以陀螺仪数据的形式已知。但是,该曲率必须插值到与相同的长度。给定N个传感器路径的所有K个交叉点的曲线相似集的并集,其中,曲率误差是两条曲线上所有点之间的一组绝对差,即。图5c显示了曲线误差的分布。回想一下,逃逸路径生成器算法分别定义了参数和,以根据转角和曲率过滤连接(第III-C3节)。基于误差分布的75%,我们在评估中将参数设置为=5.5°和=2.8°。

    图6:演示磁强计欺骗潜力的实验装置。

  • 3.磁强计欺骗:作为概念的证明,我们为Google Pixel 2智能手机构建了一个磁强计欺骗器的原型。我们的实验装置如图6a所示,由以下模块组成:(A)一个ESP32微控制器,(B)一个8通道继电器模块,(C)控制电流的电阻器,(D)一个双线圈系统,和(E)一个安装在汽车底座上的Google Pixel 2。我们首先确定了磁强计在手机左上角的确切位置(距手机顶部42毫米,距手机左边缘7毫米)。我们设计并3D打印了一个双线圈系统,如图6b所示,该系统可以连接到手机和允许漆包磁线。我们专注于控制x轴和y轴,因为它们很容易到达。使用两个线圈,每个线圈瞄准一个轴,可以完全控制平面内的磁场。我们使用以下螺线管磁场公式估算强度:

    式中k为相对磁导率,,n为线圈匝数密度,I为电流。我们的线圈匝数密度n是155匝/米,因为我们使用了5层28 AWG漆包磁线。在没有磁芯(k=1)的情况下,我们估计磁场为98uT,电流为5mA,其强度足以冲击磁强计。注意,如果在其他系统中无法使用磁强计,则可以使用较大的线圈或使用相对磁导率较高的材料来引导磁场。当空气的相对渗透率为1时,铁的相对渗透率为5000,氢退火铁的相对渗透率为200000。为了控制每个线圈中的电流,我们使用ESP32微控制器(Heltec WiFi套件32)和足够数量的GPIO/DAC管脚来控制8通道继电器模块,该模块增加了可变电阻,用于电流调谐。spoofer是用Python编写的,它接受一系列方位和持续时间作为输入。它设置线圈中的电流,以触发与输入持续时间匹配的定时匝数。曼哈顿的一个示例路由欺骗如图7所示。

    图7:欺骗磁强计轴承的例子,例如曼哈顿的路线。

二、 评估方法和设置
作者在PyPy中实现了ESCAPE算法。我们使用两台运行2.40GHz英特尔至强CPU、12核、20GB内存的服务器来执行算法并评估其性能,即在给定起点和终点的情况下,攻击者能够逃出多远而未被检测到。

  • 城市选择:我们评估了我们对全球10个主要城市道路网络的攻击效果。在北美、欧洲和亚洲各大洲选择了下列城市进行评估:亚特兰大、波士顿、芝加哥、休斯顿、曼哈顿和旧金山(北美)、北京(亚洲)、伦敦、法兰克福和巴黎(欧洲)。选择的城市代表了城市特征的整个范围,如主要物流和运输枢纽、人口密集、城市规划(如网格状或圆形)等。图8显示了所有选定城市的累积道路曲率和转弯分布。注意,道路曲率是使用公式(1)计算的。我们可以看到,芝加哥和曼哈顿的道路大多是直的和直角转弯,而伦敦和巴黎的道路网络则具有非常独特的特点。

    图8:所选城市的曲率和转弯分布的比较。
  • 生成欺骗和逃逸路线:通过对每个选定城市运行模拟进行评估。该模拟数据由每个城市1000条随机生成的路径组成,使得路径距离在1km到21km之间均匀分布。其目的是评估欺骗的可能性,也作可为生成逃跑路径的函数。模拟路径生成如下:(i)从兴趣区域内的OpenStreetMap中随机选择“家”和“工作”位置;(ii)检索端点的地理坐标;(iii)将坐标作为攻击算法的输入,以计算欺骗和逃逸路径。回想一下,欺骗路径是分配给特定行程的源点和目标点之间的所有可能路径,而逃逸路径是攻击者可以在不被基于GPS/INS的监控系统检测到的情况下到达不同目标的所有路径。“住宅”位置可以选择为OpenStreetMap中的一种方式或节点,其建筑类型为:“公寓”、“住宅”、“住宅”或“平房”。类似地,可以从“商业”或“工业”标签中选择“工作”位置。

三、结果评估
我们使用两个指标来衡量我们的攻击性能:(i)位移(ii)覆盖范围。

  • 到目的地的位移:我们将从预定目的地的位移定义为攻击者在未被检测到的情况下,在选定行程(即给定起点和终点)可以达到的最远距离。对于每个求值路径,都会按照前面的描述生成逃逸和欺骗路径。然后,我们计算攻击者通过逃逸路径到达的目标与实际目标之间的欧几里德距离,例如行程的指定终点。我们将结果显示在图9中。图9b显示了攻击者对所有10个城市中生成的路由的预期或指定目标的偏离。可以观察到,在大多数城市,20%以上的线路允许偏离预定目的地10公里以上。在所有选定的城市中,至少有10%的路线攻击者能够到达距离指定目的地30公里远的点。芝加哥和曼哈顿在选定的城市中表现最差,超过40%的路线允许15公里或以上的位移。这是由于这些城市的道路网中存在着规律性的模式。图9a显示了每个城市特定指定路线长度的最大位移。值得注意的是,在曼哈顿和芝加哥,最大位移与指定的路线距离无关,是由于城市本身的结构造成的。例如,曼哈顿是一个具有网格状结构的狭长地带,因此最大位移在某个点饱和。然而,对于像北京这样的城市,有一些路线允许攻击者在距预定地点40公里的地方进行欺骗。

    图9:从预定目的地的位移和选择评估的每个城市的最大位移。(a)攻击者偏离所有城市中生成路径的预期或指定目标(b)特定路径长度下每个城市的最大位移

  • 逃逸路径的覆盖范围:此评估的目标是确定攻击者逃逸路径覆盖区域的百分比。逃逸路径是由给定源位置和目标位置地理坐标生成的。让A表示攻击者想了解总区域。对于此评估,我们将此区域定义为半径,中心位于Loc(s)的圆,其中r是源和目标之间的欧几里德距离。上述区域可能由水体组成,必须考虑更准确的覆盖范围。让表示兴趣区域内的土地面积。让表示攻击者愿意从逃逸目的地走一小段距离时可以覆盖的区域。值表示逃生路径覆盖面积的百分比。由于兴趣区内的水体位置未知,因此计算该区域并非易事。由于逃生目的地可能人口稠密,许多可能重叠,因此计算也不容易。为了解决这个问题,我们使用蒙特卡罗模拟来估计上述区域。模拟通过在感兴趣区域内生成数百万个均匀分布的点来工作。它有两个独立的计数器:用于计算陆地上的所有点(即任何道路的米范围内),用于计算逃生目的地半径内的所有点(即任何逃生目的地的米范围内)。使用这些计数器,面积可以计算为,其中P是点的总数,面积可以计算为。因此,使用蒙特卡罗模拟的逃逸路径的最终覆盖面积百分比可以表示为。覆盖率是计算的覆盖面积(使用100 m的步行半径)与使用蒙特卡罗模拟计算的土地总面积的比率。
    结果如图10所示。可以观察到,像芝加哥和曼哈顿这样的规则网格型城市,纽约市(曼哈顿)更容易受到攻击。攻击者有可能在未被检测到的情况下覆盖目标陆地面积的60%以上。然而,像伦敦、法兰克福和亚特兰大等更不规则的城市有更多的阻力。必须指出的是,即使在这些最有限的情况下,覆盖区域仍有可能达到目标地理区域的20%。覆盖率随着路线或行程距离的增加而降低,因为随着行程长度的增加,存在唯一路段的概率也随之增加。例如,在20km的距离上,感兴趣的区域是400,覆盖范围是40,这仍然是很重要的。另外,上述计算给出了总覆盖面积的下限。这是因为加速计的距离计算错误使得攻击者能够覆盖更大的距离。例如,在我们的评估中计算的一些逃生路线中,高达82%的最终逃生目的地甚至位于评估使用的兴趣区域之外,平均值约为46%。

    图10:攻击者的覆盖区域:在纽约和芝加哥等城市,攻击者可以覆盖60%以上的目标区域而不被发现

1.4应对策略

一、 部署精确的加速度计和陀螺仪传感器
减轻威胁的一个明显方法是使用高质量的传感器。为了测量传感器噪声对欺骗行为的影响,我们使用较低的传感器噪声阈值对城市进行了模拟。对于这个评估,我们使用25%的误差分布来设置阈值。逃逸路径生成器算法设置了以下阈值:。图11显示了芝加哥和旧金山的模拟结果。这两个城市的许多道路都有很大的可能性实施欺骗攻击。使用上述阈值,我们可以看到允许超过5公里的位移的路线百分比显著减少。然而这种方法有几个局限性。首先,满足上述参数的传感器相当于航空和军用级传感器,它们体积庞大,而且部署成本昂贵(数千美元)。其次,它们消耗大量的功率(5瓦),因此不适合在大多数跟踪应用中使用。另外,攻击者仍然可以通过鲁莽驾驶(如持续切换车道和加速/减速)在传感器中产生噪音。

二、 安全导航路径选择
回想一下,攻击算法在指定的起点和终点之间搜索导航路线,该路径在道路网络的其他部分有较高的可能性找到相似的路径。最后的路径得分用公式(2)计算。生成更容易欺骗的路径的想法是简单地否定这个路径得分,即。这样是将最高得分分配给的道路曲率和转角较小的路径。这些路径不太利于欺骗,因为路径中的曲率或转角更为独特,因此在其他部分中也不太可能。该算法使用与先前算法相同的输入,但设置输出路径的计数,例如,它为给定的源和目标输出它找到的最安全的路径。换言之,应用程序或服务提供商(如物流公司)可以分配“安全导航路线”,这些路线由于独特的道路特性而很难伪造。图11显示了芝加哥和旧金山的初步评估结果。与最初的模拟相比,我们再次发现攻击者在到达备用目的地的可用路由数量上很明显地被限制了。
我们的安全导航路径算法的主要优点是不需要改变现有的GPS/INS硬件跟踪要求。该公司可以简单地选择“安全路径”行驶,而不是为每个跟踪设备部署新的传感器。此外,即使在可能的最佳安全路径中存在某种欺骗的可能性,也可以提前知道逃逸路径,并采取适当的对策来防止它。

图11:对抗的初步结果:我们发现使用更高精度的传感器(昂贵、笨重、高功率)和我们的安全导航路径选择(易于部署)都显著降低了攻击的影响。

1.5算法分析

  • 欺骗路径算法:欺骗路径生成器算法将图形G=(V,E)、源Loc(s)和目标Loc(d)地理坐标以及输出路径的计数作为输入。该算法输出一组按路径得分排序的欺骗路径。算法首先初始化当前路径p和一组访问顶点v(第1行)。它使用攻击者的源s和目标d顶点作为参数来生成poofedpath以递归计算输出路径(第2-4行)。最后,这些路径按分数排序,并将前保存为最后一组欺骗路径(第5行)。在GenerateSpoofedPaths函数中,算法将顶点s添加到当前路径p和访问集v(第7-8行),并在找到目标顶点时将该路径p添加到输出集s(第9-10行)。否则,算法会遍历路径的输出边e,使得(s,e)∈E。在遍历过程中(第12-16行),过滤应用于修剪不太可能出现的边(第13行),评分函数应用于对剩余边进行排序(第14行)。接下来将描述过滤和评分方法。对于每个传出边缘e(第15行),将递归调用GenerateSpoofedPaths函数。请注意,最后,源s顶点从当前路径p中移除,并访问集v以回溯并继续深度优先搜索(第17-18行)。

    算法1.欺骗路径生成算法

  • 逃逸路径算法:给定一个欺骗路径,逃逸路径算法生成一组与欺骗路径具有相似距离、道路曲率和转角的逃逸路径。该算法类似于欺骗路径生成器。主要区别在于,该算法使用前一阶段产生的每个欺骗路径作为输入,并输出一组逃逸路径。此外,转义路径生成器算法使用欺骗路径中的圈数作为参数来生成转义路径(第3-4行),并检查是否已达到所考虑转义路径所需的圈数(第10-12行)。

    算法2.逃逸路径生成算法

2.报告总结

本文评估了基于GPS/INS的道路交通系统跟踪导航的安全保障。在这个程度上,作者设计了一套算法,使得攻击者能够在不发出警报的情况下,甚至在使用INSaided GPS跟踪和导航系统的情况下,获得逃跑路线和可能到达的目的地。作者在全球10多个城市使用真实世界和模拟驾驶轨迹实施并评估了攻击的影响,并表明攻击者有可能躲过侦查,到达距离真实目的地30公里远的地点,在某些情况下,覆盖目标地理区域的60%以上。最后,我们提出的对策不需要任何硬件修改,但可以严重限制攻击者的欺骗能力。

3.全课的总结

通过本学期课程的学习,比较系统全面地了解了Linux操作系统和Windows操作系统的原理和网络架构,也对如今存在的网络安全威胁有了好的认识。本学期的课程主要以实践为主,在老师的带领下,我们一步步培养自学能力,养成了比较好的学习习惯,其中先学理论知识再对所学内容进行实践才能扎实掌握所学内容,这在今后学习中值得借鉴。
之前学过一些网络安全的通识课程,只对一些攻击和防御方法有个感性的认识,这学期学完后不仅仅实际操作了各种各样的攻击,而且还学会了在虚拟机中布置检测工具,对攻击进行防御,例如用WiFi窃取手机账号信息、获取登录窗口的口令、远程植入恶意代码、一步步对攻击行为进行分析等实践让人印象深刻!
学习过程中遇到了许多与理论技术关联不大的小问题,例如一些软件安装不了、在调试环境的时候会出现各种各样的差错等等,都要自己去百度查询问题、一遍一遍的尝试,有时候也挺绝望的,有可能换了很多种方法都做不了,这个过程太需要耐心了!有时候请教别人也能获得很好的思路,做到事半功倍。总的来说,这门课程对我们有一些难度,可能是本科以来花时间最多的一科,我努力做到每一个实践都认真完成,大多数内容还是学的比较透彻,但还是有一些无能为力的地方。虽然过程很艰难,但现在回想一下,自己的自主学习能力得到了提高,在今后碰到科研上的难题,想想网络攻防可能就不算什么了吧,因为只要用心,困难总会被克服!!!

4.课堂建议

总的来说,本课程的内容涵盖面非常广,同学们学习也多多益善,我学完也是蛮有收获的,关于建议的话,主要是课程难度这一块,感觉班里的大多数同学网络操作地比较少,每一个实践都比较困难,例如在对攻击分析的那些章节,可能原理看懂了,但是实际去分析完全是另外一回事。建议可以把课后题压缩一些,专门针对几道题学习分析可能效果会更好。还有就是布置的课后练习题,建议上课前就发下来,如果有什么问题在课上也可以一起讨论讨论。

参考资料

posted @ 2020-06-29 23:32  dky张森民  阅读(346)  评论(0编辑  收藏  举报