诺甘农圆盘

参考资料收集库

用户工具

站点工具


小米路由器_r2d:ssh_密码计算工具

小米路由器R2D的SSH密码计算工具

小米路由器提供了官方的SSH工具,在 http://d.miwifi.com/rom/ssh 上开启SSH功能,下载SSH工具包,将ssh_rom.bin文件拷贝到U盘,然后长按RESET键进入U盘恢复模式。

下面分析一下官方SSH工具的工作原理:

用解包工具mkxqimage将ssh_rom.bin文件解包,得到脚本文件upsetting.sh,内容为:

 #!/bin/sh
 
 nvram set ssh_en=1
 nvram set flag_init_root_pwd=1
 nvram commit
</source>

执行脚本文件upsetting.sh后,将ssh_en设置为1,同时设置了flag_init_root_pwd项。当正式启动时,/usr/sbin/boot_check脚本检测到flag_init_root_pwd=1时,自动修改root用户密码,具体脚本为:

<source lang="bash" line>
 flg_init_pwd=`nvram get flag_init_root_pwd`
 if [[|"$flg_init_pwd" = "1" ]]; then
 	init_pwd=`mkxqimage -I`
 	(echo $init_pwd; sleep 1; echo $init_pwd) | passwd root
 	nvram unset flag_init_root_pwd
 	nvram commit
 fi

初始密码是mkxqimage -I的结果,实际是根据路由器的序列号计算得到。路由器的序列号印在底盖上,12位数字,如:561000088888

初始密码计算算法为:

# substr(md5(SN+"A2E371B0-B34B-48A5-8C40-A7133F3B5D88"), 0, 8)

引用资料来源

小米路由器_r2d/ssh_密码计算工具.txt · 最后更改: 2019/09/30 21:52 由 127.0.0.1