0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

物联网IoT的自动化渗透测试

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 作者:黄工的嵌入式技术 2020-01-17 16:47 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

今天收到了两套南京厚德物联网(熊总)寄过来的物联网开发板EVB_MX和小熊派BearPi

EVB_MX+是针对腾讯的TencentOS-tiny物联网操作系统,小熊派BearPi是针对华为的LiteOS物联网操作系统。

物联网(IoT)是新兴技术,是对传统Internet的扩展,它使所有带有射频识别(RFID),传感器或GPS等功能的物体相互连通。

IoT安全问题频发,但是从攻击者的角度来看,用来评估物联网安全性的方法却很少。到目前为止,渗透测试已广泛应用于评估传统的Internet或系统安全性,但通常需要花费大量成本和时间。

下面,我们针对物联网的安全问题,提出一种基于BDI模型的渗透测试方法及其自动化,以评估物联网的安全性。

1 什么是IoT?

物联网(IoT)是1999年由麻省理工学院(MIT)提出;这段特殊的时期预示着重要的新一代信息技术的出现。物联网被认为是交易的延伸附加互联网,便于信息通信传递。具有识别位置,跟踪信息,监视射频识别的数据管理(RFID),传感器或GPS等功能。

根据现有的文献,物联网结构包括三层:应用层,网络层和感知层。

应用层为用户提供在不同的场景中的服务。

网络层负责信息的传输和处理。

感知层收集信息并识别对象。(包括各种硬件终端例如RFID,传感器,GPS等)

目前,物联网的使用技术已应用于各种领域,例如智能网格,智能交通,智慧城市,智能家居,智能医疗保健,体育锻炼和智能建筑。然而,由于安全事件不断频发,引起业界的广泛关注,特别是安全方面。

渗透测试是常见提高安全能力方法之一,通过模拟真实攻击来保障安全性。根据PTES(渗透测试执行标准),渗透测试的过程包括交互,信息收集建模,Vul-可行性分析,开发,后期开发等。渗透测试旨在提高系统的安全性,而不是为了破坏,不会影响目标系统的可用性。

越来越多的公司和组织开始利用此方法来识别和解决系统中潜在的漏洞,以防止在未来出现重大纰漏。但是,大部分IoT安全研究都侧重于分析,防御或攻击特定设备。

虽然渗透测试是一种非常受欢迎的方法,但是该过程需要花费大量的费用和时间。但是,渗透测试自动化可以科学的提高效率。

2 物联网的安全性

与传统互联网相比,物联网具有特殊的特征,三层结构会导致更多的漏洞出现。在物联网的三层结构中,每一层都有特定的安全性问题,其中一些类似于传统网络。本节分析每个人的安全性问题层。

A. 感知层安全

感知层,也称为识别层或物理层,是从现实世界中收集信息,通过RFID将这些信息集成到数字世界中(比如:传感器,GPS和其他硬件设备)。感知层中的节点一般是低功率,计算能力受限,低存储空间和重复使用。

所以,感知层并没有采用传统的信息安全解决方案。从每个感知层网络到节点,特定的安全问题会导致更多漏洞和攻击面出现。例如,节点是容易遭到窃听,欺骗,克隆,killing,干扰和屏蔽攻击等。

B. 网络层安全

网络层负责传输应用层和感知层之间的信息。网络层是各种网络架构的组合,包括互联网,移动通信网络,卫星,GSM网络,GPRS,3G,4G,WIFI网络等。

这些网络的安全性问题与传统的相似,容易受到DDoS、中间人、数据篡改、数据重放和信号干扰等攻击。此外,混合不同的网络架构也可能带来新的安全问题。

C. 应用层安全

应用层为用户提供了多种服务,例如:智能电网,智能交通,智慧城市,智能家居,智能医疗保健和智能建筑等。物联网可以通过各种平台访问,用户可以通过在不同平台上的应用程序来实现相应的功能。例如:计算机,移动设备或智能硬件设备。

应用层(与其他层类似)的安全风险取决于物联网场景的攻击漏洞(例如攻击缓冲区溢出,SQL注入,XSS,密码攻击和社会工程攻击)。

3 PENETRATION测试

基于已建立的物联网特定安全问题研究和OWASP的物联网攻击项目,我们能够分析出,传统物联网渗透测试与当前物联网渗透测试的区别在于感知层。

我们将物联网渗透测试的过程分为四个阶段:

1)信息搜集

2)分析

3)开发

4)报告

图1 物联网渗透测试流程

A.信息收集

初始阶段的信息收集是一个关键步骤,通过探测所有三个物联网结构层(感知、网络和应用)的信息来确定渗透测试的成功。

1) 感知层:在感知层,收集有关物理环境的各种信息,比如节点的位置、节点的类型、节点的范围、类型连接方式、通信协议类型、拓扑结构节点、节点操作系统的类型、节点的电源、安全机制、节点漏洞和传播协议漏洞等。

