标题: 360 C301路由器的工程支持手段之一 创建: 2015-01-05 11:51 更新: 链接: https://scz.617.cn/misc/201501051151.txt 在/etc/scripts/usbmount.sh中有: -------------------------------------------------------------------------- if [ -f /var/tmp/udisk/telnet.boot ] then /sbin/debug_telnet $3 fi -------------------------------------------------------------------------- 看这意思是,只要U盘根目录下有telnet.boot存在,就会启动debug_telnet。IDA逆 了一下debug_telnet,打开/var/tmp/udisk/telnet.boot(应该是U盘上的),该文件 经某私钥加密过,用内置/etc/defdata/debug_telnet.pub.key对之进行解密,与上 面那个命令行传进来的$3进行比较,匹配则执行: /usr/sbin/telnetd -l /usr/sbin/login -u 360user:alpha360 -i br0 & 我观察到两组口令: 360user:alpha360 Alphanetworks:wrgac26_qihoo360_360rg 在/etc/udev/rules.d/60-usb-storage.rules里看到对usbmount.sh的调用: ACTION=="add", KERNEL=="sd*", SUBSYSTEM=="block", RUN+="/etc/scripts/usbmount.sh add %k $attr{serial}" 上面的$3就是$attr{serial}。如果想知道它到底是多少: # udevadm info -a -p $(udevadm info -q path -n /dev/sddn) /dev/sddn中的sddn根据实际情况替换。Windows上可以用ChipGenius查看。 小结一下。用与debug_telnet.pub.key配对的私钥加密U盘序列号,存放到U盘根目录 的telnet.boot文件中,向C301插入该U盘,后台自动执行: /usr/sbin/telnetd -l /usr/sbin/login -u 360user:alpha360 -i br0 & 这招不错,第一必须物理接触,第二私钥在厂商手中,做为工程支持手段,值得学习。 很多工程支持手段与这招比,显得太山寨了。相比之下,某厂某远程服务有万能口令、 后台有后门shell,后者这种工程支持手段实在不敢恭维。 e是65537,n是1024-bits的: C8F0C7AEE68AB5289C85376BA59883FE79B743E5954AC82625327CC6F36A5EC2F86A9E02F4E49D9CC55AFA9411442EEAF08F3532516060B301BC1117695EF7C73168A81CDC08B498DB88E224D91F6ECA0FA80460CFCA950E6F5556F0D1690CE60C8426E94777AED8F73C90507652578DEAFC491DD2F74AD1B7C48113D8A34997 每次看到n,我都幻想自己有办法快速分解n的素因子。