我有一个 Greenlite AIRZ 恒温器,它连接到我的家庭 wifi,这样我就可以在手机上远程更改设置。然而,Android 应用程序很难使用,所以我正在考虑制作自己的应用程序。我找到了它的 IP 地址,把它放在浏览器中,它会逐字显示File / not_found
。恒温器也拒绝了我连接到端口 21/22 的请求。我应该如何从这里开始?下划线not
和found
特定服务器之间的下划线是否可以让我进一步探索?
如何探测我的智能恒温器进行重新编程?
逆向工程
智能设备
2021-06-19 02:20:13
3个回答
这里最好的方法是查看应用程序,这样你就知道要发送什么(特别是当他们添加一些加密或签名时)。第二个最好的选择是查看网络流量,并希望很容易从中找出它是如何工作的。如果这也不起作用,我认为最后一个选项是攻击设备本身:如其他回复中所述,您正在寻找 UART、JTAG 或其他调试端口。您也可以查找 SPI 闪存、NAND 闪存、eMMC 存储器,然后将其读出。但这是最困难的方法,只有在其他方法不起作用或您有充分的理由这样做(例如发现“秘密”功能)时才应遵循。
你必须调试它的硬件。
搜索其串行端口。看看UART。 https://www.societyofrobots.com/microcontroller_uart.shtml
您必须进行边界扫描,并找出其硬件边界。您可以通过 JTAG https://www.jtag.com/boundary-scan/
我确实同意 Richi 的回答。
你有三种方法可以做到:
- 最简单的方法是嗅探 Android 应用程序的流量,尝试查看从设备发送的命令和接收的状态(如果有)。如果确实存在 SSL 固定,您可能想要绕过 SSL 固定。
- 第二种方法是对现有的 Android 应用程序进行逆向工程,并尝试提取 API 身份验证/凭据、端点和通信数据。
- 第三种矫枉过正的方法是使用设备本身。
- 如果您不想接触硬件,也许更简单的方法是从设备的官方网站上查找配置备份/固件,然后尝试提取文件系统并分析在操作系统上执行的应用程序/脚本启动。如果以某种方式压缩/加密二进制文件,那会更难。