工具示例包括:

• Hardware Bridge API:用于物联网渗透测试。

• Nmap:开源免费工具,扫描网上电脑开放的网络连接端。

• Openvas:开放式漏洞评估系统,也可以说它是一个包含着相关工具的网络扫描器。

• Nessus:目前全世界最多人使用的系统漏洞扫描与分析软件。

2) 网络层:在网络层,利用网络攻击工具(如著名的wirelessatck套件、aircack)采集与传统渗透测试类似的网络类型、连接类型、安全机制、通信类型和传输协议漏洞等信息是非常关键的。

3) 应用层:尽管物联网被广泛用于 各种应用场景,应用层信息收集类似于传统的信息收集。它是对于收集有关操作系统类型,端口,服务信息,访问控制类型,配置Nmap提供的信息和漏洞信息,vas,Nessus等等。

4) 社会工程信息:用来改善渗透测试性能,社会工程学信息也需要收集。例如,DNS信息,电子邮件列表,应用程序信息等。Dnsenum和Fierce以收集DNS信息而闻名,我们可以通过Harvester收集电子邮件列表。

B.分析

在分析阶段,必须对目标的相关信息进行组织、分析,随后识别出目标的攻击路径,并尝试获得目标的访问权限,通常需要对实验环境进行有效性检查。

C.开发

在此阶段,将把分析阶段已经分析出来的可行的攻击路径和规划进行真正的攻击。在渗透测试期间,将禁止DDoS攻击,以确保目标的可用性。

1)感知层:感知层物联网节点的特性决定了对感知层的攻击的方法,是传统物联网渗透测试与传统物联网渗透测试不同的原因。特定攻击可由硬件桥接API或IoTseeker形成,包括:

• 略读:非法读取节点信息。

• 窃听:嗅探节点之间的信息路由器。

• 欺骗:生成伪造的节点数据。

• 克隆:克隆伪节点。

• 杀死:窃取并破坏节点。

• 缓冲区溢出w攻击节点。

• 节点上的访问控制攻击:IoTseeker打破了IoT设备的默认密码。

2) 网络层:网络层上的攻击,包括网络流量嗅探器,信号重放,信号伪造,并在不同的网络通信中劫持信号WIFI,3G,4G,GSM,蓝牙和通过无线攻击Aircrack-ng等。攻击的内容如下:

• 网络流量嗅探器:sniffer之间的信息网络。

• 信号重放:重放信息以进行攻击目标。

• 假信号:生成信息来进行攻击目标。

• 信号劫持:干扰目标网络并强制将目标节点连接到可控制的伪造网络上。

3) 应用层:对应用层的攻击与传统的渗透测试非常相似,包括Web应用程序攻击,软件缓冲区溢出攻击,密码攻击等。使用的工具有:

• Metasploit:最受好评的渗透测试框架包括成千上万的漏洞利用加载。

• W3af:Web应用程序攻击框架。

• John the Ripper:密码破解。

4)社会工程攻击:社会工程攻击是指针对那些缺乏安全意识的普通民众。假如,员工可以通过向它们启用对目标的访问特权并进一步的进行渗透测试。执行此类攻击的能力需要Setoolkit,它是渗透测试领域最著名的工具,由社会工程攻击工具组成。

D.报告

一个成功的渗透测试模拟会发现漏洞,其中的细节将被处理,并随后向目标所有者报告,以提高未来的安全性。

通过模拟渗透测试的流程,我们会从中发现某系统或应用平台的漏洞。通过对流程中的信息进行分析评估总结,形成最终的测试报告,以提高系统的安全性能。

4 BDI模型的自动化

渗透测试的成功需要一套完整的目标和计划。为了实现自动化,BDI是解决这一问题的理想模型,因为它能够在渗透测试中通过感知和动作与目标进行交互。

我们可以使用BDI模型为物联网渗透测试进行建模。BDI模型描述了在渗透测试期间如何选择与目标信息相关的操作,此过程分为三个逻辑成分:信念、愿望和意图。我们的模型遵循Jason解释器,这个模型是基于过程推理系统(PRS)。

BDI代理定义为“元组”< Ag,B,D,I,P,A,S >

• Ag是代理名称;

• B是一个信念集,代表有关目标,并在执行操作后将其更新;

• D是一个愿望集,代表所有选项或可能的渗透测试候选计划代理商

• I是一个意图集,代表代理商的目标或代理商决定执行的计划。

• P是一个计划集,由可用计划组成,每个计划提供有关如何达到的信息ve的目标。

• A是一个操作集,其中包括可以执行的代理操作。

• S是一个感知集,它存储了来自环境的各种信息。

BDI代理的推理周期如图2所示:

