0dayexperience/blind-sql-poc
GitHub: 0dayexperience/blind-sql-poc
基于布尔盲注与 ASCII 二分查找的 SQL 注入数据提取概念验证工具,用于安全教学与授权渗透测试。
Stars: 0 | Forks: 1
# 盲注 SQL 注入 – 概念验证
演示基于布尔值的盲注 SQL 注入技术,并结合 ASCII 二分查找。
此代码仅出于教育目的以及在
您拥有书面授权的系统上进行测试。
## 工作原理
1. **确认漏洞。** 通过检查服务器对
`AND 1=1`(真)和 `AND 1=2`(假)的响应差异来进行验证。
2. **二分查找。** 对于数据的每个字符,将字符范围缩小一半,
这要求每个字符最多进行 7 次查询,而不是线性暴力破解的约 50 次。
3. **数据提取。** 脚本演示了从 `users` 表中提取管理员密码的
前三个字符。
## 局限性
- 仅适用于演示环境(例如 DVWA、bWAPP)。
- 不适用于在未经授权的情况下攻击真实系统。
- 需要正确的 `SUCCESS_MARKER`,该标记对于每个应用程序都是唯一的。
## 防御
为防止此类攻击,建议:
- 使用参数化查询(prepared statements)。
- 配置 WAF,并设置用于检测 SQL 注入的规则。
- 定期进行代码审计和渗透测试。
## 运行
```
pip install -r requirements.txt
python poc.py
```
标签:bWAPP, CISA项目, DVWA, PoC, Python, SQLi, Web安全, 二分查找, 代码质量, 安全测试, 布尔盲注, 攻击性安全, 数据提取, 无后门, 时间盲注, 暴力破解, 概念验证, 盲注, 网络安全, 蓝队分析, 逆向工具, 隐私保护