家里有台机顶盒,是中兴 ZXV10 B760H,它是智能机顶盒,在写这篇文章之前,我已經对它进行了破解。(别看是“智能机顶盒”,但实际上已經让中国电信阉割的差不多了,只能看IPTV,我这个破解可以让它安装第三方app)
今天重点讲root。
你需要一个fat32文件系统的U盘及USB转TTL线和螺丝刀(淘宝有售)。
TTL线缆连接:
5(不接)6=GND
3(不接)4(不接)
RX=1 2=TX
接针座就在下面的图里,要注意,RX和TX是反的。
以上是硬件准备。
软件准备:
USB转TTL线的驱动程序(要先安装在电脑里)、PuTTY、SuperUser.apk,以及和该apk版本对应的su二进制文件。
打开putty,像图中这样设置:
然后点击"Open",并打开机顶盒电源开关。如果驱动程序和物理连接都正常的话,你应该就会看到Putty上开始滚动信息了。
等到出现提示符(见下图)时,输入:killall -s SIGKILL stbmc 并回车。(至于这个stbmc是什么,马上会讲到。)
这个stbmc是中兴自己做的,会开机自启动,它有以下几个功能:
1、给中兴的机顶盒现场配置工具(STBtool)做服务器守护进程。
2、每次启动时删掉 /system/bin/su 和 /system/xbin/su(致命)
3、机顶盒遥控器接收响应。
因为上面的第2个功能,所以给root造成了极大的困难。
stbmc在 /system/bin下面,我试着把它改名(提示符下输入: mv /system/bin/stbmc /system/bin/stbmc.bak,回车。)
然后再在提示符下输入reboot,回车之后,机顶盒会重启。但在重启后,麻烦来了:遥控器没反应了不说,android启动画面过后就直接黑屏了,压根没进当贝桌面。不过还好,PuTTY下的提示符还是可以操作的,我在提示符下把stbmc改回了原来的名字,再重启机顶盒,又正常了。
我查了一下,这个stbmc只在部分省份的这个型号的中兴机顶盒里有,很不幸,陕西中枪了。
我看到这个帖子:http://www.codeclip.com/3636.html 里面提到山东移动的ZXV10 B760H的stbmc里面都是明文shell命令,我想碰碰运气。
于是:cat /system/bin/stbmc,但很不幸,我看到的都是乱码,并非明文shell命令。各省看来是不一样的。
但我发现,把su改为其他名字,再放到 /system/bin/ 或 /system/xbin/ 下面,就不会被stbmc删掉了。
这样一来貌似只有一个解决办法了:让Superuser程序去监听改名后的su二进制文件发来的授权请求,并给予提示,由用户来决定是否允许或拒绝。我目前还在研究,可能要自己写个Superuser程序了。
如果解决了这个问题,就只需要把SuperUser.apk以及改名后的su二进制文件copy到对应的系统目录里即可。
附:失败的提纲