图2 BDI代理推理循环

5 验证

我们通过仿真对物联网进行自动化渗透测试实验

我们的模型运行在具有2.3 GHz,I5 CPU和8GB的RAM的PC上。如图3所示,

图3 BDI代理与物联网的相互作用

模拟实验代表BDI代理和三层物联网在Jason中使用内部沟通动作,来模拟BDI模型与物联网。我们的模型是在AgentSpeak Jason中实现的,这是一种多代理系统编程语言。

A. 物联网目标

我们将物联网目标信息预先定义为三层,包括服务和相应的漏洞能力,如表1所示:

该信息存储在信念集中,三个物联网结构层的仿真需要创建4个代理,分别表示应用层和网络层,以及感知层中的两个节点。

网络层负责应用层和感知层之间的信息传输此外,为了使场景不确定,我们使用随机数来确定攻击的结果。

B. BDI代理

在BDI代理中,特权的默认值是none,初始目标是应用层中的root特权或控制IoT。我们在前一节描述的物联网渗透测试的基础上,预先定义了对三层代理进行信息和攻击的探测计划,例如,BDI代理可以探测操作系统类型、端口、服务、漏洞信息和网络类型,还可以执行密码攻击、嗅探攻击,重放攻击和缓冲溢出攻击。模拟实验是由Jason的内部动作完成的

Jason代码如下所示:

+!probe information: true<−.send(agent name, askAll, information type(value)).

+!attack action: true<−.send(agent name, tell, attack action)

C.模拟

通过对应用层的失败攻击和对网络层和感知层的成功攻击,说明了传统物联网渗透测试系统与当前物联网渗透测试系统的不同。成功获得了操作系统类型、端口、服务、网络类型、网络安全和漏洞三个层次的基本信息。

图4显示了BDI模型对物联网进行渗透测试的过程,如图所示:

图4 BDI代理的物联网渗透测试流程

此外,BDI代理成功地破解了SSH password,并获得了用户权限。

由于随机性较低,无法执行本地缓冲区溢出攻击以获取根权限。由于对每一层之间的信息传输缺乏安全保护,BDI代理成功地执行了Sniffertack。

可以获得有关光传感器和光控制指令的必要信息,BDI代理收集并存储在信念集中的信息如图5所示:

图5 BDI代理的信念集

图6显示了信息在网络层传输的过程:

图6信息在网络层传输过程

“turn on the light”命令和光传感器信息在应用程序和网络层之间传输,显示在网络层的信念集中。感知层的基本信息和值包含在图7所示的应用层代理的信念集中:

图7 应用层代理的信念集

我们假设光传感器的值是40。在感知层,两个代理分别代表光和光传感器,我们的BDI代理可以根据光传感器信息和光控制指令执行重放攻击,如图8、图9:

图8 节点1的信念集

图9 节点2的信念集

6 结论

在本文中,我们首先介绍了物联网的概念和渗透测试。其次,我们讨论了安全性物联网的概念,并描述了其安全功能。我们提出了一种方法来执行渗透测试物联网,引入了特殊的专用tools。然后,进行效率上的改善。

