产品战略专家梁宁确认出席AICon北京站,分享AI时代下的商业逻辑与产品需求 了解详情
写点什么

物联网渗透测试(四):IoT 渗透测试环境的部署

  • 2020-05-12
  • 本文字数:2650 字

    阅读完需:约 9 分钟

物联网渗透测试(四):IoT 渗透测试环境的部署

编者按:本文节选自华章网络空间安全技术丛书《物联网渗透测试》一书中的部分章节。

IoT 渗透测试环境的部署

介绍完了 IoT 技术的所有基础概念,下面我们开始着手搭建 IoT 渗透测试环境。由于 IoT 设备用到了多种技术,因此在对软硬件开展渗透测试时会用到多款工具。其中既包括需要花钱采购的商用工具,也包括免费工具。为了不影响测试,部分硬件和无线电分析工具需要提前采购。尽管 Web 应用代理工具的许可费用并不高,但是在这里我们还是尽可能地选择花费不多的工具,如果有免费工具的话则尽可能使用免费工具。

软件工具要求

软件工具主要包括固件、Web 应用以及移动应用测试工具。对于这三种类型的测试工具而言,除了用于 Web 测试的 Burp Suite 之外,大多数测试工具都是免费的。为了方便应用,建议最好提前部署好虚拟环境,并将固件分析、Web 应用测试、移动应用测试(测试内容有限)以及无线电分析过程需要用到的大多数工具安装好。本节中,我们将所有可能用到的工具进行了汇总。


  1. 固件分析工具


幸运的是,大多数固件分析工具都是免费并且开源的。有些工具会自动更新,而另一些工具虽然已经长期没有更新,但仍然可以用于测试。读者可以使用下面列出的固件工具来分析固件镜像、提取镜像以及在运行时附加到固件进程中以方便调试:


  • Binwalk

  • Firmadyne

  • Firmwalker

  • Angr

  • firmware-mod-toolkit

  • Firmware Analysis Toolkit

  • GDB

  • Radare2

  • Binary Analysis Tool(BAT)

  • Qemu

  • IDA Pro(可选)


  1. Web 应用渗透测试工具


Web 应用渗透测试的常见工具主要包括 Burp Suite 和 OWASP ZAP。Burp Suite 有免费版和专业版之分,专业版的价格也不算离谱。而 ZAP 则是完全免费并且开源的,在需要控制成本的情况下,ZAP 不失为一种比较好的选择。在对 Web 服务和 API 进行测试时,还可以加载插件。但是,如果要安装 Burp Suite 的插件,则需要先购买专业版。这里列出的所有工具都是跨平台的,它们要么是基于 Java 开发的,要么可以内置在浏览器中:


  • Burp Suite

  • OWASP Zed Attack Proxy(ZAP)

  • REST Easy Firefox Plugin

  • Postman Chrome Extension


  1. 移动应用渗透测试工具


同固件分析工具一样,大多数移动应用安全工具也都是免费并且开源的。根据下面所列出的移动平台可以对移动应用渗透测试工具进行分类。


(1)Android


在撰写这本书的时候,网上已经有很多 Android 渗透测试工具和虚拟机了。有些工具完全侧重于 APK 代码的静态分析,还有些工具则侧重于应用运行时的动态分析。已发行的大多数 Android 渗透测试虚拟机都是免费的,其中包含了测试 Android SDK 等 Android 应用所需要的工具。虽然我们列出了一些 Android 渗透测试工具,但是依然建议读者下载与自己的测试需求最为契合的 Android 渗透测试虚拟机,并在虚拟机中安装其他用到的渗透测试工具。


在这里,虽然没有明确要求 Android 测试工具同本机相互隔离,但是为了确保移动应用测试环境更加稳定,并避免出现文件依赖问题,我们还是建议读者将 Android 测试环境同本机隔离起来。


发行版 Android 渗透测试虚拟机:Android SDK、Android Emulator


  • Enjarify

  • JD-Gui

  • Mob-SF

  • SQLite Browser

  • Burp Suite

  • OWASP ZAP


