光猫折腾记 | 获取超级管理员密码&开启telnet&IPv6&桥接宽带


0x00 前言

最近觉得家里的网速有点慢,上着网课或者看着视频,WiFi 连接的设备同时在用的话就开始卡了 emmm就很难受。🙁

然后又听说三大运营商的宽带差不多都分配 IPv6 了,手机的话联通流量分配 IPv6 地址也有一段时间了,开热点还能下发 IPv6 到其他设备(然鹅我这里的移动好像还没有)。

于是就想折腾一下家里的光猫/路由器,反正就是瞎折腾吧。

这个光猫是有点年纪的 HG260GS-U,烽火家的。 硬件版本 BCM.V2.0 ,软件版本 G00Y1.00M0001

大概的内容就是——

获取了超级管理员密码,开启了 Telnet 管理,启用了 IPv6,并尝试了宽带桥接的改造等等。



0x01 获取超级管理员密码

通过光猫的管理地址连接到管理页面,一般是 192.168.1.1。登录界面如下。

login

光猫背面有一个 user 用户的信息,登录之后的界面功能贼少,只能看一下连接状态,设置一下WIFI、静态路由之类的基础配置,连宽带连接都设置不了。

于是想到通过超级管理员进行登录。

在网上搜了各种通用密码,比如用户名、密码分别为

CUAdmin CUAdmin

telecomadmin nE7jA%5m

CMCCadmin aDm8H%MdA

fiberhomehg2x0 hg2x0 (工程账号)

有可能登录是这个网址:http://192.168.1.1/cu.html

然而都没有用!

哦对了,这个工程账号(据说是隐藏用户)这样开启:

访问 http://192.168.1.1/logoffaccount.html ,将隐藏用户设置为启用,而后点击保存/应用即可。

hidden_user

