1. 程式人生 > >如何挖掘CSRF漏洞、CSRF漏洞修補建議

如何挖掘CSRF漏洞、CSRF漏洞修補建議

序:
拿人家的手短,吃人家的嘴軟。我又吃了壞蛋的飯,又拿了春秋的禮物,在壞蛋的脅迫下,在高鐵上揮淚寫下了這篇文章。因為高鐵上沒網,你們看到這篇文章的時候,估計我已經回去了。現在是北京時間2016年08月17日20:58:14   
壞蛋辭職了,壞蛋辭職了,王八蛋壞蛋,壞蛋,你不是人,吃喝嫖賭欠下3.5個億,帶著200億魔法幣跟小姨子跑了,我們沒有辦法,拿著文章換魔法幣,原價100魔法幣,200魔法幣的文章,現在通通500魔法幣。我辛辛苦苦寫了大半年,你不給我魔法幣


0x01  什麼是CSRF
    CSRF,跨站請求偽造,在受害者通過瀏覽器登入某個惡意URL的時候,通過偽造請求達到跨站請求偽造(常見於商城類網站或者自己開發的會員系統)。
    我用我自己的理解來說一下這個漏洞,這個漏洞就是黑客在某一html頁面偽造表單,然後request到存在漏洞的站點。大家聽過cookie這個詞吧?這是服務端判斷使用者身份的一個標識。下面來說一下CSRF攻擊的形式。



0x02 攻擊條件
1、受害者在受害網站處於已登入狀態
2、受害者需要開啟惡意站點



0x03 漏洞成因
   本來想程式碼審計來講的,想起來上次聊天發現很多人不會PHP。就懶得寫審計了。
通俗來講,在進行請求操作的時候,服務端並沒有判斷客戶端傳送的請求是否是使用者本身傳送的。服務端接受到了來自某個cookie傳送來的請求,就當成一個正常的請求來執行。但是可能是網站本身存在CSRF漏洞。下面用圖來說明

 
圖可能看不清,丟pdf吧,反正我這邊看不清
 CSRF文章.pdf (1.37 MB, 下載次數: 49) 


0x04 漏洞危害
    這裡就舉例說的,這裡只是部分
    1. 配合XSS漏洞可造成蠕蟲。
    2. 更改使用者密碼
    3. 更改(商城)使用者收貨地址
    一切使用者可以操作的,黑客都可以操作。只需要構造PoC讓受害者點選。
    通俗點就是說,B以A的身份執行了A可以執行的操作,當然,我們這裡B是黑客,A是受害者。


0x05 漏洞修復
    1、 通過token或者session來判斷當前使用者身份
    2、 敏感操作需要驗證碼,更改密碼需要驗證老密碼。(導致構造PoC時無法構造,如果知道你密碼,直接進後臺了,為什麼還要用CSRF)

    旁:不過這樣使用者體驗就有點不好了,但是遇到安全問題,使用者體驗就得給安全讓路了。

本文來源;http://bbs.ichunqiu.com/thread-10293-1-1.html?from=csdn-shan