编者按:本文节选自华章网络空间安全技术丛书《物联网渗透测试》一书中的部分章节。
IoT 渗透测试环境的部署
介绍完了 IoT 技术的所有基础概念,下面我们开始着手搭建 IoT 渗透测试环境。由于 IoT 设备用到了多种技术,因此在对软硬件开展渗透测试时会用到多款工具。其中既包括需要花钱采购的商用工具,也包括免费工具。为了不影响测试,部分硬件和无线电分析工具需要提前采购。尽管 Web 应用代理工具的许可费用并不高,但是在这里我们还是尽可能地选择花费不多的工具,如果有免费工具的话则尽可能使用免费工具。
软件工具要求
软件工具主要包括固件、Web 应用以及移动应用测试工具。对于这三种类型的测试工具而言,除了用于 Web 测试的 Burp Suite 之外,大多数测试工具都是免费的。为了方便应用,建议最好提前部署好虚拟环境,并将固件分析、Web 应用测试、移动应用测试(测试内容有限)以及无线电分析过程需要用到的大多数工具安装好。本节中,我们将所有可能用到的工具进行了汇总。
固件分析工具
幸运的是,大多数固件分析工具都是免费并且开源的。有些工具会自动更新,而另一些工具虽然已经长期没有更新,但仍然可以用于测试。读者可以使用下面列出的固件工具来分析固件镜像、提取镜像以及在运行时附加到固件进程中以方便调试:
Binwalk
Firmadyne
Firmwalker
Angr
firmware-mod-toolkit
Firmware Analysis Toolkit
GDB
Radare2
Binary Analysis Tool(BAT)
Qemu
IDA Pro(可选)
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)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 可以帮助测试人员区分出螺丝类型。
下面列出了本书中将要用到的硬件工具和硬件分析软件。
硬件工具
开始硬件测试前需要提前购买一些硬件工具。以下是拆解设备、查找接地引脚以及访问设备接口所需要的工具:
万用表
图片来源: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 等
读者可以访问以下链接了解更多的信息:
硬件分析工具
下面列出的都是免费的硬件分析工具。这些工具能够帮助读者连接 Console 口等硬件接口,或者将固件以 side-loading 方式刷入设备:
OpenOCD
Spiflash
Minicom
Baudrate
无线电分析工具需求
为了嗅探无线网络流量,需要准备特定的无线芯片组。在本书中我们将主要关注 ZigBee 和 Z-Wave 协议流量的嗅探。在无线网络流量嗅探过程中,部分特定软件需要配合无线网卡与软件狗进行使用。无线网卡和分析软件的使用建议如下。
无线电分析硬件
下面列出了用于分析无线电频谱的硬件设备:
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 等。—译者注
无线电分析软件
下面列出了常用的无线电分析软件工具,列出的大部分工具在本书中都会用到。
KillerBee 框架
Attify ZigBee 框架
GNU Radio
BLEAH
GQRX
Ubertooth tools
Blue Hydra
RTL-sdr
Hackrf packages
EZ-Wave
图书简介:https://item.jd.com/12623610.html
相关阅读
评论