长话短说,我正在尝试对一个应用程序进行逆向工程,该应用程序向我的电视发出 http(而不是 ssl)请求,以修补一些家庭自动化。
我伪造了电视的 MAC 地址,并在应用程序打开时切换到它的 IP,得到了大量有用的东西,但由于我的笔记本电脑没有像电视那样响应,应用程序很快就出错了。我可以玩模拟每个呼叫的游戏,但这会花很长时间。
有没有办法可以检查我家庭网络上这两个设备之间传输的所有数据包?我有一台华硕路由器,我可以在上面放置自定义固件或通过 ssh 连接,如果路由器的 Linux 操作系统有的话,还可以运行一些基本命令。
答案1
最简单的方法是将某个设备放在运行应用程序的设备(智能手机?PC?)和电视之间。假设您真正指的是 LAN(以太网)而不是 WLAN,则该设备需要至少有两个以太网端口。
设置设备作为DCHP服务器和网关,转发两个设备之间的流量,使用tcpdump
或wireshark
嗅探流量。
原则上,您的华硕路由器可以充当这样的设备,但是路由器通常没有足够的主内存和/或闪存(作为硬盘替代品)来可靠地记录大量流量,因此如果您尝试使用它,您可能会丢失一些数据包。
使用 Linux PC 或笔记本电脑作为这样的设备很容易(Linux 发行版拥有您需要安装的所有软件),我想您也可以让它在 Windows 上运行。