光猫默认的路由模式实测在100M宽带下只能跑到60M左右,只有改成桥接模式才能跑满,不损失性能。但是改桥接需要给运营商打电话,有的时候不想麻烦他们,这时获取超级密码进行更改就是一个不错的选择了

分析

受到HGU B1型家庭网关获取超管密码这篇文章的启发,发现这个型号的光猫在自动上报配置后会重设超管密码为一个4位数字的弱密码,我们很容易用穷举法得到它。这或许也是故意留下的后门,以免彻底丢失密码的光猫无法使用。而该篇文章提及的访问http://192.168.1.1/romfile.cfg文件,在B2版本下已经被隐藏了,无法再获得密码。

获取步骤

光猫有一个user账户,密码一般为12345678,可以先尝试登陆看看是否正确,接下来要使用这个能够成功登录的账户绕过多次试错的冷却机制。
接下来访问后台192.168.1.1,浏览器打开开发者模式,在控制台粘贴如下代码,注意其中var web_Password = '12345678'要改成你的能成功登陆的user用户密码:

var issucc = 0;
for(i=0; i<10000 && !issucc; i++) {
  var web_Username = 'useradmin';
  var web_Password = (Array(4).join(0)+i).slice(-4);
  var obj = new Object;
  obj.web_login_name = web_Username;
  obj.web_login_password = b64_md5(web_Password);
  var cgipath = "/boaform/";
  var nonedatav = Math.random();
  sendRequest(cgipath+"web_login_exe", obj, function(data) {
    if(data == "success_telecomadmin") {
      alert(web_Password);
      issucc = 1;
    } else {
        console.log(data+": "+web_Password);
    }
  });
  var web_Username = 'user';
  var web_Password = '12345678';
  var obj = new Object;
  obj.web_login_name = web_Username;
  obj.web_login_password = b64_md5(web_Password);
  var cgipath = "/boaform/";
  var nonedatav = Math.random();
  sendRequest(cgipath+"web_login_exe", obj, function(data) {
	console.log("skip ban: "+data);
  });
}

接下来等待穷举完成,即可通过useradmin账户登录了。
success
特别注意,改桥接时不要影响到IPTV的设置(即不要将IPTV设置为桥接),广电的IPTV可能因为组播以及路由问题,无法让电视盒子自己DHCP,只能由光猫获取IP,并配置了静态路由和DNS。
domain
route
但是,这样一来IPTV机顶盒将无法上网,只能看电视,这是唯一一点遗憾。如果有更好的稳定方法,欢迎在评论区一起讨论。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