首页
社区
课程
招聘
[翻译]使用Flash进行JSON CSRF攻击
发表于: 2017-10-9 23:33 7027

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

2017-10-9 23:33
7027

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:

以前的方法----使用form:

使用form构造JSON数据等然后发起post请求:


来源:057K9s2c8@1M7q4)9K6b7g2)9J5c8W2)9J5c8X3u0D9L8$3N6Q4x3X3g2G2M7r3g2F1M7$3g2U0N6i4u0A6N6s2W2J5k6i4y4W2j5i4u0U0K9q4)9J5k6h3y4G2L8g2)9J5c8U0t1H3x3e0u0Q4x3V1j5H3x3W2)9J5c8X3A6K6L8$3&6Q4x3X3c8U0M7%4u0X3i4K6u0V1N6$3W2@1K9q4)9J5k6s2m8S2M7X3q4E0k6i4c8W2M7W2)9J5k6s2m8S2k6r3c8A6L8X3N6Q4x3X3g2Z5N6r3#2D9


攻击场景2

如果应用检查Content-type和数据格式,那么可以借助flash和307重定向来实现攻击。

需求:

精心构造的Flash文件:

flash文件(.swf)包含着json格式的数据(攻击者想要发送给目标的数据),并链接到某个放在服务器上的php文件。


这里可以下载SWF文件,你可以下载并根据你的意愿编辑内容,我使用了FFDec来在Windows上编辑编译flash文件,你可以根据你的系统环境选择其它的工具。


crossdomain XML文件:

这个文件应该放在攻击者自己网站的主目录下,所以flash文件可以向攻击者的主机发起请求。


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 1
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回