我们使用BDI模型来实现其自动化,最后,我们通过模拟实验来验证我们的工作。在未来的研究中,我们将扩展模型进行更多操作并在实际环境中进行实验。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2577

    文章

    55485

    浏览量

    793861
  • 物联网
    +关注

    关注

    2950

    文章

    48121

    浏览量

    418281
  • 自动化
    +关注

    关注

    31

    文章

    5982

    浏览量

    90641
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    通用自动化测试系统:FCT、ATE、ICT、PCBA功能测试

    在现代制造业中,自动化测试已经成为提高生产效率、降低错误率、提升产品质量的关键环节。尤其是在电子产品的测试过程中,FCT(功能测试)、ATE(自动测
    发表于 04-13 14:54

    电测行业中都有哪些射频器件自动化测试软件?

    在5G通信、卫星互联网、汽车雷达等应用驱动下,射频器件的测试复杂度呈指数级增长。传统手动测试模式不仅效率低下,更难以保证多批次产品的一致性。自动化
    的头像 发表于 03-31 17:44 1317次阅读
    电测行业中都有哪些射频器件<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>软件?

    ATE测试是什么?电源企业为什么必须上自动化测试

    在电源行业快速发展的年代,产品质量、生产效率与成本控制成为企业竞争的关键。很多电源厂家都在关注ATE 测试,但不少人仍不清楚 ATE测试是什么,也不明白自动化测试对于电源生产的重要意义
    的头像 发表于 03-24 14:37 317次阅读
    ATE<b class='flag-5'>测试</b>是什么?电源企业为什么必须上<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>?

    自动化测试的「千里眼」:当RTSM远程控制遇上自动化测试效率直接拉满!

    自动化痛点】自动化测试的“黑箱困境”:你真的敢说“完全放心”? 凌晨2点,测试工程师小李盯着电脑屏幕上的自动化脚本进度条——第17步卡住了
    的头像 发表于 12-11 11:26 486次阅读
    <b class='flag-5'>自动化</b><b class='flag-5'>测试</b>的「千里眼」:当RTSM远程控制遇上<b class='flag-5'>自动化</b>,<b class='flag-5'>测试</b>效率直接拉满!

    CI/CT自动化测试解决方案

    北汇信息可以提供Jenkins、Gitlab Runner CI和自研平台等的CI/CT整体解决方案,通过CI/CT自动化测试执行、测试策略定制、测试任务
    的头像 发表于 11-12 16:01 1597次阅读
    CI/CT<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>解决方案

    测试小白3分钟上手,零代码自动化测试平台,15分钟搭建自动化测试方案

    还在为不懂代码、搭建测试方案耗时久而发愁?ATECLOUD 零代码自动化测试平台,专为自动化测试量身打造,小白3 分钟就能轻松上手,15 分
    的头像 发表于 09-22 17:52 1006次阅读
    <b class='flag-5'>测试</b>小白3分钟上手,零代码<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>平台,15分钟搭建<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>方案

    智慧灌溉泵房远程监控联网系统解决方案

    智慧灌溉泵房通过联网IoT)技术,实现设备远程监控、数据智能分析、自动化调度
    的头像 发表于 09-10 11:58 779次阅读

    电源模块的短路保护如何通过自动化测试软件完成测试

    在当今电力电子领域,电源模块的可靠性至关重要,短路保护作为其关键特性,需通过精确的自动化测试软件进行验证。本文将整理如何借助自动化测试软件ATECLOUD完成电源模块短路保护的
    的头像 发表于 09-03 19:10 1006次阅读
    电源模块的短路保护如何通过<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>软件完成<b class='flag-5'>测试</b>

    从设备联动到数据驱动:IoT联网管理平台的核心应用场景

    当田间的传感器自动触发灌溉,当城市的路灯随车流调节亮度,当工厂的设备提前预警故障——这些看似独立的智能场景,背后都依赖于同一个核心支撑:IoT联网管理平台。作为连接设备、数据与应用的
    的头像 发表于 08-04 18:05 1170次阅读

    除了LabVIEW还有哪些自动化测试的软件?

    NI 开发的 LabVIEW 软件在工业控制领域中一直占有举足轻重的地位,其市场占有率在一众平台中也是领先的,那么除了 LabVIEW 拿有哪些自动化测试的软件?本文将介绍一些自动化测试
    的头像 发表于 07-30 17:18 1234次阅读
    除了LabVIEW还有哪些<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>的软件?

    自动化测试平台中TestCenter和ATECLOUD有哪些差异?

    TestCenter和ATECLOUD虽然都是自动化测试平台,但两者在试用领域、技术架构、功能特性等方面具有很大的差异性,两者的面向客户也有所不同。本文将简单分析两个平台的特点和差异
    的头像 发表于 07-25 09:54 870次阅读
    <b class='flag-5'>自动化</b><b class='flag-5'>测试</b>平台中TestCenter和ATECLOUD有哪些差异?

    自动化测试平台ATECLOUD推出AI算法功能

    作为纳米软件自主研发的自动化测试平台,ATECLOUD 始终致力于为用户提供高效优质的测试解决方案。面对5G、AI等前沿技术的迭代发展,平台深度融合新技术持续升级测试能力,最新推出的A
    的头像 发表于 07-22 16:10 994次阅读
    <b class='flag-5'>自动化</b><b class='flag-5'>测试</b>平台ATECLOUD推出AI算法功能

    联网的应用范围有哪些?

    在运输车辆上安装传感器,能实时监控车辆位置、行驶速度、油耗等,提高运输效率,降低物流成本。比如京东的智能仓储物流系统,利用联网实现了货物的自动化管理与高效配送。 交通领域:智能交通是
    发表于 06-16 16:01

    UTP系统通过ModBus协议对温度传感器的自动化测试介绍

    一、UTP系统简介 宏控UTP协同自动化测试系统(简称UTP测试系统)是一款通用的自动化测试系统,支持对总线通信(如串口、CAN、以太网等)
    的头像 发表于 06-07 15:12 976次阅读
    UTP系统通过ModBus协议对温度传感器的<b class='flag-5'>自动化</b><b class='flag-5'>测试</b>介绍

    联网工程师为什么要学Linux?

    提升开发效率。 2)实时性与安全性 Linux通过实时补丁(如PREEMPT-RT)可满足工业自动化等场景的实时需求,同时其权限管理、加密机制为设备数据安全提供保障。例如,医疗设备的健康数据采集需
    发表于 05-26 10:32