sqlmap INJECTION

参数:-p,--skip

sqlmap默认测试GET和POST参数;

当level>=2时,会测试HTTP Cookie头的值;当level>=3时,会测试User-Agent和HTTP Referer头的值。

使用-p参数可以设置要测试的参数。例如: -p "id,user-anget"

当使用的level值很大但是有个别参数不想测试的时候可以使用--skip参数。

例如:--skip="user-angent,referer"


有些web服务器使用了URL重写(伪静态),导致无法直接使用sqlmap测试参数,可以在想测试的参数后面加*,例如:

sqlmap -u "http://targeturl/param1/value1*/param2/value2/"


--dbms 指定数据库

如果认为目标网站存在注入点,但是sqlmap没检测出来,可以设置--dbms参数

--os 指定操作系统(windows、linux)


--invalid-bignum 指定无效的大数字

默认情况下id=13,sqlmap会变成id=-13来报错,当你想指定一个报错的大数值时,可以使用这个参数。

--invalid-logical 指定无效的逻辑

也可以指定把默认的id=-13的报错改成id=13 AND 18=19报错。


--no-cast

默认情况下,sqlmap榨取数据时,会将所有结果转换为字符串,并用空格替换NULL;

有些老版本mysql数据库可能不支持用空格替换NULL的处理机制,所以需要用到此参数。


--no-escape

出于混淆和避免出错的目的,默认情况下,当payload中用单引号界定字符串时,sqlmap使用char()编码的方法替换字符串。例如:

SELECT 'foo' —— SELECT CHAR(102)+CHAR(111)+CHAR(111)

使用--no-escape参数将关闭此功能。


--prefix,--suffix

在有些环境中,需要在注入的payload的前面或者后面加一些字符,来保证payload的正常执行。

例如,如果代码中是这样调用数据库的:

$query = "SELECT * FROM users WHERE id=(’" . $_GET[’id’] . "’) LIMIT 0, 1";

这时你就需要--prefix和--suffix参数了

sqlmap -u "http://1.1.1.1/sqlmap/mysql/get_str_brackets.php?id=1" -p id --prefix "’)" --suffix "AND (’abc’=’abc"

这时执行的sql语句为:

$query = "SELECT * FROM users WHERE id=(’1’) AND (’abc’=’abc’) LIMIT 0, 1";

注意:前提是已经得知了目标服务器查询时使用的sql语句,在基于错误的检测时,可能会把服务端的sql语句爆出来。


--tamper

使用--tamper参数对数据做修改来绕过WAF等设备的过滤。

tamper的位置:/usr/share/sqlmap/tamper/

例如:可以一次指定多个tamper,sqlmap会依次尝试,使用-v 3显示详细信息

root@kali:~# sqlmap -u "http://192.168.80.33/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4pq76dua60ghqc807869jrb9v2" --tamper="between.py,randomcase.py,space2comment.py" -v 3

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • http://192.168.136.131/sqlmap/mysql/get_int.php?id=1 当给sq...
    xuningbo阅读 10,452评论 2 22
  • sqlmap用户手册 说明:本文为转载,对原文中一些明显的拼写错误进行修正,并标注对自己有用的信息。 ======...
    wind_飘阅读 2,128评论 0 5
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,099评论 19 139
  • sqlmap也是渗透中常用的一个注入工具,其实在注入工具方面,一个sqlmap就足够用了,只要你用的熟,秒杀各种工...
    linkally阅读 6,974评论 1 40
  • sqlmap也是渗透中常用的一个注入工具,其实在注入工具方面,一个sqlmap就足够用了,只要你用的熟,秒杀各种工...
    查无此人asdasd阅读 1,575评论 0 1