(然而我这里没用

于是看了看网上大佬们的骚操作,发现可以通过备份设置的办法获取到超级管理员账号及密码。

Step 1 以普通用户身份登录光猫

就是光猫背后的那个用户名密码啦。

Step 2 下载设置备份文件

访问 http://192.168.1.1/backupsettings.conf ,下载配置文件backupsettings.conf

注意一定要在登陆后才下载,否则下载得到的文件并没有配置信息,而是一个让你登录界面的 HTML 文件。

错误示范

正确的文件是一个xml文本,例如下面这样的。

正确示范

可以发现里面保存了所有的配置信息,WAN连接、LAN连接、WiFi及WPS、宽带信息、Loid等等都有,当然,超级用户信息也在。

而且这个文件没有(明显的)加密,最多只是用了个base64

超级用户

超级管理员用户就在DeviceInfo下的X_CMCC_TeleComAccount里。

用户名为admin密码通过base64解码可以得到为Cmcc10086#

(By the way,user用户的密码在这里啦↓

user信息

Step3 登录试试

成功登录,界面比user功能多得多了,可以配置宽带信息、VLAN、USB存储远程下载等等了。

登陆后的界面



0x02 开启 Telnet 管理

按理说是可以利用工程账号进去开启 Telnet 的,然而我也不知道为啥进不去emmm

找个网上的图↓

开启telnet

那就**直接改配置文件好吧 **233333

Step 1 修改配置文件

首先备份一份上面下载的配置文件(改错了还可以恢复嘛),而后搜索telnet把它设为TRUE

注意大小写呀!

当然如果想要开启 FTP 的话可以顺便开启一下hhh。

开启telnet

Step 2 上传配置文件

访问更新路由器配置的页面 http://192.168.1.1/updatesettings.html

(可能需要登录)

updatesettings

选择修改后的配置文件,点击 更新配置

Step 3 重启光猫

(如果没有自动重启的话

可以选择在 管理-设备管理-设备重启 里重启,当然也可以直接关掉电源再打开233。怎么喜欢怎么来。

reboot

Step4 telnet 连接光猫

而后就可以通过 telnet 连接到你的光猫了。

用户名和密码都是admin

telnet

它用的是 BCM96838 这个芯片。(感兴趣可以搜一搜

发现它并没有 cd 这个command。

 > help
?
help
logout
exit
quit
reboot
brctl
cat
virtualserver
ddns
df
loglevel
logdest
dumpcfg
dumpmdm
dumpeid
mdm
meminfo
psp
kill
dumpsysinfo
dnsproxy
syslog
echo
ifconfig
ping
ps
pwd
sntp
sysinfo
tftp
wlctl
showOmciStats
laser
omci
omcipm
dumpOmciVoice
dumpOmciEnet
dumpOmciGem
laser
arp
defaultgateway
dhcpserver
dns
lan
lanhosts
passwd
ppp
restoredefault
route
save
swversion
uptime
cfgupdate
swupdate
exitOnIdle
wan
set
get
gendefsettings
loaddefsettings
checkdefsettings
composenewsettings
create_merge_presetting
transform_presetting
upgrade
ledctl
usbtest
ls
facmode
simcard
voipteststart
voiptestend
voice_test
phone_connect
recordpcmstart
recordpcmend
StartCall
StopCall
StartRing
StopRing
PlayCNGTone
StopCNGTone
PlayDTMFTone
fhvoice
redirect
mcpctl
itms
wifi
card

不过好像功能也不少的亚子。

看了一下存储。

df

内存。

meminfo

然后发现有一个隐藏的sh指令,可以支持大部分的 Linux 指令啦~

看了一下系统信息。

# uname -a
Linux (none) 3.4.11-rt19 #3 SMP PREEMPT Mon Jul 4 19:17:02 CST 2016 mips GNU/Linux

webs 目录下为所有的前端网页的文件。

sh

FHFactoryCheck.html                  ipsec.html
FH_Simple_CloseHideWeb.html          ipsecview.html
FH_Simple_FactoryRestore.html        ipv6lancfg.html
FH_Simple_OpenHideWeb.html           itms_right.html
StaticIpAdd.html                     itms_wrong.html
StaticIpErr.html                     itmsuploadfinish.html
areacode.js                          itmsuploadfinish_guangdong.html
backupsettings.html                  itmsuploadingimage.html
buildinfo.html                       itmsuploadingimage_guangdong.html
certadd.html                         itmsuploadreboot.html
certcaimport.html                    jquery.js
certcaview.html                      lanvlancfg.html
certimport.html                      lockerror.html
certloadsigned.html                  logconfig.html
certlocalview.html                   login.html
certreqshow.html                     loginerror.html
certshow.html                        logintro.html
cfgepon.html                         logo.html
cfgeth.html                          logoffaccount.html
cfggpon.html                         logout.html
codepassword.html                    logview.html
colors.css                           macstudy.html
ctExternalApInfo_user.html           main.html
ctExternalApInfooffline.html         mainCT.html
ctStaticIpAdd.html                   menuCT.js
ctTracerouteresult.html              menuTitle.js
ctalgcfg.html                        menuTree.js
ctdhcpcfg.html                       multicast.html
ctdhcpdevice.html                    password.html
ctdiag.html                          pic
ctdiag_ping.html                     platconfig.html
ctdiag_tracert.html                  portName.js
ctdiagmng.html                       portalmngr.html
ctdiagsystem.html                    portmap.html
ctdiagxPon.html                      portmapadd.html
ctdms.html                           portmapedit.html
ctdnsconfig.html                     pradd.html
cteponinterfaceinfo.html             prmngr.html
ctexternalApInfo.html                pswdadmin.html
ctgponinterfaceinfo.html             pswduser.html
ctigmpproxy.html                     qoscls.html
ctigmpsnooping.html                  qosclsedit.html
ctinfo.html                          qosclsview.html
ctinfo_fujian.html                   qosqmgmt.html
ctipflt.html                         qosqueue.html
ctipfltblack.html                    qosqueueadd.html
ctipfltwhite.html                    qosview.html
ctlanbind.html                       rebootinfo.html
ctlogconfig.html                     redirect.html
ctlogflashview.html                  redirect_cardoffline.html
ctlogintro.html                      redirect_portal.html
ctlogview.html                       redirect_portal_confirm.html
ctloid.html                          redirect_uploadimage.html
ctmacflt.html                        register.html
ctmacpolicy.html                     register_anhui.html
ctmldproxy.html                      register_fail.html
ctmldsnooping.html                   register_fujian.html
ctmulticastvlan.html                 register_guangdong.html
ctpingresult.html                    register_guangdong_fail.html
ctpswdrelogin.html                   register_hainan.html
ctroute6add.html                     register_ing.html
ctstatslan.html                      register_ing_anhui.html
ctstatslan_user.html                 register_ing_card.html
ctusererror.html                     register_ing_fujian.html
ctuserpswd.html                      register_ing_guangdong.html
ctwan_ethinfo.html                   register_ing_guangdong_1.html
ctwanconfig.html                     register_ing_guangdong_refresh.html
ctwanconfig_user.html                register_ing_hainan.html
ctwaninfo.html                       register_ing_iframe.html
ctwaninfo6.html                      register_ing_iframe_refresh.html
ctwaninfo6_user.html                 register_ing_iframe_refresh_1.html
ctwaninfo_user.html                  register_ing_sichuan.html
ctwaninfoall.html                    register_limit.html
ctwaninfoallv6.html                  register_loid.html
ctwlanInfo.html                      register_restore.html
ctwlanInfo_user.html                 register_restore_remote.html
ctwlcfg.html                         register_restore_retry.html
ctwlsecurity.html                    register_restore_retry_sichuan.html
ddnsadd.html                         register_restore_sichuan.html
defaultsettings.html                 register_restoreinfo.html
dhcpinfo.html                        register_sichuan.html
diaginform.html                      registered_chongqing.html
dnscfg.html                          registered_fujian.html
dnsproxycfg.html                     registered_guangdong.html
dosprotect.html                      registered_hunan.html
downloadFile.html                    resetrouter.html
enableipv6.html                      restoreinfo.html
engdebug.html                        restoresettings.html
eponadderr.html                      restrain.html
epondelerr.html                      ripcfg.html
ethadderr.html                       routeadd.html
ethdelerr.html                       routetbl.html
exporting.js                         rtdefaultcfg.html
externalapcfg.html                   rtdefaultcfgerr.html
externalapcfgoffline.html            rtroutecfg.html
externalapsecurity.html              scdmz.html
externalapsecurityoffline.html       scinflt.html
factorymode.html                     scinfltview.html
fbctwanconfig.html                   scmacflt.html
fhvoiceh248dsp.html                  scmacfltview.html
fhvoiceh248mgc.html                  scmacpolicy.html
fhvoiceh248ngn.html                  scoutflt.html
fhvoiceh248port.html                 scoutfltview.html
fhvoiceprotocol.html                 scvrtsrv.html
fhvoicesettings.html                 servmngr.html
fhvoicesipadvance.html               simcardoffline.html
fhvoicesipbasic.html                 sipregstatus.html
fhvoicesipdigitmap.html              sipteleview.html
fhvoicesipfax.html                   sntpcfg.html
fhvoicesipuserline.html              speed.html
firewall.html                        statsifc.html
footer.html                          statsifcreset.html
ftpcfg.html                          statswan.html
gponadderr.html                      statswanreset.html
gpondelerr.html                      storageusraccadd.html
help_manage_device.html              stylemain.css
help_manage_file.html                stylesCT.css
help_manage_keep.html                surprise.html
help_manage_user.html                todadd.html
help_net_QOS.html                    todmngrview.html
help_net_WLAN.html                   tr69cfg.html
help_net_dhcp.html                   tr69cfgview.html
help_net_externalap.html             tr69connect.html
help_net_network.html                traffictl.html
help_net_remote.html                 traffictladd.html
help_net_route.html                  updatesettings.html
help_net_time.html                   upload.html
help_net_voice.html                  upload_chongqing.html
help_net_voip.html                   uploadinfo.html
help_safe_firewall.html              upnpcfg.html
help_safe_mac.html                   url_add.html
help_safe_port.html                  urlfilter.html
help_safe_wan.html                   urlfilterErr.html
help_status_device.html              usbbackup.html
help_status_net.html                 usbbackuphandle.html
help_status_remote.html              usbbackupresult.html
help_status_user.html                usbinfo.html
help_status_voip.html                usbxdown.html
help_use_IGMP.html                   util.js
help_use_MLD.html                    wlcfg.html
help_use_UPNP.html                   wlcfg_jiangsu.html
help_use_VOIP.html                   wlcfg_zhejiang.html
help_use_device.html                 wlcfg_zhejiang_user.html
help_use_dns.html                    wlcfgadv.html
help_use_nat.html                    wlrefresh.html
help_use_usual.html                  wlsecurity.html
highcharts.js                        wlsecurity_jiangsu.html
hlpethconn.html                      wlsecurity_zhejiang.html
hlpwlconn.html                       wlsecurity_zhejiang_user.html
index.html                           wlshared.html
ipsconfig.html                       wlwapias.html

然后还可以发现之前的配置文件在 /fhconf/backpresettings.conf

日志文件在/fhlog/messages

/rom/etc/wlan 目录下好像有一些网卡芯片的驱动(?

rom

然后在某个目录下找到了各种默认配置文件emmm

default_settings

其他的后面再慢慢玩吧(

还有提醒一下,telnet 不用的话最好还是关掉吧,防止别人连上光猫改了你的配置就不好了呢。



0x03 再看光猫参数 & 测速

光猫参数

上网搜了一下这个光猫的参数。(可能有所区别)

烽火HG260GS-U

产品特点

  • 支持GPON接口,4FE+2POTS,LAN1口=1G LAN 2.3.4口=100M
  • 支持路由/桥混合转发。
  • 支持VLAN连接。
  • 提供2.4GHz 802.11b/g/n无线接入功能,最高速率可达270Mbps,覆盖范围30m~100m。
  • 支持SIP/MGCP/H.248等VOIP协议语音,支持多种语音编码器。
  • 强大的QoS能力,保障多业务环境下的VoIP、IPTV等关键业务的服务质量。
  • 支持TR-069远程管理:设备配置、版本升级、诊断等。
  • 支持WPS。
  • 支持Web方式,用户本地管理功能。
  • 支持多SSID,提供多个虚拟无线网络。
  • 支持VPN穿越 ,基于IPSec/L2TP。
  • 支持IPv4/v6,TCP/UDP协议,支持IPv6开启DS-lite和双栈功能。
  • 芯片集成度高,功耗小,性能稳定。

哇呜,它是支持千兆的啊!

不过只有1口支持1Gbps,其他都是100Mbps的emmm

于是直接用网线连接光猫测了一下,果然是这样。

之前都没注意这个问题唉!是不是因为这个问题影响了网速啊啊啊啊嘤嘤嘤。(其实我也不知道我家宽带有多少带宽)

来测个速看看好了。

测速

这是 连接 WiFi 的测速结果↓。

WiFi测速

通过网线直连到除1口外的任意一个 LAN 口,再次测速。

LAN2-4测速

差不多跑满100Mbps的带宽了。

那再来看看 LAN1 的千兆口吧。

LAN1测速

???

你在逗我嘛?!哇呜原来有差不多150Mbps的啊!

原来受限于 LAN 口的带宽啊!

气死我了,连接WiFi的话只有差不多1/3的速度啊,草(一种植物)。

然后把之前连在光猫后的无线路由器接到了 LAN1 口,再登上路由器一看,原来它也只支持百兆带宽emmm

router

不过怎么说好呢,毕竟这光猫和路由器都有些年纪了,那时候千兆还没普及呢,可能用的才是10M/50M最多也不超过100M的宽带呢。

所以光猫有一个千兆口也很不错了呢233333.(摊手.gif

网线的讲究

噢对了,还有一个好玩的事。。。

要用上千兆以太网,不仅需要光猫、路由器支持,还要你自己的设备支持,如果有线连接的话网线还至少要超五类线

但是还要注意距离限制,超过一定的距离(如100m)也不行了,类别越高传输的频率越高则允许的距离就越小。(啊大佬你用光纤?打扰了。

我用网线连接的时候,最开始用的是一根比较老的 CAT-5e(超五类)线,可能是端口接触不大好或者线路老化的原因吧,实际网卡只协商到了100Mbps。换了一根新的网线(好像也是CAT-5e)就有1Gbps了。

然而,这根网线不够长,我用连接器把两根都能通千兆的网线连一起再连到电脑,这时网口又协商到100Mbps了emmm

看来这个网线抗干扰能力不大行呀,千兆网的有线传输要求还是挺严格的。

不过现在用的基本就六类线以上了吧,买网线还有装修布线什么的时候要注意一下这个问题。

还有买网线不要买扁的那种,剖面圆形那种就好。(感觉算是传输线理论



0x04 启用 IPv6

前面看光猫的参数,发现支持 IPv6 唉!

听说三大运营商的宽带基本部署 IPv6 了,不过估计设置里没开启,本地也没有分配公网地址,这次就来折腾一下吧。

先说一下,我自己对IPv6这一块都不大了解,这也是第一次尝试设置这个。

包括前缀分配什么的我都不清楚,所以这里的说法有可能存在错误,大佬们看到的话欢迎和我交流呀!

Step 1 以超级管理员身份登录光猫

用上面获取的用户名密码登录。

在设置前,查看状态-网络侧信息-IPv6 连接信息,应该是空的。而 IPv4 连接信息里有一个连接的描述里是带有INTERNET的。

(假装这里有截图)

Step 2 获取当前设置的参数

首先在连接名称里选择带有INTERNET的选项,然后把这一页截个图或者拍照备份一下。(重要)

最好也备份一下设置文件(同 0x01)!

这里面的VLAN ID、MTU是后面的依据。

Step 3 新建宽带连接

这里前提是知道宽带的密码,如果不知道的话,可以在 0x01 中获取到的备份文件里找到嘿嘿嘿(仅做了base64加密)。

新建一个WAN连接,模式选择Route(路由),协议模式选择IPv4 & IPv6(这就是目的所在喵!)。

PPPoE,MTU里填上一步骤的参数;勾选启用VlanVlan ID填上一步参数

IPv6地址分配机制的话,我这里自动获取DHCPv6都行,不过建议选自动获取吧。。。(不大清楚

获取前缀勾上吧,好像可以靠这个下发IPv6.(?

服务模式选择INTERNET

绑定端口就是你想要通过这个WAN进行连接网络的端口,如果不清楚的话全勾上就行了。如果有IPTV的话注意不要勾对应的端口。当然有其他需求的自己再考虑。它这里注明了的。

注: WAN连接之间不能共享绑定端口,最后绑定端口的WAN连接绑定操作将冲掉之前其它WAN连接对该端口的绑定操作!

大概的界面类似于这样的。不同设备大同小异的啦。

IPv6_Config

而后点击保存/应用

Step 4 IPv6 DHCP 配置

(这一块其实我也不大清楚emmm

大概是这样吧

IPv6_DHCPConfig

貌似DHCPv6是私网,Radvd是利用获取的前缀下发公网的地址。

网上大概这么说的↓。

在IPV6的自动配置中,分为两种技术
一种是传统的有状态(stateful),典型代表就是与IPv4时代相对应的DHCPv6,
一种是IPv6的无状态(stateless)自动配置,典型代表是Radvd。这是IPv6协议的一个突出特点:支持网络节点的地址自动配置。

在无状态地址自动配置方式下,网络接口接收路由器宣告的全局地址前缀,再结合接口ID得到一个可聚集全局单播地址。在有状态地址自动配置的方式下,主要采用动态主机配置协议(DHCP),需要配备专门的DHCP服务器,网络接口通过客户机/服务器模式从DHCP服务器处得到地址配置信息。

具体来说,以RADVD为代表的无状态自动配置不需要消耗很多机器资源,也不像传统DHCP一样需要维护一个本地数据库来维护地址分配状态,他只是进行广播前缀地址,客户端收到这种广播后再自己使用EUI64算法生成全球唯一的IPv6地址,进行自我配置。

还有

<1>radvd用于无状态自动配置地址,客户端通过网络接口接收路由器宣告的全局地址前缀,再结合接口ID形成全球单播地址,但是这种配置不能获取DNS。

<2>dhcpv6用于有状态自动配置地址,类似于ipv4的dhcp,客户端从服务器的地址池中配置地址,可获取到DNS。

(然后应该还要配置一下 IPv6 DNS Proxy这个我也不大清楚emmm

Step 5 确认连接状态

返回到状态-网络侧信息,分别看看IPv4和v6的连接信息。留意协议中带有IPv4&IPv6的状态。

刚开始可能连不上,过一段时间就连上了。

如果还连不上的话,将之前带有 INTERNET 的那个WAN连接给禁用或删除就好了。

(不过如果有个TR069那个运营商配置下发的就自己看着办了,删了可以不受运营商进行配置下发和上报,有影响的话新建一个或者修改上一步的服务模式就好了。

到这里我惊喜地发现,貌似账号支持多播唉!不过这个光猫里自然不支持多播叠加的了。可以使用桥接宽带让后面的路由器做处理啦。(后面再说)

于是尝试了一下成功连了两个,其中绑定端口设置成不一样的。不过不知道最多可以几播hhh。

IPv4_ConnectInfo

IPv6_ConnectInfo

连接光猫是可以下发 IPv6 公网地址的。

IPv6_ConnectInfo2

然后发现那个外接的无线路由器也不支持 IPv6,气死了(后面换一个

不过也有解决方案的,就是把网线连接到无线路由器的LAN口而不是WAN口,关闭它的 DHCP 功能,由光猫直接分配 IP 地址就行了。



然而有个大问题,就是我的 IPv6 没有Internet访问权限。手动配置了DNS也不行。

ping -6 ipv6.baidu.com通不了。

tracert 240c::6666 发现到我的光猫就出不去了。

试了一下在光猫上的诊断里用IPv6进行ping也没有连接。

不知道哪里设置有问题了,很懵(摊手。

求大佬们指点一下。



0x05 宽带桥接改造

前面说支持多播嘛,然后就想到利用光猫桥接宽带,然后再利用后面的路由器(软路由/硬路由)进行拨号。

或者是这种情况,网络流量较大,路由较复杂等光猫难以承受或者不够稳定,也可以试试桥接的方案。

方法类似于 0x04

大概就像图里这样吧。

勾选启用VlanVLAN ID 也和之前配置INTERNET的一样。

绑定端口建议选端口1,毕竟是千兆口嘛!

桥接设置

之后就可以直接通过 LAN1 连接路由器或者电脑进行拨号了。

拨号后也会分配公网的 IPv6 地址。(然而我这里的 IPv6 还是没有Internet访问权限,估计是运营商的问题吧

(假装这里有截图)

当然,要实现桥接改造,你还可以尝试直接修改配置文件的方案(超硬核),具体请参考这里



0x06 其他玩意

有次在访问一个光猫的页面时输错了网址,正好发现了光猫用的 HTTP Server 是 micro_httpd。

发现指向的网站还能访问。这是个轻量级的服务器了,正好也适合在这种小设备上跑了。

404

micro_httpd

这个光猫还支持远程下载,可以通过 USB 连接外部设备,开启 FTP 服务器进行访问。

不过感觉这个 USB 应该也是2.0的,勉强用用还可以吧,也没尝试过233.



0x07 小结

折腾了好久这个有点古老的光猫 emmm嘤嘤嘤

于是乎本文介绍的内容包括:

通过配置备份文件获取超级管理员密码,开启 Telnet 管理,启用 IPv6,宽带桥接的改造等等。

是时候换个路由器了,只有大概1/3的网速太亏了!

怎么说好呢,感觉其实并没有干什么正事的亚子。。。

等我学完通信网络(计算机网络)说不定会有更深入的理解吧233333.

欢迎大佬们来交流交流呢!

还有,以上内容仅供学习研究,请在合理合法范围内使用,禁止商用。

转载记得注明出处呀!

溜了溜了(



Reference

HG260GS-U光猫拆解与登录解码

北京联通光宽带及IPTV折腾笔记(二)–北京联通HG260GS-U WO-37开启超级管理员的方法

轻松开启中国移动IPV6连接,早入畅游ipv6世界

烽火HG220G-U 2.03+ / HG2201U 5.0+光猫改桥接教程

etc.

(大部分都好古老了


文章作者: MiaoTony
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 MiaoTony !
评论
  目录