缘 起
-
在电脑上建立热点使用电脑无线网卡建立 WIFI 供 IOT 设备链接,电脑以有线方式链接至路由器;
将无线网卡桥接到有线网卡,确保联网;
在电脑上用 Wireshark 对无线网卡进行抓包;
-
在路由器上抓包:需要是基于 linux 的路由器,能装上 tcpdump ,软路由就符合条件。使用软路由无线网卡建立 WIFI 供 IOT 设备链接,软路由以有线方式链接至上级路由器。
在软路由上用 tcpdump 对无线网卡进行抓包,然后用 Wireshark 进行分析。
-
中间人攻击
后面翻了一下文章,找到有大概总结文章:IoT渗透之抓包5法 ,部分思路重合可以互相借鉴。
安装 OpenWrt
需要工具
-
烧录工具:balenaEtcher
-
OpenWrt 固件包
固件下载
-
factory :比 sysupgrade 增加原厂验证、分区信息等,用于刷机。
-
sysupgrade :升级包。用于在 OpenWrt 基础上进行系统升级更新。
-
ext4、squashfs :文件系统格式。ext4 可修改,squashfs 只读;ext4 较新。
烧录固件
初始化
如果使用的固件不是上文链接下载的,移除网线后首次启动没有无线网络,可能是固件设置问题,尝试换一个固件解决
无线配置
设备配置
|
|
|
|
|
|
|
|
|
|
|
|
接口配置
启动SSH
分配SD卡剩余空间
resize2fs /dev/mmcblk0
出现问题未解决
df -h
或者 lsblk
查看系统空间会与 SD 卡容量不匹配,原因是 SD 卡部分空间没有挂载。mmcblk
替换成 sda
-
列出磁盘
fdisk -
-
新建分区:
n
;分区类型:primary
; -
分区开始地址是
/dev/mmcblk0p2
结束地址到 SD 卡末尾,地址自行按在实际情况计算; -
保存退出:
w
;操作过程记录:
Command (m for help): p
Disk /dev/mmcblk0: 29.12 GiB, 31266439168 bytes, 61067264 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x5452574f
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 * 8192 110591 102400 50M c W95 FAT32 (LBA)
/dev/mmcblk0p2 114688 1650687 1536000 750M 83 Linux
/dev/mmcblk0p3 61067263 61067263 1 512B 83 Linux
Command (m for help): n
Partition type
p primary (2 primary, 0 extended, 2 free)
e extended (container for logical partitions)
Select (default p):
Using default response p.
Partition number (3,4, default 3):
First sector (2048-61067263, default 2048): 1650688
Last sector, +/-sectors or +/-size{K,M,G,T,P} (1650688-61067263, default 61067263):
Created a new partition 3 of type 'Linux' and of size 28.3 GiB.
Command (m for help): p
Disk /dev/mmcblk0: 29.12 GiB, 31266439168 bytes, 61067264 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x5452574f
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 * 8192 110591 102400 50M c W95 FAT32 (LBA)
/dev/mmcblk0p2 114688 1650687 1536000 750M 83 Linux
/dev/mmcblk0p3 1650688 61067263 59416576 28.3G 83 Linux
Command (m for help): w
The partition table has been altered.
Syncing disks. -
格式化分区:
mkfs.ext4 /dev/mmcblk0p3
-
WEB 后台启动挂载点:
有线桥接部署
场景说明
-
软路由 WAN 口用网线接到主路由 LAN 口:实现接入主路由子网、连通互联网;
-
IoT 设备连接软路由 WiFi 实现上网与被抓包;
-
攻击机连接主路由 WiFi 通过 SSH 控制软路由抓包与提取流量包;
配置LAN
配置WAN
配置防火墙
-
二级路由下设备可以访问一级路由设备,并且可以通过一级路由出网
-
一级路由设备不能访问二级路由设备
others
连通一二级路由
# mac:192.168.199.131
# openwrt:192.168.199.140/192.168.1.1
sudo route add -net 192.168.1.0 192.168.199.140
ping 192.168.1.1
#PING 192.168.1.1 (192.168.1.1): 56 data bytes
#64 bytes from 192.168.1.1: icmp_seq=0 ttl=64 time=1.647 ms
#64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=2.552 ms
#64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=12.220 ms
#64 bytes from 192.168.1.1: icmp_seq=4 ttl=64 time=2.012 ms
IP 动态伪装、MSS 钳制
恩山论坛也在求助这个问题:贴子0、贴子1。
在路由器上抓包
环境信息
-
树莓派4b 搭载 openwrt
-
tcpdump
-
Wireshark
-
科来网络分析系统
安装 tcpdump
启动SSH
opkg update
opkg install tcpdump
#tcpdump -h
tcpdump -vv -s0 -c 1000 -i wlan0 -w ./1.pcap
-
-vv
: 显示状态 -
-c
: 抓包多少条 -
-i
: 指定网卡,比如wlan0 wifi,eth0 有线网卡,br-lan 一般都是指lan的网桥 就是包括wifi和lan部分 -
-s0
: 不限制包的长度,也是抓取完整的包 -
-w
: 文件路径:保存抓到的数据包到指定文件 这里方便后期导出来到wireshark里分析哈哈
点个在看你最好看
原文始发于微信公众号(山石网科安全技术研究院):基于树莓派实现IOT流量抓取
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论