找回密码
 注册

QQ登录

只需一步,快速开始

查看: 712|回复: 2

陕西广电 HGU B3 超级密码暴力破解及单线复用

[复制链接]
发表于 2024-5-21 02:06:52 | 显示全部楼层 |阅读模式
坐标 029 ,最近拉了条陕西广电的 IPTV ,随线路还有一条 300M 宽带,想着可以做做联通 1000M 线路的冗余备份,顺便能折腾下陕西广电的组播源,毕竟广电的频道数量和码率吊打陕西联通。陕西联通 IPTV 就是个渣渣,频道少码率差不说,还不是单独组播线路,直播点播统统占我带宽。
然而广电小哥拉完线路调测完并不肯告诉我光猫超级密码,这必须不能忍。网上找了一圈发现古早 B1 、B2 版本的方法在 B3 光猫跟前统统不能用,但受到之前方法的启发,发现光猫上报配置之后依然会将 useradmin 的超级密码更改为随机 4 位数字的弱密码,那就很容易穷举出来。所以思路和 B2 版本一致,但 B2 判断登陆成功与否的方式在 B3 版本上已不适用。
通过抓包发现 B3 版本的光猫在登陆成功后会有个 302 重定向,并且尝试 3 次登陆失败后会有一个 180 秒的锁定时间,但在 3 次尝试中只要有一次正常的登陆就可以重置这个计数器。
所以总结一下思路:
  • 抓包分析登陆动作实现逻辑及 URL
  • useradmin 的密码从 0000 开始尝试至 9999 ,通过判断是否有 302 响应确定登陆成功与否
  • 为防止 3 次登陆锁定,需要每尝试 2 次之后成功登陆一下 user 普通用户重置计数器
    1 w, v) k# ~1 v" X
