系列|OWASP IoTGoat固件漏洞挖掘 01

  • A+
所属分类:逆向工程


本章主要介绍,IoTGoat靶场的搭建以及测试工具的准备。



1.  介绍

OWASP 开源的一款 IoT 基于Openwrt的固件,集成了多个漏洞。



2.  环境搭建

2.1  克隆项目
$ git clone https://github.com/OWASP/IoTGoat.git
$ cd IoTGoat/OpenWrt/openwrt-18.06.2/
$ ./scripts/feeds update -a
$ ./scripts/feeds install -a


2.2  配置Openwrt

  • 设置架构 x86_64(自己编译需要选择pcnet驱动和无线网络驱动选项)

系列|OWASP IoTGoat固件漏洞挖掘 01

  • 设置生成vmdk(可供调试)

系列|OWASP IoTGoat固件漏洞挖掘 01


2.3   编译


$ make -j1 V=s
  • 报错

    系列|OWASP IoTGoat固件漏洞挖掘 01



修改int-ll64.sh
__extension__ typedef unsigned long long __u64;
修改之后
__extension__ typedef unsigned long __u64;
find-utils编译总是错误,猜测是系统版本过高,导致头文件引用出现问题
使用ubuntu 16.04 lts版本进行重新编译

2.4 文件生成


系列|OWASP IoTGoat固件漏洞挖掘 01

这边官方提供realse版本,我们采用官方提供的版本。




3.  虚拟机创建

3.1 创建一个新的虚拟机


系列|OWASP IoTGoat固件漏洞挖掘 01


3.2 选择使用现有的虚拟磁盘


系列|OWASP IoTGoat固件漏洞挖掘 01

3.3 运行虚拟机


系列|OWASP IoTGoat固件漏洞挖掘 01


4.  工具准备

4.1 密码破解

john密码破解工具(https://www.openwall.com/john/)

编译
# 进入src目录
$ cd src
$ ./configure 
$ make -s clean && make -sj4 V=s
运行
# 进入run目录
$ ./john

系列|OWASP IoTGoat固件漏洞挖掘 01


常用的密码字典项目
$ git clone git://github.com/danielmiessler/SecLists.git
该项目存储常见的密码字典
系列|OWASP IoTGoat固件漏洞挖掘 01

4.2 Hydra工具

hydra 是一个支持众多协议的爆破工具。
安装
$ apt-get install hydra -y
运行
系列|OWASP IoTGoat固件漏洞挖掘 01


4.3 Upnp Client工具

Miranda -- The interactive UPnP client
下载地址https://github.com/isaacfife/miranda.git
安装
$ git clone https://github.com/isaacfife/miranda.git
$ cd miranda
$ sudo python setup.py install
运行
$ miranda
系列|OWASP IoTGoat固件漏洞挖掘 01

5.  漏洞挖掘思路

本次IoTGoat漏洞挖掘,主要根据OWASP TOP10,来进行该固件的漏洞挖掘。

系列|OWASP IoTGoat固件漏洞挖掘 01

总结

    本篇系列文章,主要从漏洞环境搭建、工具准备、漏洞挖掘三个方面入手。对物联网设备漏洞挖掘过程有一个清晰的认识,接下来的几篇系列文章,也将从不同的角度,去发现未知的固件漏洞。


系列|OWASP IoTGoat固件漏洞挖掘 01

如果您有意向加入我们,请留言: ),
或邮件投递简历:[email protected]

本文始发于微信公众号(山石网科安全技术研究院):系列|OWASP IoTGoat固件漏洞挖掘 01

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: