sqlmap绕过CSRF检测进行注入

最近在准备比赛,打sqlilabs时看了一下sqlmap的wiki,发现了–csrf-token和–csrf-url的参数,于是写了个php版本的bug试了一试。 同时也了解了一下大家对csrf注入的普遍做法:sqlmap+burp正则匹配,两相比较,还是sqlmap自带的功能比较方便。


写一个bug

CSRF的普遍防御方法是增加anti-csrf token,也就是一串不可预测的字符串。于是动手写了一个php版本防csrf的sqli脚本,这里写的并不规范,时间戳是可以被预测的,而且此脚本可以被绕过token检测,有兴趣可以琢磨一下。

 
 

<?php session_start(); //生成随机token $token = md5(time()); //获取name参数 $name = isset($_GET['name']) ? $_GET['name']: ''; //校验token if ($_GET['token'] == $_SESSION['token']) { //执行sql语句 $mysqli = new mysqli("127.0.0.1","root","root"); $mysqli->select_db("test"); if (!$mysqli->connect_error) { $query = "select * from admin where username =

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQLMap是一款常用的SQL注入工具,但是在一些情况下,可能会被Web应用程序防火墙(WAF)检测到并且阻止进一步的注入攻击。下面是一些绕过WAF的SQLMap注入技巧: 1. 修改HTTP头部 在SQLMap中使用`--headers`选项来修改HTTP头部,例如: ``` sqlmap -u "http://example.com?id=1" --headers="User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36" ``` 这将向请求添加一个自定义的User-Agent头部,从而绕过WAF的检测。 2. 使用代理 使用代理服务器时,WAF通常无法检测到SQL注入攻击,因为它只能检测来自客户端的请求。在SQLMap中使用`--proxy`选项来指定代理服务器,例如: ``` sqlmap -u "http://example.com?id=1" --proxy=http://127.0.0.1:8080 ``` 这将使用本地代理服务器进行注入攻击。 3. 使用多个随机User-Agent头部 使用多个随机的User-Agent头部可以使WAF难以检测到SQL注入攻击。在SQLMap中使用`--random-agent`选项来随机生成User-Agent头部,例如: ``` sqlmap -u "http://example.com?id=1" --random-agent ``` 这将在每个请求中使用随机生成的User-Agent头部。 4. 使用不同的HTTP方法 WAF通常只检测常见的HTTP方法,如GET和POST。在SQLMap中使用`--method`选项来指定不同的HTTP方法,例如: ``` sqlmap -u "http://example.com?id=1" --method=PUT ``` 这将使用PUT方法进行注入攻击,从而绕过WAF的检测。 5. 使用Tamper脚本 Tamper脚本是SQLMap的一个功能,可以修改SQL注入的请求和响应。在SQLMap中使用`--tamper`选项来指定Tamper脚本,例如: ``` sqlmap -u "http://example.com?id=1" --tamper=space2comment ``` 这将使用space2comment Tamper脚本,将空格转换为注释,从而绕过WAF的检测。 总之,以上这些技巧并不一定都能够成功绕过WAF的检测,要根据具体情况选择合适的方法。同时,为了避免被WAF检测到,也可以使用其他工具或手动注入的方式来进行攻击。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值