首页
社区
课程
招聘
[翻译]HG533路由器分析教程之二:搜寻固件
2016-12-20 17:03 9711

[翻译]HG533路由器分析教程之二:搜寻固件

2016-12-20 17:03
9711
原文作者:Juan Carlos Jiménez
翻译者:光棍节
原文地址:http://jcjc-dev.com/2016/04/29/reversing-huawei-router-2-scouting-firmware/

排版好的下载地址:
HG533路由器分析教程之搜寻固件.pdf

在上一节分析pcb板的硬件结构时,发现了一个UART接口,通过这个接口,实现了一个Linux shell的管理接口,本节中利用上节提出方法访问设备,进而对设备进行调试和控制。
上一节提出的方法是易于访问的,不需要昂贵的工具,并且会有有趣的结果,如果你想做一些硬件方面的分析,但是又不愿意去拆设备的话,这将导致你无法深入的挖掘硬件漏洞,而只是停留在网络漏洞以及ISP配置协议等高层次接口的安全分析。
本节中通过利用上一节提出的方法访问并收集一些随机的数据块,这些数据块会帮助我们理解整个系统。
一、        回顾上一节
图一是UART引脚图,图二是串口通信数据,

图一 UART引脚图

图二 串口通信数据
串口交互运行shell,这个shell是由路由器中的busybox提供的,如下:
-------------------------------
-----Welcome to ATP Cli------
-------------------------------
Login: admin
Password:    #Password is ‘admin'
ATP>shell
BusyBox vv1.9.1 (2013-08-29 11:15:00 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
# ls
var   usr   tmp   sbin  proc  mnt   lib   init  etc   dev   bin

上面有三个层面的固件:
1、U-boot,即设备的bootloader,实现对最低级的硬件管理,如watchdog等,也负责对后续主要功能固件的启动。
2、Linux,路由器通过运行Linux来实现对硬件的整体控制,协调并行处理,后续的busybox是运行在此Linux之上。
3、Busybox,一个集合了多个Linux命令的工具包。
低级别的接口往往是不直观的,不能访问所有的数据,而且可能会造成设备变砖,从busybox开始往下分析是不错的思路。
通常情况下,开发人员会在启动过程中添加一些调试信息,接下来,我们就从调试信息中找找是否存在有用的信息。
二、        开机调试信息
在启动的一系列信息中,我们可以得到flash段的压缩算法等,如图三所示,采用的是LZMA压缩,用的是Mips Linux内核。

图三 内核压缩算法信息
当我们想着提取闪存数据时,在本路由器中,Intel的外部闪存结构就非常重要了,如图四、图五、图六所示。

图四 内存映射图

图五 Flash芯片名称与完整的内存映射表

图六 文件系统压缩格式
三、        ATP 以及BusyBox
本路由器中的Ralink IC通过运行一个Linux内核实现对内存的管理、并行处理以及对整个系统的控制,Ralink芯片的产品说明上显示使用的是Linux2.6.21内核,而ATP CLI是运行在Linux之上或者是作为Linux内核的一部分,它仅提供了第一层的系统认证,其他功能很有限,如下所示:
ATP>help
Welcome to ATP command line tool.
If any question, please input "?" at the end of command.
ATP>?
cls
debug
help
save
?
exit
ATP>
上面的帮助并没有提到shell或者sh的命令,通常是直接运行shell或者sh就可以得到。仅提供了少于10个命令,而更多功能的实现是依靠busybox来完成的。
Busybox是一个集合了多个通用unix命令的工具包,非常方便,从ls到cd以及top等,有了busybox,让我们使用Ralink IC像使用Linux一样。
如下所示是本路由器中的busybox支持的命令:
ATP>shell
BusyBox vv1.9.1 (2013-08-29 11:15:00 CST) built-in shell (ash)
Enter 'help' for a list of built-in commands.
# ls
var   usr   tmp   sbin  proc  mnt   lib   init  etc   dev   bin
#
# ls /bin
zebra        swapdev      printserver  ln           ebtables     cat
wpsd         startbsp     pppc         klog         dns          busybox
wlancmd      sntp         ping         kill         dms          brctl
web          smbpasswd    ntfs-3g      iwpriv       dhcps        atserver
usbserver    smbd         nmbd         iwconfig     dhcpc        atmcmd
usbmount     sleep        netstat      iptables     ddnsc        atcmd
upnp         siproxd      mount        ipp          date         at
upg          sh           mldproxy     ipcheck      cwmp         ash
umount       scanner      mknod        ip           cp           adslcmd
tr111        rm           mkdir        igmpproxy    console      acl
tr064        ripd         mii_mgr      hw_nat       cms          ac
telnetd      reg          mic          ethcmd       cli
tc           radvdump     ls           equipcmd     chown
switch       ps           log          echo         chmod
#
仅仅分析上面的是不够的,敏感的数据不会存放在busybox 中的。
四、        探索文件系统
现在我们已经登录在系统中,而且知道哪些命令是可以使用的,本节中仅仅是为了得到对整个系统的概述,没有详细的分析每一小片的数据。
其中top命令是可以帮助我们得出进程消耗资源的情况,由于当前路由器是出于空闲状态,top命令并没有返回太多的有用信息。如图七所示。

图七 top命令返回结果
从上面的进程列表中看到有一个usbmount进程,由此可见,路由器支持usb接口,当插入一个flash u盘,显示出如下的信息:
usb 1-1: new high speed USB device using rt3xxx-ehci and address 2
[...]
++++++sambacms.c 2374 renice=renice -n +10 -p 1423
U盘被识别,并且被挂载到/mnt/usb1_1/,同时一个samba服务器就启动了,这些文件的目录在/etc/samba下:
# ls -l /etc/samba/
-rw-r--r--    1 0        0             103 smbpasswd
-rw-r--r--    1 0        0               0 smbusers
-rw-r--r--    1 0        0             480 smb.conf
-rw-------    1 0        0            8192 secrets.tdb
# cat /etc/samba/smbpasswd
nobody:0:XXXXXXXXXXXXXXXXXXX:564E923F5AF30J373F7C8_______4D2A:[U ]:LCT-1ED36884:
当然,还有其他的命令:
Netstat –a :设备的通信端口信息
Iptables –list:设置网络,进而可以telnet访问,此处我们仍然保持裸机状态。
Wlancmd help:丰富的wifi无线控制功能
/etc/profile
/etc/inetd
/etc/services
/var/:系统运行过程中使用的文件
/etc/:系统配置文件
其中/var/和/etc/目录下会包含大量的有用信息,很多都是很明显的,如/etc/serverkey.pem。如图八所示。

图八 /etc/serverkey.pem文件内容
在嵌入式设备中找到TLS通信的私钥是很正常的,通过攻击一个设备获取私钥,进而可以对其他相同型号的设备展开攻击。
这个私钥一方面用于与华为或ISP服务器通信,但是,更多的是用来获取公开证书,进而与远程服务器通信。在这里,我们找到了两个证书,都来自于“同一个人”的签名。
/etc/servercert.pem: 最有可能是服务器密钥
/etc/root.pem: 很有可能用于与华为或者ISP服务器通信(不确定。。。)
更多的敏感数据是在/etc/ppp256/config和/etc/ppp258/config文件中,如图九所示。
这些身份认证信息对于HTTP 接口也是有效的,这也是我在此处提出来的原因。当然对于其他的很多路由器设备不一定有效。
分析如此多的不同文件,如果没有好的工具将会是非常耗费时间的,所以,我们将会尽可能的复制这些数据到u盘中,进而在电脑上进行分析。

图九 config文件内容
五、        信息收集
当收集了文件之后,我们可以使用find . –name *.pem查找是否还有其他的TLS证书。
运行grep -i –r password,查找所有文件中的password字段,得到如图十所示。

图十 password在所有文件中的信息
这里有很多的证书信息,主要是为STUN,TR-069和本地服务提供。此处展示出来是因为这些信息都是通过http传输的,但通常是隐藏的。这些证书要不以明文要不以base64编码后保存,当然编码是不能保护数据的。如图十一所示的是当前wifi密码的base64值。
$ echo "QUJCNFVCTU4=" | base64 -D
ABB4UBMN

图十一 当前wifi密码
在分析上述密码的过程中,得到了2个比较重要的文件。
/var/curcfg.xml: 当前配置文件,包括base64后的wifi密码等
/etc/defaultcfg.xml: 默认配置文件,用于恢复出厂设置,但不包括路由器的wifi密码,主要是因为第一次使用的时候需要配置密码信息。
六、        探索ATP的CLI
由于ATP的CLI包含了非常少的命令,其中重要的命令之一是debug。debug display 将会显示igmpproxy、cwmp、sysuptime或者atpversion的使用,大部分都没有什么用,不知道cwmp是不是与路由器的远程配置有关,如图十二所示。

图十二 cwmp的命令信息
再次,这些CWMP(TR-069)证书是用于远程路由器配置的凭据,这次甚至没有编码,明文的保存在里面。
其他的ATP命令功能很有限,如清屏、帮助,保存到flash中或退出等。
七、        探索Uboot的CLI
Bootloader的命令行接口提供了访问部分内存区域,但是,它没有提供直接访问flash芯片功能,如下所示:
Please choose operation:
   3: Boot system code via Flash (default).
   4: Entr boot command line interface.
You choosed 4
Stopped Uboot WatchDog Timer.
4: System Enter Boot Command Line Interface.
U-Boot 1.1.3 (Aug 29 2013 - 11:16:19)
RT3352 # help
?       - alias for 'help'
bootm   - boot application image from memory
cp      - memory copy
erase   - erase SPI FLASH memory
go      - start application at address 'addr'
help    - print online help
md      - memory display
mdio   - Ralink PHY register R/W command !!
mm      - memory modify (auto-incrementing)
mw      - memory write (fill)
nm      - memory modify (constant address)
printenv- print environment variables
reset   - Perform RESET of the CPU
rf      - read/write rf register
saveenv - save environment variables to persistent storage
setenv  - set environment variables
uip - uip command
version - print monitor version
RT3352 #
不要轻易的去使用erase、mm、mw或者nm命令,除非真的需要使用这些命令,错误的使用将会重启设备,然后设备变砖。此时,内存显示md和printenv引起了我的注意。
RT3352 # printenv
bootcmd=tftp
bootdelay=2
baudrate=57600
ethaddr="00:AA:BB:CC:DD:10"
ipaddr=192.168.1.1
serverip=192.168.1.2
ramargs=setenv bootargs root=/dev/ram rw
addip=setenv bootargs $(bootargs) ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname):$(netdev):off
addmisc=setenv bootargs $(bootargs) console=ttyS0,$(baudrate) ethaddr=$(ethaddr) panic=1
flash_self=run ramargs addip addmisc;bootm $(kernel_addr) $(ramdisk_addr)
kernel_addr=BFC40000
u-boot=u-boot.bin
load=tftp 8A100000 $(u-boot)
u_b=protect off 1:0-1;era 1:0-1;cp.b 8A100000 BC400000 $(filesize)
loadfs=tftp 8A100000 root.cramfs
u_fs=era bc540000 bc83ffff;cp.b 8A100000 BC540000 $(filesize)
test_tftp=tftp 8A100000 root.cramfs;run test_tftp
stdin=serial
stdout=serial
stderr=serial
ethact=Eth0 (10/100-M)

