pikachu 跨站請求偽造(CSRF)

2022-05-17 13:37:32 字數 1848 閱讀 1729

在csrf的攻擊場景中攻擊者會偽造乙個請求(整個請求一般是乙個鏈結),然後七篇目標使用者進行點選,使用者一旦點選了這個請求,整個攻擊也就完成了,所以csrf攻擊也被稱為"one click"攻擊。

(1)對目標**增刪改的地方進行標記,並觀察其邏輯,判斷你請求是否可以被偽造

例如:修改管理員賬號時,不需要驗證舊密碼,導致請求容易被偽造;

例如:對於敏感資訊的修改並沒有使用安全的token認證,導致請求容易被偽造。

(2)確認憑證的有效期(整個問題會提高csrf被利用的概率)

例如:雖然使用者退出或者關閉了瀏覽器,但是cookie仍然有效,或者session並沒有及時過期,導致csrf攻擊變的簡單。

例如我們要修改**使用者的資訊。

(1)**沒有對個人資訊修改的請求進行防csrf處理

(2)使用者本身已經登陸後台,並點選了攻擊者的惡意鏈結

csrf是借使用者的許可權完成攻擊,攻擊者並沒有拿到使用者的許可權;

xss是直接盜取了使用者的許可權,然後實施破壞。

1、來到我們的pikachu平台csrf(get)模組,開啟burp suite進行抓包。然後執行下圖中的操作。

2、來到burp suite,將擷取的資料報裡邊的get請求內容複製到notepad++,進行url鏈結的偽造。

4、這時候如果使用者重新整理自己的頁面,資訊確實被做了修改。

1、來到pikuchu平台的csrf(post)模組,我們同樣使用lucy進行登陸,登入之後我們將位址改回usa,性別改回girl。然後提交修改的資料,來到burp suite**結果。

token是如何防止csrf的?

csrf的主要問題是敏感操作的鏈結容易被偽造,我們需要做的就是讓這個鏈結不容易被偽造,我們可以採取每次請求,都增加乙個隨機碼(應該夠隨機,不容易偽造)的方法,這樣後台每次都會對隨機碼進行驗證。

下面我們來演示一下。

1、來到pikachu的csrf token 模組,仍然拿lucy進行登陸,然後進入到資訊修改頁面。

2、我們再看一下抓到的包。開啟burp suite

3、下面我們再來看一下原始碼。

1、增加token驗證(常用的做法)

對關鍵操作增加token引數,token值必須是隨機的,每次都不一樣

2、關於安全的會話管理(避免會話被利用)

(1)不要再客戶端儲存敏感資訊(比如身份認證資訊);

(2)測試直接關閉,退出時的會話過期機制;

(3)設定會話國企機制,比如幾分鐘內誤操作,自動登陸超時。

3、訪問控制安全管理

(1)敏感資訊的修改時需要對身份進行二次認證,例如:修改賬號時,需要驗證舊的密碼。

(2)敏感資訊的修改使用post,而不是get

(3)通過http投不中的referer來限制原頁面。

4、增加驗證碼:

一般用在登陸(防暴力破解),也可以用在其他重要資訊操作的表單中(需要考慮可用性)

跨站請求偽造

跨站請求偽造 英語 cross site request forgery 是一種挾制使用者在當前已登入的web應用程式上執行非本意的操作的攻擊方法。跟跨 指令碼 xss 相比,xss利用的是使用者對指定 的信任,csrf 利用的是 對使用者網頁瀏覽器的信任。防止方法 1,利用referer判斷,但是...

跨站請求偽造 CSRF

跨站請求偽造 csrf 顧名思義就是在其他非法 呼叫了正常 的介面,攻擊的方法是在頁面中包含惡意 或者鏈結,攻擊者認為被攻擊的使用者有權訪問另乙個 如果使用者在那個 的會話沒有過期,攻擊者就能執行未經授權的操作。大多數 rails 程式都使用 cookie 儲存會話,可能只把會話 id 儲存在 co...

CSRF跨站請求偽造

前面說到xss跨站指令碼攻擊,現在來個複雜度更高一點的csrf跨站請求偽造 首先說一下rsrf的幾個要點 1.rsrf是通過各種方法 站內發布鏈結,qq郵箱發布鏈結等 讓登入使用者觸發請求,在使用者不覺察的過程中對使用者資料進行篡改,進而實現攻擊 2.通過xss可以獲取到使用者的session id...