Vivotek网络摄像头任意文件读取和命令执行漏洞 CVE-2017-9828,CVE-2017-9829

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

作者:**[超威蓝猫](https://blog.cal1.cn/)** 内网中有一些 Vivotek 的网络摄像头,用作监控。直接访问 80 端口的 Web 服务,在 配置 - 维护 - 导入/导出文件 里导出配置文件,得到一个包含有 etc 文件夹的 tar 包。从目录结构来看,像是把 Linux 上的文件打包了一样,推测摄像头上运行着嵌入式 Linux 系统。 于是对 Web 服务进行黑盒测试,然而并没有发现什么漏洞。访问 `/cgi-bin/viewer/getparam_cache.cgi?system_info_firmwareversion` 得知固件版本号是 `IB8369-VVTK-0102a` ,那么型号应该就是 IB8369 了。去官网下载固件进行分析,顺手点开了固件旁边的用户指南,在一堆 cgi 接口中发现了这么一条: ![](https://images.seebug.org/content/images/2017/06/----_20170626135054.png) 这里的 query_string 居然是绝对路径,尝试读取 /etc/passwd ,返回 "Permission denied" : ![](https://images.seebug.org/content/images/2017/06/----_20170626135128.png) 如果按照用户手册里的 /mnt/auto/CF/NCMF/xx 来,就是不会遇到前面的问题: ![](https://images.seebug.org/content/images/2017/06/----_20170626135153.png) 然而后端只检查了前缀是否为 /mnt/auto/ ,可以路径穿越到 / 下,读取任意文件: ![](https://images.seebug.org/content/images/2017/06/----_20170626135215.png) 以上是第一个漏洞。下面是命令注入: 从 ib8369firmware.zip 里解压出 IB8369-VVTK-0102a.flash.pkg 。去掉文件头部的 54 字节后用 BandiZip 可以提取出 rootfs.img ,是文件系统镜像。...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息