當前位置:
首頁 > 最新 > CSRF在Flash中的利用

CSRF在Flash中的利用

0×00 前言

CSRF(Cross-site request forgery)跨站請求偽造,也被稱為「One Click Attack」或者Session Riding,通常縮寫為CSRF或者XSRF,是一種對網站的惡意利用。儘管聽起來像跨站腳本(XSS),但它與XSS非常不同,XSS利用站點內的信任用戶,而CSRF則通過偽裝來自受信任用戶的請求來利用受信任的網站。與XSS攻擊相比,CSRF攻擊往往不大流行(因此對其進行防範的資源也相當稀少)和難以防範,所以被認為比XSS更具危險性。

對於大多數網站,瀏覽器請求會自動包含任何與網站相關的憑證,例如用戶的會話cookie,IP地址,Windows域憑證等等

大家都知道CSRF攻擊,使用burpsuite里自帶的增強工具(engagement tools)可以很容易地構造各種基本的CSRF攻擊POC,包括通過XHR請求進行的CSRF攻擊。

在這篇文章中,我將要談論我經常遇到的CSRF場景,並且我將儘可能嘗試講清楚.


接下來的兩種方法可以用在使用JSON格式數據進行post請求的情況下.比如{「name」:」test」, 「email」:」vic**.com」} ,有以下兩個場景.

場景1

伺服器查找json格式的數據,但不驗證內容類型

場景2

伺服器尋找json格式的數據並驗證Content-type,也就是application / json

注意:這個csrf攻擊只適用於應用程序只依賴json格式的數據或內容類型的應用程序/ json和數據格式檢查,如果有任何額外的csrf標記/ referer檢查的地方這將無法正常工作。


只要使用Fetch請求就可以完成,正如我們所知,在這種情況下,伺服器只檢查發布的數據是否格式正確,如果是,它將接受請求,而不管內容類型是否設置為文本/純文本

現在假設我們必須將這個測試數據提交給易受攻擊的應用程序:{「name」:「atta **er」,「e **il」:「attacker ***il.com」}

更新的方法:

以前的方法—-使用form:

使用form構造JSON數據等然後發起post請求:

如果應用程序不關心在我看到的大多數情況下發生的額外數據,這將使用有效的json格式的數據發出請求並填充一些額外的數據。如果沒有,總是有第二種使用方式。

在這裡即使應用程序正在驗證 內容類型和數據格式,這種攻擊也可以使用flash和307重定向來實現。

要求:

精心製作的Flash文件

跨域XML文件

帶有307個狀態的PHP文件

精心製作的flash文件:

這個flash(.swf)文件有我們的json格式的數據,攻擊者必須在目標應用程序上發布,並鏈接到託管的php文件。

這裡是測試的 SWF文件,你可以根據你的需要下載和編輯內容,我使用FFDec在Windows上進行編輯和編譯Flash文件,你可以根據你的環境檢查其他人。

crossdomain XML文件:

這個文件應該放在攻擊者網站的根目錄下,這樣Flash文件就可以向攻擊者的主機發送請求。

注意:如果Flash文件&重定向器頁面在同一個域,則不需要crossdomain文件。

重定向的PHP文件

Flash文件請求這個php文件,這將使307重定向到提到的應用程序端點,並且307是特殊的重定向,它將從Flash文件接收到的JSON數據也post到目標端點,並且CSRF將成功執行.

注意:因為這是基於快閃記憶體的,所以應該在瀏覽器中安裝快閃記憶體以使其工作。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 瘋貓網路 的精彩文章:

WordPress插件YITH WooCommerce Wishlist SQL注入漏洞
安全開發之掃描器迭代記:W9Scan

TAG:瘋貓網路 |