溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

CSRF跨站請求偽造的實例分析

發(fā)布時間:2021-12-16 18:15:06 來源:億速云 閱讀:243 作者:柒染 欄目:網絡管理

CSRF跨站請求偽造的實例分析,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

簡介:

跨站請求偽造(英語:Cross-site request forgery),也被稱為 one-click attack或者 session riding,通??s寫為 CSRF或者 XSRF, 是一種挾制用戶在當前已登錄的Web應用程序上執(zhí)行非本意的操作的攻擊方法。跟跨網站腳本(XSS)相比,XSS利用的是用戶對指定網站的信任,CSRF 利用的是網站對用戶網頁瀏覽器的信任。

漏洞舉例:

假如一家銀行用以運行轉賬操作的URL地址如下:http://www.examplebank.com/withdraw?account=AccoutName&amount=1000&for=PayeeName

那么,一個惡意攻擊者可以在另一個網站上放置如下代碼:

<img src="http://www.examplebank.com/withdraw?account=Alice&amount=1000&for=Badman">

如果有賬戶名為Alice的用戶訪問了惡意站點,而她之前剛訪問過銀行不久,登錄信息尚未過期,那么她就會損失1000資金。

這種惡意的網址可以有很多種形式,藏身于網頁中的許多地方。此外,攻擊者也不需要控制放置惡意網址的網站。例如他可以將這種地址藏在論壇,博客等任何用戶生成內容的網站中。這意味著如果服務端沒有合適的防御措施的話,用戶即使訪問熟悉的可信網站也有受攻擊的危險。

透過例子能夠看出,攻擊者并不能通過CSRF攻擊來直接獲取用戶的賬戶控制權,也不能直接竊取用戶的任何信息。他們能做到的,是欺騙用戶瀏覽器,讓其以用戶的名義運行操作。

漏洞檢測:

數(shù)據包無token和referer驗證:

無token驗證并且無referer驗證時,就基本存在跨站請求偽造,但基于功能點不同,一些為無意義無危害的跨站請求偽造。

提交數(shù)據包時抓包刪除referer字段,如果不報錯,則基本存在跨域請求偽造,GET型構造鏈接,POST型寫一個提交表單,測試有跨域情況下提交的數(shù)據包是否生效。

數(shù)據包無token有referer驗證:

只有referer驗證時,可嘗試空referer,或者嘗試域名偽造。

例如只驗證referer是否存在bylibrary.cn時:

偽造三級域名為bylibrary.cn.baidu.com來繞過referer字段驗證;

在bylibrary.cn網站下發(fā)帖引導別人點擊我們構造的CSRF鏈接或者在此網站下發(fā)布我們構造的CSRF表單地址來繞過referer的檢測。

漏洞利用:

自動提交表單POC:
<html>
<head></head>
<body onload="form1.submit()">
<form id="form1" method="post" action="http://example.com">
<input type="hidden" name="sex" value="2" />
</form>
</body>
</html>

漏洞示例:

這里就用一個我測試中發(fā)現(xiàn)的csrf來作為示例吧,但這個并不能稱之為漏洞,廠商也忽略了,因為幾乎沒有危害,那么就演示一下大概的利用流程

首先出現(xiàn)csrf的地方為途虎養(yǎng)車個人中心:https://my.tuhu.cn/Account/UserInfo.html

1.修改個人信息用戶名和真實姓名時抓包

CSRF跨站請求偽造的實例分析

2.利用burp的CSRF測試插件生成html文件進行測試

CSRF跨站請求偽造的實例分析

CSRF跨站請求偽造的實例分析

3.生成的POC修改用戶名為CSRFtest并保存為HTML文件

CSRF跨站請求偽造的實例分析

4.打開生成的html頁面點擊按鈕

CSRF跨站請求偽造的實例分析

5.查看用戶中心是否已經修改成功

CSRF跨站請求偽造的實例分析

已經修改成功了,但是沒有任何危害,只能修改用戶姓名和昵稱,SRC給忽略了。

漏洞防御:

檢測referer字段:

嚴格檢測referer字段,防止可以被繞過。

添加token校驗:

添加token偽隨機參數(shù),后端校驗token有效性。

附上一張我覺得對token原理表述的比較明白的圖:

CSRF跨站請求偽造的實例分析

簽名是關鍵,用戶提交的數(shù)據后臺先根據算法和密鑰對數(shù)據加密后和用戶提交時附帶的token校驗,相同則校驗通過,反之則校驗失敗,返回錯誤。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業(yè)資訊頻道,感謝您對億速云的支持。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI