利用Arduino对路由器进行调试,居然这么简单! - 嘶吼 RoarTalk – 网络安全行业综合服务平台,4hou.com

利用Arduino对路由器进行调试,居然这么简单!

xiaohui 无线安全 2017-05-24 10:40:02
4789385
收藏

导语:在本文中,我们将使用Arduino Uno / Nano / Mega来模拟路由器上的调试引脚硬件连接 ,然后使用Arduino作为USB到串行转换器与设备进行通信,并由此获得对该设备的控制。

1.jpg

在生产嵌入式系统,如路由器或网络摄像头时,制造商就已预留了一些调试端口。不过对于一般的用户来说,这些预留的调试端口显然是用不到的,因为它们通常是被焊接的并受到设备外壳的保护。但是对于攻击者来说,访问这些端口就显得轻而易举了,对他们来说这些预留的端口就是连接系统的一个外部设备而已。这些端口通常会通过串行通信协议进行通信,并且包括JTAG,SPI和UART等接口。通常研究人员会利用诸如BusPirate,JTAGulator或Shikra之类的定制硬件与设备接口进行连接。

在本文中,我们将使用Arduino Uno / Nano / Mega来模拟路由器上的调试引脚硬件连接 ,然后使用Arduino作为USB到串行转换器与设备进行通信,并由此获得对该设备的控制。请注意,该项目是通过通用异步收发器(UART)进行创建的,其他项目如JTAGenum已被创建,可以通过其他接口与Arduino进行通信。

首先,需要识别物理调试引脚,在本文中,我们很幸运有一个已经被焊接在路由器上的调试端口:

2.png

为便于参考,我们将分别从左到右分配引脚:pin0-pin4。我们会在这5个引脚中,一一寻找能够Tx(发送)和Rx(接收)的引脚,以便能够与路由器进行通信。幸运的是,我们可以用万用表对引脚进行连续性测试,以识别可以跟这个引脚相连的公共端(GND)。最后发现,GND原来是pin1(从左起第二个)。

接下来,我们就要确定是哪个引脚正在传输数据(Tx)以及Arduino所在的波特率。我们可以使用Arduino的SoftwareSerial库来模拟所有未知引脚上的串行连接,并在设备启动通信过程,任何传输数据的端口都可能是我们的Tx。

首先,将MDSec UartFuzz代码项目上传到您的Arduino

接下来,将路由器连接公共端的引脚(pin1)连接到Arduino的公共端。然后将路由器的引脚从0-4(不包括公共端)顺序插入到Arduino引脚9-12(这些值在代码中互相关联,可以根据需要进行更改和扩展):

3.png

引脚配置:

4.png

开始启动包括路由器在内的运行,使用Arduino IDE的串行显示器,就可以看到该软件正在运行。请注意,由于我们是需要通过引脚进行数据传输,所以请务必不断地重新设置设备,以确保引导过程正在发送数据:

5.png

设备输出:

6.png

由于有时其他引脚会在通电或关闭时跳转或传输数据,所以用户要选择引脚或寻找更多的数据。我们建议用户最好多进行一些分析,看看哪个引脚会反复发送数据。在我们的案例中,pin0就是我们所寻找到干扰因素。我们还可以看到,软件使我们的波特率变得模糊,看起来像115200的速率的明文显示如下:

7.png

请注意,“wps eNabled”有一些损坏,这是由于SoftwareSerial是使用Bit-Banging来实现的,但显然不如UART那么精确,这一点我们已在寻找明文时考虑到这一点了。现在我们知道了公共端,Tx和波特率,就可以尝试从设备中进行读取并找到Rx。

将Arduino转换成TTL-Serial-to-USB转换器,通过删除ATmega芯片,或简单地将复位和公共端连接在一起(这取决于路由器的型号),然后重新进行电路连接:

8.png

引脚配置:

9.png

请注意,通常Tx要始终与Rx保持连接。可以利用Arduino Uno进行反转,可以尝试在你的Arduino pin0(Rx)进行反转,如果这不适合你,可以使用你最喜欢的软件来连接到串行控制台,本文使用的是minicom,并将波特率设置为了115200,重置路由器:

10.png

但在引导过程结束时,我们似乎没有得到一个shell或一个提示,这样就使Rx很难进行测试。可是我们确实看到启动过程可能会中断,最后一个过程就是将一根电线连接到Arduino的Rx引脚(通常应该是Tx引脚,因为会发送数据),并且继续绑定路由器上剩余的3个引脚,并按ctrl + c进行引导。如果它中断,则问题就出在Rx。

Rx和Tx通信的最终接线如下:

11.png

中断引导过程可以让用户访问#hi引导加载程序shell:

12.png

现在就可以使用tftp命令来上传自定义内核映像以进一步利用路由器。

1
  • 分享至
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

发表评论

 
本站4hou.com,所使用的字体和图片文字等素材部分来源于原作者或互联网共享平台。如使用任何字体和图片文字有侵犯其版权所有方的,嘶吼将配合联系原作者核实,并做出删除处理。
©2022 北京嘶吼文化传媒有限公司 京ICP备16063439号-1 本站由 提供云计算服务