Environment size: 765/4092 bytes
我们可以看到类似设置UART串口波特率,以及一些有意思的内存位置。这些内存地址不是flash IC地址空间的,flash的地址空间是0x00000000—0x00FFFFFF。
让我们利用md看看其中的部分内存,如kernel_addr=0xBFC40000,如图十三所示。

图十三 BFC40000内存数据
其中的badd信息表示此处为无效地址,当用md访问无效的内存地址时,将会返回硬编码的badd提示内存地址无效。这些地址是好的地址,但是在u-boot阶段是不可访问的。
需要注意的是,通过启动uboot命令行接口将会导致路由器停止加载Linux内核到内存中,所以对内存的访问将是非常有限的子集。其中有效的地址空间如图十四所示。

图十四 有限的可访问内存空间数据举例
这种方法查找内存非常受限,仅能够查看有限区域的数据,但是可以用这种方法来分析内存的存储结构,如在0x000d0000位置的内存内容明显变化,如图十五所示。

图十五 0x000d0000位置的内存明显变化
最后附上实验的视频教程:http://static.video.qq.com/TPout.swf?vid=w01991tmnia&auto=0

[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界

上传的附件:
收藏
点赞1
打赏
分享
最新回复 (12)
雪    币: 6769
活跃值: (4422)
能力值: (RANK:600 )
在线值:
发帖
回帖
粉丝
gjden 14 2016-12-21 10:32
2
0
这是篇非常不错的入手教程,辛苦,希望继续翻译后续章节。
雪    币: 92
活跃值: (154)
能力值: ( LV8,RANK:135 )
在线值:
发帖
回帖
粉丝
光棍节 2 2016-12-21 10:47
3
0
xdxd....莫名躺枪。。。。
雪    币: 171
活跃值: (474)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
Lthis 1 2016-12-21 23:06
4
0
哇!挺不错的啊
请教一下楼主,我这边没有硬件工具,只能telnet进去,请问怎么下载路由器里的东西啊?看了一下,只有个tftp,没有wget..但是tftp下载的时候说系统只写(没错是下载) ....(~ ̄▽ ̄)→))* ̄▽ ̄*)o也没有mount命令,简直死结啊
雪    币: 92
活跃值: (154)
能力值: ( LV8,RANK:135 )
在线值:
发帖
回帖
粉丝
光棍节 2 2016-12-22 08:35
5
0
里面的busybox还有哪些命令?
雪    币: 251
活跃值: (108)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
xdxdxdxd 3 2016-12-22 09:25
6
0
哈哈哈,楼主辛苦
雪    币: 171
活跃值: (474)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
Lthis 1 2016-12-22 10:34
7
0
bin里就这些,也挺多的 不过好像没有很好的上传下载命令,也没有编辑的命令,大神求带啊
# ls -l /bin
-rwxr-xr-x    1 root     0            8984 Dec 24 19:12 UDPserver
-rwxr-xr-x    1 root     0           10032 Dec 24 19:12 acltd
-rwxr-xr-x    1 root     0            1990 Dec 24 19:12 alg_init.sh
-rwxr-xr-x    1 root     0          162196 Dec 24 19:12 auth
-rwxr-xr-x    1 root     0            6184 Dec 24 19:12 auto_mac_clone
-rwxr-xr-x    1 root     0             270 Dec 24 19:12 auto_update.sh
-rwxr-xr-x    1 root     0          109048 Dec 24 19:12 boa
-rwxr-xr-x    1 root     0           26584 Dec 24 19:12 brctl
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 bridge.sh -> cscripts
-rwxr-xr-x    1 root     0          211448 Dec 24 19:11 busybox
-rwxr-xr-x    1 root     0             123 Dec 24 19:12 cBonding.sh
-rwxr-xr-x    1 root     0             137 Dec 24 19:12 cChannel.sh
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 cat -> busybox
-rwxr-xr-x    1 root     0          211408 Dec 24 19:12 cdrom_wizard
-rw-r--r--    1 root     0             577 Dec 24 19:12 checkmount.sh
-rwxr-xr-x    1 root     0           13716 Dec 24 19:12 checkupfile
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 chmod -> busybox
-rwxr-xr-x    1 root     0           70188 Dec 24 19:12 cmac
-rwxr-xr-x    1 root     0           10713 Dec 24 19:12 connect.sh
-rwxr-xr-x    1 root     0              31 Dec 24 19:12 controlflow.sh
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 cp -> busybox
-rwxr-xr-x    1 root     0          195904 Dec 24 19:12 cscripts
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 date -> busybox
-rwxr-xr-x    1 root     0            1604 Dec 24 19:12 date_time_test.sh
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 ddns.sh -> cscripts
-rwxr-xr-x    1 root     0           19348 Dec 24 19:12 detect_wan
-rwxr-xr-x    1 root     0             796 Dec 24 19:12 dhcp_def_gw_refresh.sh
-rwxr-xr-x    1 root     0            3654 Dec 24 19:12 dhcp_loop.sh
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 dhcpc.sh -> cscripts
-rwxr-xr-x    1 root     0             826 Dec 24 19:12 dhcpc_vpn_refresh.sh
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 dhcpd.sh -> cscripts
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 disconnect.sh -> cscripts
-rwxr-xr-x    1 root     0          103196 Dec 24 19:12 dnrd
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 dns.sh -> cscripts
-rwxr-xr-x    1 root     0            1249 Dec 24 19:12 dos.sh
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 echo -> busybox
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 egrep -> busybox
-rwxr-xr-x    1 root     0            2194 Dec 24 19:12 email.sh
-rwxr-xr-x    1 root     0             212 Dec 24 19:12 factory_test.sh
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 false -> busybox
-rwxr-xr-x    1 root     0            1630 Dec 24 19:12 filter_ip_apps.sh
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 firewall.sh -> cscripts
-rwxr-xr-x    1 root     0           12804 Dec 24 19:12 firewall_pptp.sh
-rwxr-xr-x    1 root     0             368 Dec 24 19:12 fixedip.sh
-rwxr-xr-x    1 root     0          137508 Dec 24 19:12 flash
-rwxr-xr-x    1 root     0             310 Dec 24 19:12 generate_passwd.sh
-rw-r--r--    1 root     0            2046 Dec 24 19:12 get_mac_from_pc.sh
-rw-r--r--    1 root     0            1619 Dec 24 19:12 get_wan_ifname.sh
-rwxr-xr-x    1 root     0              98 Dec 24 19:12 getmib
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 grep -> busybox
-rwxr-xr-x    1 root     0           19884 Dec 24 19:12 guangdian
-rwxr-xr-x    1 root     0             321 Dec 24 19:12 guangdian.sh
-rwxr-xr-x    1 root     0             437 Dec 24 19:12 henan_dhcp.sh
-rwxr-xr-x    1 root     0             214 Dec 24 19:12 host_route.sh
-rwxr-xr-x    1 root     0           15224 Dec 24 19:12 iapp
-rwxr-xr-x    1 root     0             104 Dec 24 19:12 ib
-rwxr-xr-x    1 root     0             105 Dec 24 19:12 idd
-rwxr-xr-x    1 root     0          103052 Dec 24 19:12 igdmptd
-rwxr-xr-x    1 root     0           33729 Dec 24 19:12 igmpproxy
-rwxr-xr-x    1 root     0            1578 Dec 24 19:12 igmpproxy.sh
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 init.sh -> cscripts
-rwxr-xr-x    1 root     0             282 Dec 24 19:12 init_test.sh
-rwxr-xr-x    1 root     0           68400 Dec 24 19:12 ip
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 ip_qos.sh -> cscripts
-rwxr-xr-x    1 root     0          129436 Dec 24 19:12 iptables
-rwxr-xr-x    1 root     0             111 Dec 24 19:12 irf
-rwxr-xr-x    1 root     0             104 Dec 24 19:12 iw
-rwxr-xr-x    1 root     0           44732 Dec 24 19:12 iwcontrol
-rwxr-xr-x    1 root     0           29916 Dec 24 19:12 iwpriv
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 kill -> busybox
-rwxr-xr-x    1 root     0             301 Dec 24 19:12 killsh.sh
-rwxr-xr-x    1 root     0             359 Dec 24 19:12 l2tp.sh
-rwxrwxrwx    1 root     0             525 Dec 24 19:12 l2tp_def_gw_refresh.sh
-rwxr-xr-x    1 root     0          130772 Dec 24 19:12 l2tpd
-rwxr-xr-x    1 root     0           76148 Dec 24 19:12 lld2d
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 ln -> busybox
-rwxr-xr-x    1 root     0           11780 Dec 24 19:12 logc
-rwxr-xr-x    1 root     0           20020 Dec 24 19:12 logd
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 login -> busybox
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 ls -> busybox
-rwxr-xr-x    1 root     0            7085 Dec 24 19:12 master_connect.sh
-rwxr-xr-x    1 root     0           15120 Dec 24 19:12 mini_upnpd
-rwxr-xr-x    1 root     0           95836 Dec 24 19:12 miniigd
-rwxr-xr-x    1 root     0            1984 Dec 24 19:12 miniigd_8671.sh
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 mkdir -> busybox
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 mknod -> busybox
-rwxr-xr-x    1 root     0             457 Dec 24 19:12 mp.sh
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 msh -> busybox
-rwxr-xr-x    1 root     0            1067 Dec 24 19:12 multi_dmz.sh
-rwxr-xr-x    1 root     0          104792 Dec 24 19:12 multi_ppp
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 ntp.sh -> cscripts
-rwxr-xr-x    1 root     0           28320 Dec 24 19:12 ntpclient
-rwxr-xr-x    1 root     0          173876 Dec 24 19:12 ntpd
-rwxr-xr-x    1 root     0             115 Dec 24 19:12 ob
-rwxr-xr-x    1 root     0             116 Dec 24 19:12 od
-rwxr-xr-x    1 root     0              30 Dec 24 19:12 openflow.sh
-rwxr-xr-x    1 root     0           30552 Dec 24 19:12 oray_dns
-rwxr-xr-x    1 root     0             122 Dec 24 19:12 orf
-rwxr-xr-x    1 root     0             115 Dec 24 19:12 ow
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 ping -> busybox
-rwxr-xr-x    1 root     0            1184 Dec 24 19:12 port_forward.sh
-rwxr-xr-x    1 root     0             561 Dec 24 19:12 port_trigger.sh
-rwxr-xr-x    1 root     0          378868 Dec 24 19:12 pppd
-rwxr-xr-x    1 root     0             170 Dec 24 19:12 pppoe.sh
-rwxr-xr-x    1 root     0             554 Dec 24 19:12 pppoe_def_gw_refresh.sh
-rwxr-xr-x    1 root     0             572 Dec 24 19:12 pppoed.sh
-rwxr-xr-x    1 root     0           60320 Dec 24 19:12 pptp
-rwxr-xr-x    1 root     0             176 Dec 24 19:12 pptp.sh
-rw-r--r--    1 root     0             515 Dec 24 19:12 pptp_def_gw_refresh.sh
-rwxr-xr-x    1 root     0           33200 Dec 24 19:12 pptpctrl
-rwxr-xr-x    1 root     0           28108 Dec 24 19:12 pptpd
-rwxr-xr-x    1 root     0             622 Dec 24 19:12 pptpd.sh
-rwxr-xr-x    1 root     0             331 Dec 24 19:12 pptpd_firewall.sh
-rwxr-xr-x    1 root     0           58372 Dec 24 19:12 pptpd_pppoe_deamon
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 ps -> busybox
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 qos.sh -> cscripts
-rwxr-xr-x    1 root     0             554 Dec 24 19:12 ralink_ap_apr.sh
-rwxr-xr-x    1 root     0             141 Dec 24 19:12 ralink_led.sh
-rwxr-xr-x    1 root     0            4764 Dec 24 19:12 refresh_firewall
-rwxr-xr-x    1 root     0            9580 Dec 24 19:12 reload
-rwxr-xr-x    1 root     0             169 Dec 24 19:12 reload.sh
-rwxr-xr-x    1 root     0            7545 Dec 24 19:12 restart_oray
-rwxr-xr-x    1 root     0            7786 Dec 24 19:12 restart_webs
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 rm -> busybox
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 route.sh -> cscripts
-rwxr-xr-x    1 root     0            3401 Dec 24 19:12 routed.sh
-rwxr-xr-x    1 root     0              48 Dec 24 19:12 rssi
-rwxr-xr-x    1 root     0             169 Dec 24 19:12 rxx.sh
-rwxr-xr-x    1 root     0           12340 Dec 24 19:12 sdmzc
-rwxr-xr-x    1 root     0           38600 Dec 24 19:12 sdmzd
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 set_default_route.sh -> cscripts
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 set_policy_routing.sh -> cscripts
-rwxr-xr-x    1 root     0             126 Dec 24 19:12 setborad.sh
-rwxr-xr-x    1 root     0             108 Dec 24 19:12 setmib
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 setnetsniffer.sh -> cscripts
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 sh -> busybox
-rwxr-xr-x    1 root     0           10805 Dec 24 19:12 slave_connect.sh
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 sleep -> busybox
-rwxr-xr-x    1 root     0            3694 Dec 24 19:12 snmpd.sh
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 start_cwmp.sh -> cscripts
-rwxr-xr-x    1 root     0             427 Dec 24 19:12 start_daemon.sh
-rw-r--r--    1 root     0            2683 Dec 24 19:12 storage.sh
-rwxr-xr-x    1 root     0             217 Dec 24 19:12 stupid-ftpd-acl.sh
-rwxr-xr-x    1 root     0             864 Dec 24 19:12 stupid-ftpd-common.sh
-rwxr-xr-x    1 root     0             652 Dec 24 19:12 stupid-ftpd-user.sh
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 superdmz_init.sh -> cscripts
-rwxr-xr-x    1 root     0             400 Dec 24 19:12 syslogd.sh
-rwxr-xr-x    1 root     0          234008 Dec 24 19:12 tc
-rwxr-xr-x    1 root     0             164 Dec 24 19:12 telnetd.sh
-rwxr-xr-x    1 root     0           12421 Dec 24 19:12 tftp_upgrade
lrwxrwxrwx    1 root     0               7 Dec 24 19:14 true -> busybox
-rwxr-xr-x    1 root     0            6820 Dec 24 19:12 txcheckd
lrwxrwxrwx    1 root     0               6 Dec 24 19:14 udhcpc -> udhcpd
-rwxr-xr-x    1 root     0           94096 Dec 24 19:12 udhcpd
-rwxr-xr-x    1 root     0           14420 Dec 24 19:12 update_main
-rwxr-xr-x    1 root     0           75972 Dec 24 19:12 updatedd
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 upnp.sh -> cscripts
-rwxr-xr-x    1 root     0           23504 Dec 24 19:12 url_upgrade
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 vpn.sh -> cscripts
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 wan_lan_link_set.sh -> cscripts
-rwxr-xr-x    1 root     0             491 Dec 24 19:12 webs
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 wlan.sh -> cscripts
-rwxr-xr-x    1 root     0            2115 Dec 24 19:12 wlan_8196_test.sh
-rwxr-xr-x    1 root     0             284 Dec 24 19:12 wlan_check.sh
lrwxrwxrwx    1 root     0               8 Dec 24 19:14 wlanapp.sh -> cscripts
-rwxr-xr-x    1 root     0           10587 Dec 24 19:12 wlanapp_kld_repeater.sh
-rwxr-xr-x    1 root     0            8107 Dec 24 19:12 wps_detect
-rwxr-xr-x    1 root     0             329 Dec 24 19:12 wps_init.sh
-rwxr-xr-x    1 root     0              74 Dec 24 19:12 wps_sec_init.sh
-rwxr-xr-x    1 root     0             310 Dec 24 19:12 wpspin.sh
-rwxr-xr-x    1 root     0             115 Dec 24 19:12 wpsstart.sh
-rwxr-xr-x    1 root     0             138 Dec 24 19:12 wpstest.sh
-rwxr-xr-x    1 root     0          242296 Dec 24 19:12 wscd
雪    币: 6769
活跃值: (4422)
能力值: (RANK:600 )
在线值:
发帖
回帖
粉丝
gjden 14 2016-12-22 11:30
8
0
我当时在想啥,
雪    币: 92
活跃值: (154)
能力值: ( LV8,RANK:135 )
在线值:
发帖
回帖
粉丝
光棍节 2 2016-12-22 12:37
9
0
哈哈哈哈哈
雪    币: 92
活跃值: (154)
能力值: ( LV8,RANK:135 )
在线值:
发帖
回帖
粉丝
光棍节 2 2016-12-22 12:44
10
0
能不能去/tmp等目录下用tftp下载一个可执行的ftp,或者功能更强大的busybox,然后再去读文件,上传到你的服务器上?
雪    币: 92
活跃值: (154)
能力值: ( LV8,RANK:135 )
在线值:
发帖
回帖
粉丝
光棍节 2 2016-12-22 12:47
11
0
还有就是运行一下busybox,看看到底支持那些命令。上面的看的比较晕
雪    币: 171
活跃值: (474)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
Lthis 1 2016-12-22 13:25
12
0
哈哈哈哈哈哈哈哈哈哈
雪    币: 171
活跃值: (474)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
Lthis 1 2016-12-22 17:00
13
0
这思路可以,我试试。
谢谢楼主!!
游客
登录 | 注册 方可回帖
返回