ghost65590 发表于 2016-8-24 11:40:19

华为光猫获得Root Shell(shell的root权限)详细说明,接力sdgaojian发帖。

首先要深深感谢“晓风残月”,没有他的深入研究、详细说明、以及程序贡献,就不会有所谓的Root shell;
其次感谢sdgaojian,没有他的实践、介绍,我就根本不可能解决问题!

为了方便各位坛友阅读,我先进行无差别扫盲:
HGU:Home Gateway Unit 家庭网关单元,说白了就是直接可以充当路由器的光猫(甚至可能封掉了桥接的功能);
SFU:SingleFamilyUnit,单个家庭用户单元;
SBU:SingleBusinessUnit,单个商业用户单元;
MDU:Multi-DwellingUnit,多住户单元;
MTU:Multi-TenantUnit,多租户单元;
EPON:Ethernet Passive Optical Network,以太网无源光网络(理论上GPON技术更优于EPON,但实际使用上各有千秋)
GPON:Gigabit Passive Optical Network,千兆无源光网络
ONU:Optical Network Unit,光网络单元(ONT是ONU的组成部分),我们可以理解为ONU是多局域网口的光猫,而ONT是单网口的光猫。
ONT:Optical Network Terminal,光网络终端。

问题描述:
我目前家里使用的光猫是烽火HG220G-U,北京联通EPON ONU定制版。各种被锁,无法搞定,因此网购了新光猫准备替换,网购的是华为HG8347R,联通天津HGU-EPON定制版。为了达到光猫替换的目的,我们必须先修改华为HG8347R的/mnt/jffs2/hw_boardinfo.xml硬件配置文件中的设备MAC地址为烽火的MAC,来欺骗局端。要修改该文件首先需要获得系统shell的root权限。HG8347R的web管理员帐户密码没有被锁,标准的华为telecomadmin/admintelecom,进入后开telnet,再使用终端登录,用root/admin可进。如telnet被封,可使用华为专用使能工具开telnet。telnet的WAP命令字符界面下,使用命令su,进入SuWAP,再敲入shell,进入busybox,发现被阉割,ls、cd 、vi等基础指令都禁止使用,怎么办?发现了sdgaojian关于ROOT Shell的帖子,研究之。

问题处理:
根据sdgaojian的帖子,得知已有由晓风残月提供的解决方案,但具体使用过程中,表述的不是很清楚,这里我详细说明下。
1.我们分别需要tftpd、puttygen、putty三个程序,和晓风残月编译好的payload-mod程序包(内含payload-mod.bin、dropbear、duit9rr.sh、hostkey四个关键文件)。


2.运行puttygen分别生成RSA公钥和私钥
a.点击生成证书,提示在界面内移动鼠标生成随机数据,不停移动鼠标一会儿后,证书生成:

b.获得公钥:上右图中字符串即为authorized_keys,可以复制另存为rsa.pub文件得到,也可点击“Save public key”,另存为rsa.pub文件得到(该文件上传至HG8347R系统后会被duit9rr.sh脚本自动改名为authorized_keys)。后续公钥会连同payload-mod程序包一起使用,公钥主要用于配合ssh服务器端(dropbear)使用。
c.获得私钥:点击“Save private key”得到与公钥相配套的私钥文件(PPK结尾),即为用于ssh客户端使用的私钥文件。


3.方案思路:先使用telnet登录HG8347R终端,然后将payload-mod.bin文件通过指令从tftpd服务器上传到HG8347R系统并自动加载执行,结果为HG8347R系统自动调用并执行duit9rr.sh脚本,分别再将dropbear、hostkey、rsa.pub从tftpd服务器上传至HG8347R系统后,自动启动SSH服务器dropbear。然后我们再在pc端运行putty,登录SSH,获得ROOT SHELL权限。


4.具体步骤:
a.确认光猫IP为192.168.1.1,设置连接光猫的PC的ip为192.168.1.2。运行tftpd,指定网卡为192.168.1.2。将payload-mod.bin、dropbear、duit9rr.sh、hostkey、rsa.pub五个文件放至tftpd同目录下;

b.telnet登录192.168.1.1,使用用户名:root,密码:admin登录。在WAP命令字符界面下,输入加载指令:
load pack by tftp svrip 192.168.1.2 remotefile payload-mod.bin
   如一切操作正确会显示:
WAP>load pack by tftp svrip 192.168.1.2 remotefile payload-mod.bin success!
WAP>Software Operation Successful!RetCode=0x0!
c.在PC端运行putty,进行配置,服务器ip:192.168.1.1,端口:2222,登录名:root,auth证书:选择您生成的PPK结尾的私钥文件。


    确认配置正确后,点击Open按钮,呵呵登录成功了。

    经过验证,已经获取root shell权限,下面的不用我教了,呵呵。祝各位愉快。相关文件我会一并提供。

butterfly_6 发表于 2016-10-31 22:49:03

确认楼主的方法是有效的,我的版本是V3R16C00SPC100固件!前提是把光猫IP改成192.168.1.1,SSH端口设置为2222不是默认的22,很多人卡在这里吧!证书可以直接用不用自己生成也可以的!

feiqiulin 发表于 2016-8-25 16:21:44

怎么回事 还是连接不上呢 麻烦解答一下呢谢谢

qq118130674 发表于 2016-8-25 14:13:36

这个获取方法是用于16固件吗?15的不知道适用吗?

lxsjz01 发表于 2016-8-25 12:01:29

卡罗特点 发表于 2016-8-25 11:56:34

虽然我现在没有用到最新固件,但是这个必须要收藏。顶起········

ghost65590 发表于 2016-8-24 11:58:34

压缩包内提供一份配套的公钥和私钥,文件都已经放到相关的程序目录内,直接使用即可。

setttt 发表于 2016-8-25 07:42:56

本帖最后由 setttt 于 2016-8-25 07:57 编辑

一早坐上高铁就看到这个,是与我完全不同的思路和解决方案,支持—下!

高版本固件的网友可以试—下,V300R016C00SPC100或V300R016C00SPC102试验可行不,据我实机试验,从R016C00SPC102开始之前所有的破解方法、包括各种华为使能工具已经失效!

linuxoa 发表于 2016-8-25 08:36:44

如果有固件文件,修改root fs是可行的, 无论R016什么版本。

lq2001 发表于 2016-8-25 09:50:59

这个给力,收藏备用!

hotpop 发表于 2016-8-25 09:52:39

本帖最后由 hotpop 于 2016-8-25 09:55 编辑

感谢LZ提供方法和思路,这5猫粮花的太值了。。哈哈
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 华为光猫获得Root Shell(shell的root权限)详细说明,接力sdgaojian发帖。