根据以上思路随便写了段 python ,以下代码:
  1. import requests& W1 R4 S2 f2 o  U$ p( Z6 a0 d
  2. from bs4 import BeautifulSoup
    5 w5 L1 y. z$ I/ g7 `% K0 g- H2 V
  3. import re
    . u: q2 h& j: Y

  4. 2 N5 A9 i5 X7 C2 |8 P; u0 k( X5 B3 I/ M
  5. for i in range(10000):1 W4 L  G8 T$ E3 R
  6. User_Agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.134 Safari/537.36"
      V2 `0 c2 }6 t* H9 g' M, ?

  7. 5 `' z1 W+ u1 i$ u+ z
  8. headers = {"User-Agent": User_Agent}
    + H7 J8 U/ u) i
  9. session = requests.Session(), D) n6 [7 A/ ^. J  x. L

  10. 0 A4 A" l: m1 d* C- f
  11. response = session.get("http://192.168.1.1")% W: q# T9 A: m
  12. cookies = session.cookies. b5 e: q; _3 [4 D3 Q3 W
  13. 9 V6 v" R0 [, k7 @1 F
  14. login_url = "http://192.168.1.1/boaform/admin/formLogin"  r# Y1 `# O' I& j' z0 h, Z5 z
  15. if (i % 2 == 1 or i == 0):
    ! q6 F+ q. |$ [, n8 A6 B& ]7 @8 u0 U
  16. # 防止密码错误次数到达上限,*替换成自己光猫的 user 密码
    ( f/ @! {6 ~8 Q; ~' {
  17. login_data = {"username": "user", "psd": "********", "login_in": "%B5%C7%C2%BC"}
    7 N# s# u, C) V2 |
  18. session.post(login_url, login_data, allow_redirects=False)/ z2 r# {: m- Y- t7 P+ h
  19. logout_url = "http://192.168.1.1/boaform/admin/formLogout"
    + Z: s4 |$ I$ b/ l4 r" f- f3 H. o
  20. session.post(logout_url, allow_redirects=False): }' ^3 ]3 q& h: u+ K9 j  l
  21. # 尝试以 useradmin 及 4 位数字密码登陆
    2 C1 o0 L$ ^" C7 w  i0 G  z4 @& X
  22. login_data = {"username": "useradmin", "psd": "{:04d}".format(i), "login_in": "%B5%C7%C2%BC"}( m% Q- f$ J0 z% w! S6 k
  23. res = session.post(login_url, login_data, allow_redirects=False)  a/ i" X: F7 w, }- m

  24. 6 I4 F4 Z7 g1 P
  25. # 检查是否有 302 重定向
    . |, j4 y0 l0 G5 r+ G, Z
  26. if res.status_code == 302:! S' B. r, ~) a. [& v; |& c; t+ C
  27. print("Login succeeded with password:", "{:04d}".format(i))$ m4 \+ _( c% J6 s/ E
  28. break8 q/ N3 `, W  |/ c. s
  29. else:
    * w$ k2 X9 _9 i7 u
  30. print("Login failed for password:", "{:04d}".format(i))
复制代码
懒得优化了,能跑就行' ?8 l: T# m6 k4 r& E+ e

$ X9 E2 G1 g8 i& x1 l
然而我这个随机密码居然是 9 开头 4 位数,以至于我一度认为脚本有问题。。。。8 T6 V8 u3 ?8 a2 h+ l) V& d
尝试登陆一下

5 K! ?% s1 y  w: p0 C$ ?
这下看起来舒服多了,随手翻翻 WAN 线路配置
' ?( [& {, U+ J- M

% A5 r; E$ I% ], `+ z" I$ R" v
vlan44 宽带,vlan45 iptv ,顺手想改个桥接,正苦于哪找 pppoe 签权信息,发现广电这个大善人居然就在页面上写着:( I; D2 @* r# p4 l8 x9 L

- ]% C6 J6 p" T9 m
那就不客气了,必须桥接走起' s( {7 P  K4 ?8 Q! u

2 c0 y& L+ Y2 l7 ~
- Y( i% Z% I6 v# t1 n' J3 o7 I" X
光猫里找了一圈并没找到 vlan mapping 的配置,总不能再拉根线到电视柜啊?. k: m* p/ f5 q# n" d$ y: x( x
那就进后台翻翻看配置藏哪了
, g0 s) d- U/ u; S

# a$ g# g3 S7 A& c% b& H$ Z
还真给翻到了
' C. Q( @) l0 u5 k$ e/ @! L( I+ ]  P
" v& h  j7 p* o- j: T
那不客气了,vlan 号懒得改就随手用它的,反正屋里多这俩也不冲突。% ^& E; ~2 }, l' h
广电盒子划 vlan45 里,接电视一切正常。2 F7 v7 l! Z( _4 G. Y0 C' {( m5 H
300M 宽带聊胜于无,写个冗余留给 wireguard ,ros 里新起个 vrf ,AC 里绑个无线没密码限速 8M 给隔壁小孩谋谋福利。4 A+ W' |2 B2 l* ?0 w6 |
iptv 组播源改天再折腾吧
- s8 ]6 {# O8 n3 \- u4 [& Z& ~5 I/ APS.iptv vlan45 要有 dhcp option60 才能拿到地址。陕西广电 option60 居然是'600831STB',呵呵。。& ?( \0 z! e3 L
8 D/ s4 A- O1 v* C1 i. p% Z
以上,有陕西广电的兄弟可以参考一下。
( s$ Z# ?& l, |# n) y0 v( {6 ]. ~
0 h' E1 v# H2 [5 r# b9 N

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

参与人数 1威望 +5 猫粮 +30 贡献 +5 收起 理由
YES东 + 5 + 30 + 5 很给力!

查看全部评分

发表于 2024-5-21 17:58:39 | 显示全部楼层
厉害了,不错的分享
发表于 2024-5-21 23:20:59 | 显示全部楼层
我只能说牛逼
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|宽带技术网 |网站地图 粤公网安备44152102000001号

GMT+8, 2025-5-3 05:04 , Processed in 0.023753 second(s), 6 queries , Redis On.

Powered by Discuz! X3.5 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表