(2)iOS


由于 iOS 平台比较特殊,因此在开始渗透测试前需要准备好 OS X 计算机和已越狱的苹果设备。如果不满足这两个前提条件,那么是无法对 iOS 应用开展渗透测试的。下面是对 iOS 应用进行渗透测试时用到的部分工具。


下面列出的是需要在 OS X 计算机上安装的 iOS 应用渗透测试工具和安全评估工具:


  • idb

  • Xcode Tools

  • Class-Dump

  • Hopper(可选)

  • Mob-SF

  • SQLite Browser

  • Burp Suite

  • OWASP ZAP


下面列出的是为开展渗透测试需要安装在越狱设备上的软件:


  • Cydia

  • openURL

  • dumpdecrypted

  • ipainstaller

  • SSL Kill Switch 2

  • Clutch2

  • Cycript

硬件分析工具需求

根据所分析设备的不同,硬件分析工具也有所不同。然而,有一些基本的分析工具对于所有硬件甚至是电气元件都是适用的。设备商在制造设备时会使用不同型号的螺丝、外壳和保密位以防止用户拆解硬件。有时,螺丝会隐藏在标签或橡胶垫下,分析人员需要撕开标签或者揭开橡胶垫才能找到封装设备的螺丝。在硬件拆解过程中,确定螺丝型号至关重要。只有确定了螺丝型号,我们才能够借助专用工具拆解设备,绕过厂商设置的阻碍。图 1 可以帮助测试人员区分出螺丝类型。


下面列出了本书中将要用到的硬件工具和硬件分析软件。


  1. 硬件工具


开始硬件测试前需要提前购买一些硬件工具。以下是拆解设备、查找接地引脚以及访问设备接口所需要的工具:


  • 万用表



图片来源:http://www.instructables.com/id/When-a-Phillips-is-not-a-Phillips/


  • 用于硬件拆解的 IFixit classic pro tech toolkit 工具套装

  • Bus Pirate

  • USB 转串口转接器:Shikra、FTDI FT232、CP2102、PL2303、Adafruit FTDI Friend

  • JTAG 接口转接器:Shikra、JTAGulator、Arduino with JTAGenum、JLINK、Bus Blaster

  • 逻辑分析仪(可选):Saleae Logic 等


读者可以访问以下链接了解更多的信息:



  1. 硬件分析工具


下面列出的都是免费的硬件分析工具。这些工具能够帮助读者连接 Console 口等硬件接口,或者将固件以 side-loading 方式刷入设备:


  • OpenOCD

  • Spiflash

  • Minicom

  • Baudrate

无线电分析工具需求

为了嗅探无线网络流量,需要准备特定的无线芯片组。在本书中我们将主要关注 ZigBee 和 Z-Wave 协议流量的嗅探。在无线网络流量嗅探过程中,部分特定软件需要配合无线网卡与软件狗进行使用。无线网卡和分析软件的使用建议如下。


  1. 无线电分析硬件


下面列出了用于分析无线电频谱的硬件设备:


  • Atmel RZ Raven USB 设备(KillerBee 攻击框架)

  • Attify Badge1(或者 C232HM-DDHSL-0 线缆同 Adafruit FTDI Breakout 开发板的搭配)

  • HackRF One

  • Yardstick One

  • 带有 Xbee Shield 模块的 XBee 扩展板

  • Ubertooth

  • BLe 适配器


1 Attify Badge 是 Attify 公司出品的一款硬件设备,用户使用该设备可以同多种硬件接口进行交互,包括 UART、SPI、I2C、JTAG 以及 GPIO 等。—译者注


  1. 无线电分析软件


下面列出了常用的无线电分析软件工具,列出的大部分工具在本书中都会用到。


  • KillerBee 框架

  • Attify ZigBee 框架

  • GNU Radio

  • BLEAH

  • GQRX

  • Ubertooth tools

  • Blue Hydra

  • RTL-sdr

  • Hackrf packages

  • EZ-Wave


