iot 抓包环境搭建
iol物联网设备漏洞挖掘与利用,首先需要搭建环境,主要是以学习为目的。
思路如下:
目的:抓取iot设备的交互流量,需要在路由器中安放抓包工具
步骤如下:
1.买一台RT-AC68U,(749,刚买一天,就降价了)
image2.对路由器进行初始化设置:
登陆:按照说明书把线接好后,打开浏览器输入:http://router.asus.com
3.刷入 Merlin 固件:
进入 WEB 页面选择「系统管理」→「固件升级」,上传你的 trx 固件文件,点击升级即可。如下图所示:
图片.png
1.先通过Merlin官网降级到380.70
2.刷入对应的380.70梅改固件,如下图所示
此时你就可以看见下面有个软件中心:
图片.png
4.刷完固件的设置和配置:
- 开启 JFFS 分区
当你成功登入管理页面后,选择「系统管理」→「系统设置」。在 Persistent JFFS2 partition 栏,Enable JFFS custom scripts and configs 选择「是」,把上面的格式化也选择上,重启路由器即可生效。
- 开启 uPnP 并配置防火墙
重要!配置完成后一定要点击左侧的「防火墙」,在「一般设置」处,将 NAT Loopback 从默认的 ASUS 改为 Merlin,否则你将会碰到明明 uPnP 开启了但是 BT 等下载软件却连接不上公网的情况(即使你有公网 IP)
image- 开启 SSH(最好只保留内网访问)
连接可以使用 PuTTY 或 WinSCP(协议选择 SCP),使用路由器管理的账号和密码登录即可。
Koolshare 论坛的改版 Merlin 固件都有软件中心,这里我就不再赘述了,各取所需安装所需插件即可。
科学上网看这个教程
所需要的软件将上传到本人的GitHub上:ss。
还是简单说一下吧:
搭建路由器ss实现wifi科学上网 搭建路由器ss实现wifi科学上网 搭建路由器ss实现wifi科学上网 搭建路由器ss实现wifi科学上网 搭建路由器ss实现wifi科学上网 搭建路由器ss实现wifi科学上网 搭建路由器ss实现wifi科学上网 搭建路由器ss实现wifi科学上网OK!“搭建路由器ss实现wifi科学上网”教程到此全部完毕,
安装 Entware
Entware 是一个嵌入式 Linux 设备的软件仓库集成工具,也就是传统 Linux 上的包管理工具,例如 Debian 的 dpkg、CentOS 的 yum 等。它们可以通过网络在远程仓库上拉取并安装所需要的包,同时自动解决依赖问题,是系统上不可或缺的一部分。
在安装之前,你需要在路由器中插入一个 U 盘,并将其格式化为 Ext3 / Ext4 格式
- 打开你的 SSH 客户端,连接上路由器。
- Merlin 已经内置了 Entware 的安装脚本,直接终端执行即可:
entware-setup.sh
图片.png
红色标注的地方选1.
如果你的分区已经格式化成了正确的格式,直接回车确认即可,耐心等待安装完成。
Info: Congratulations!
Info: If there are no errors above then Entware-ng was successfully initialized.
Info: Add /opt/bin & /opt/sbin to your PATH variable
Info: Add '/opt/etc/init.d/rc.unslung start' to startup script for Entware-ng services to start
Info: Found a Bug? Please report at https://github.com/Entware-ng/Entware-ng/issues
注意:
一般网上教程都使用opkg命令作为更新源:但是我安装的时候他就没有这个命令:
图片.png
跟新:
opkg update
所以我发现了另外两个命令可以使用,效果一样。至于有什么不同,我也不清楚:
ipkg,ipkg-opt
我们还需要编写一个脚本来使得 Engware-ng 服务开机自启动。
先安装一个文本编辑器吧:
admin@RT-AC66U_B1:/jffs/.koolshare/init.d# opkg install nano
Installing nano (2.8.7-1) to root...
Downloading http://pkg.entware.net/binaries/armv7/nano_2.8.7-1_armv7soft.ipk
Installing libncursesw (6.0-1c) to root...
Downloading http://pkg.entware.net/binaries/armv7/libncursesw_6.0-1c_armv7soft.ipk
Installing zlib (1.2.11-1) to root...
Downloading http://pkg.entware.net/binaries/armv7/zlib_1.2.11-1_armv7soft.ipk
Installing file (5.25-2) to root...
Downloading http://pkg.entware.net/binaries/armv7/file_5.25-2_armv7soft.ipk
Installing libmagic (5.25-2) to root...
Downloading http://pkg.entware.net/binaries/armv7/libmagic_5.25-2_armv7soft.ipk
Configuring libncursesw.
Configuring zlib.
Configuring libmagic.
Configuring file.
Configuring nano.
admin@RT-AC66U_B1:/jffs/.koolshare/init.d#
由于 Merlin 固件大部分的分区都是只读的,而 /tmp 分区的内容每次重启之后都会被清空,所以我们就需要在 JFFS 分区里面创建脚本 (我在这里选择 /jffs/.koolshare/init.d目录)命名为: startent.sh,内容如下:
#! /bin/sh
/opt/etc/init.d/rc.unslung start
保存后,chmod +x startent.sh 为该脚本添加执行权限。
回到路由器管理页面,点击左侧的「Tools」,点击「Script」,类型选择「WAN-START」,「脚本配置」框中就填写脚本路径,点击保存,重启你的路由器。
image记得一定要给脚本添加执行权限才行,不然启动不起来
Merlin 已经正式配置好了,Entware 也完成了,基本大功告成了,此时的 Merlin 可以当作一个自由的嵌入式 Linux 操作系统使用了,你也可以安装一些 Python、Vim 等软件包在路由器上使用。
安装Entware成功
看到这里的提示,安装就算结束了。接下来尝试使用一下 opkg 命令,如果无异常,恭喜你,Entware 环境安装成功了。
5.安装tcpdump
opkg install tcpdump
这里注意下:安装完tcpdump,他会自动的安装 libpcap,这样我们就可以使用Wireshark来分析了。
安装libpacp
使用 winscp (下载 密码:n7wp),将抓到包,拖入windows,使用Wireshark来分析了
使用win scp交换文件iot设备抓包环境完成!!!
可能存在一些问题:
**1:双working,不能访问被墙网站:**
1.1:DNS缓存:可能你在未开启ss的时候访问过被墙域名,DNS缓存受到了污染,只需要简单的刷新下缓存,window电脑通过在CMD中运行命令:ipconfig /flushdns刷新电脑DNS缓存,手机端可以通过尝试开启飞行模式后关闭飞行模式刷新DNS缓存。
1.2:自定义DNS:很多用户喜欢自己在电脑上定义DNS来使用,这样访问google等被墙网站,解析出来的域名基本都是污染的,因此建议将DNS解析改为自动获取。如果你的路由器很多人使用,你不能阻止别人自定义DNS,那么建议开启chromecast功能,路由器会将所有自定义的DNS劫持到自己的DNS服务器上,避免DNS污染。
1.3:host:电脑端以前设置过host翻墙,host翻墙失效快,DNS解析将通过host完成,不过路由器,如果host失效,使用chnroute翻墙的模式将无法使用;即使未失效,在gfwlist模式下,域名解析通过电脑host完成,而无法进入ipset,同样使得翻墙无法使用,因此强烈建议清除相关host!
**2:国内working,国外Problem detected!:**
2.1:检查你的SS账号:在电脑端用SS客户端检查是否正常;
2.2:是否使用了域名:一些SS服务商提供的域名,特别是较为复杂的域名,可能有解析不了的问题,可尝试更换为IP地址;
2.3:是否使用了含有特殊字符的密码:极少数情况下,电脑端账号使用正常,路由端却Problem detected!是因为使用了包含特殊字符的密码;
2.4:尝试更换国外dns:此部分详细解析,请看DNS部分帮助文档;
2.5:更换shadowsocks主程序:meirlin ss一直使用最新的shadowsocks-libev和shadowsocksR-libev代码编译主程序,如果某次更新后出现这种情况,在检查了以上均无问题后,可能出现的问题就是路由器内的ss主程序和服务器端的不匹配,此时你可以通过下载历史安装包,将旧的主程序替换掉新的,主程序位于路由器下的/koolshare/bin目录,shadowsocks-libev:ss-redir,ss-local,ss-tunnel;shadowsocksR-libev:rss-redir,rss-local,rss-tunnel;
2.6:更新服务器端:如果你不希望更换路由器端主程序,可以更新最新服务器端来尝试解决问题,另外建议使用原版SS的朋友,在服务器端部署和路由器端相同版本的shadowsocks-libev;
2.7:ntp时间问题:如果你使用SSR,一些混淆协议是需要验证ss服务器和路由器的时间的,如果时间相差太多,那么就会出现Problem detected! 。
**3:双Problem detected!:**
3.1:更换国内DNS:在电脑端用SS客户端检查是否正常;
3.2:逐项检查第2点中每个项目。
**4:国内Problem detected!,国外working:**
4.1:尝试更换国内DNS。
**5:国外间歇性Problem detected!:**
5.1:检查你的SS服务器ping和丢包:一些线路可能在高峰期或者线路调整期,导致丢包过多,获取状态失败;
5.2:升级新版本后出现这种情况:merlin ss插件从2015年6月,其核心部分就基本无改动,升级新版本出现这种情况,最大可能的原因,新版本升级了最新的ss或者ssr的主程序,解决方法可以通过回滚路由器内程序,也可以升级你的服务器端到最新,如果你是自己搭建的用户,建议最新原版shadowsocks-libev程序。
**6:你遇到了非常少见的情况:**来这里反馈吧:[<u>telegram</u>](https://telegram.me/joinchat/DCq55kC7pgWKX9J4cJ4dJw)。
参考网站:降级固件软件
https://onedrive.live.com/?authkey=%21AJLLKAY--4EBqDo&id=CCE5625ED3599CE0%211444&cid=CCE5625ED3599CE0
[梅林改版固件]:
http://koolshare.cn/forum.php?mod=viewthread&tid=139322&highlight=380.70%5C_0-X7.9
Entware 安装:https://github.com/RMerl/asuswrt-merlin/wiki/Entware
tcpdump抓包详情:https://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html
使用路由器在局域网内实现科学上网:
https://www.yigeni.com/build-a-router-ss-to-achieve-wifi-science-online/