图书简介https://item.jd.com/12623610.html



相关阅读


物联网渗透测试(一):简介


物联网渗透测试(二):IoT 中的 Web 应用


物联网渗透测试(三):IoT 中的 移动应用


2020-05-12 10:001967

评论

发布
暂无评论
发现更多内容

系统性能典型案例分析:高性能队列Disruptor,一文深入理解(1)

Java 程序员 后端

线上环境大规模RocketMQ集群不停机优雅升级实践,面试字节跳动Java工程师该怎么准备

Java 程序员 后端

网络编程六-网络编程相关面试题汇总,nginx运行原理

Java 程序员 后端

老板,运维和开发又打起来了!,你连基础的JVM运行时内存布局都忘了

Java 程序员 后端

老生常谈:MySQL高可用,java泛型原理

Java 程序员 后端

精雕细琢!阿里大师53天悉心打磨出来的MyBatis+设计模式架构指南

Java 程序员 后端

系统性能典型案例分析:高性能队列Disruptor,一文深入理解

Java 程序员 后端

聊聊MySQL主从复制的几种复制方式,上岸蚂蚁金服

Java 程序员 后端

系统性能百倍提升典型案例分析:高性能队列Disruptor,linux服务器架构师

Java 程序员 后端

精通springcloud:服务发现,Eureka API,java技术上难以解决的问题

Java 程序员 后端

终于彻底搞清楚了 MySQL spin-lock 之一次CPU问题定位过程总结

Java 程序员 后端

绝了!你一直想要的数据库界的里程碑,Alibaba技术官内部私藏MySQL笔记

Java 程序员 后端

网络协议从入门到底层原理(11)网络爬虫,线程池底层实现原理

Java 程序员 后端

老夫面试两个月真实经历:面试了20家大厂之后,发现这样介绍项目经验

Java 程序员 后端

系统性能百倍提升典型案例分析:高性能队列Disruptor(1)

Java 程序员 后端

缓存穿透及解决方案(干货篇),java基础入门第二版第二章答案

Java 程序员 后端

网络协议从入门到底层原理(5)传输层,java编程项目实例教程

Java 程序员 后端

老面试官问我:LRU 和 Innodb Buffer Pool 有什么关系?

Java 程序员 后端

终于彻底搞清楚了 MySQL spin-lock 之一次CPU问题定位过程总结(1)

Java 程序员 后端

[ CloudWeGo 微服务实践 - 04 ] 尝试操作数据(1)

baiyutang

golang 微服务 10月月更

聊聊RabbitMQ RabbitMQ相关面试题,kafka入门教程步骤

Java 程序员 后端

聊聊多线程(四)线程安全之AtomicInteger类,最全面试考点与面试技巧

Java 程序员 后端

终于等到了!十位Java架构师整理的“阿里P7,看完老板哭着让我留下来

Java 程序员 后端

绝杀!3位阿里大牛发布这份800页MySQL性能优化法则笔记

Java 程序员 后端

网页制作工具之------Dreamweaver界面,springmvc教程下载

Java 程序员 后端

老大让我优化数据库,我上来就分库分表,他过来就是一jio

Java 程序员 后端

聊聊MyBatis的历史,mysql原理详解

Java 程序员 后端

网关性能大PK,Spring Cloud Gateway让人大失所望!,java教程pdf百度云下载

Java 程序员 后端

美团二面:聊聊线程池设计与原理,由表及里趣味解析,linux操作系统实用教程课后答案

Java 程序员 后端

群晖DS218+做maven私服(nexus3),mysql性能调优

Java 程序员 后端

聊聊多线程(一)线程的基础,linux集群架构师

Java 程序员 后端

物联网渗透测试(四):IoT 渗透测试环境的部署_安全_亚伦·古兹曼,阿迪蒂亚·古普塔_InfoQ精选文章