厲害了丨白帽子靠挖漏洞拿了137萬“年終獎”
新聞資訊
正值年終歲末,各位職場人士最關心的就是年終獎了,聽說有人拿了137萬的“年終獎”,來了解一下~~~
360冰刃實驗室研究員洪禎皓髮現了一個Hyper-V的漏洞,由於漏洞危險級別高,影響範圍廣,微軟在確認漏洞細節後第一時間確認獎金並致謝漏洞發現者。
獎金總額高達20萬美元約合人民幣137萬,可謂是微軟送給中國白帽黑客一筆豐厚的“年終獎”了,這也是微軟史上送出的最高一筆漏洞挖掘獎勵。
技術大佬們,獎金這麼豐厚,是不是已經按奈不住要去挖漏洞了,多挖幾個高危漏洞,你就是下一個人生贏家!初級挖洞菜鳥也不要氣餒,i春秋今天給大家分享漏洞挖掘的相關內容,幫助大家快速提升挖洞技能,對於新手小白的學習非常有幫助,希望大家好好閱讀。本文在3000字左右,閱讀時間約5分鐘。
漏洞挖掘是安全圈的核心內容之一,隨著各大廠商安全意識的增強,以及各類waf的出現,一些像SQL注入,檔案上傳,命令執行等漏洞並不好挖掘。尤其對於剛剛學完基礎並開始著手漏洞挖掘的小白來說,拿到手後就顯得更加迷茫。
這篇文章是一個漏洞挖掘思路的總結,適合給剛入門的小白指路,希望大家多多支援,也歡迎小夥伴們來分享補充你們的漏洞案例。
常見漏洞清單
如果你是一個剛學完基礎,且沒有參加各種培訓,完全自學的小白。那麼你的漏洞清單可能是這樣的:
-
暴力破解漏洞
-
SQL注入漏洞
-
命令執行漏洞
-
XSS漏洞(跨站指令碼)
-
csrf漏洞(跨站偽造請求)
-
xxe漏洞
-
檔案上傳漏洞
-
檔案包含漏洞
-
各cms的公開漏洞
如果你有幸看到一個大佬的漏洞清單,那麼有可能除了上面那些,還多了下面這幾項:
-
邏輯漏洞
-
ssrf漏洞
-
資訊洩露
-
js檔案可能存在的未授權訪問
-
組合漏洞
……
然而這些也只是一部分,歡迎大佬們前來補充更多漏洞清單。
漏洞型別詳解
01
邏輯漏洞
邏輯漏洞是一個經久不衰的話題,目前沒有一個掃描器敢說自己能掃到邏輯漏洞,或許有的廠家敢說自己沒有一個SQL注入,但是沒人敢說自己沒有邏輯漏洞(我想也沒有廠家敢說自己沒有SQL注入吧)。而且,由於現在waf和防火牆的逐漸完善,SQL注入,上傳等漏洞,也越來越難以查詢和利用,而邏輯漏洞則不存在這種問題。
何為邏輯漏洞,就是開發者在開發過程中,由於程式碼邏輯不嚴,而造成的一系列可以被攻擊者加以惡意利用的漏洞,邏輯漏洞也是這一類漏洞的總稱。
最常見的邏輯漏洞可以分為以下型別:
-
驗證碼爆破
-
支付漏洞
-
註冊/忘記密碼處邏輯漏洞
-
越權
……
舉個最為常見的例子:以低價購買任意商品的支付漏洞,或者找回密碼流程控制不嚴格,導致的可以修改任意使用者的登陸密碼,還包括越權,越權檢視他人訂單,越權檢視他人個人資訊等等。
當然這只是一部分,具體漏洞的原理以及介紹大家可以去自行搜尋關鍵字,有很多大佬的文章寫得比較好。
02
資訊洩露
資訊洩露也分好多種,如:
-
原始碼洩露
-
使用者資訊洩露
-
員工資訊洩露
……
對於原始碼洩露,大家可以去github上找,很多程式設計師會把原始碼開放在github上,甚至有的人連使用者名稱和密碼都不改,資料庫連線密碼直接存在原始碼中。對於員工資訊洩露,可以在收集資訊的時候收集賬號,然後放在社工庫跑跑,或者記錄賬號用來爆破。
03
組合漏洞
組合漏洞是一個可以把低危漏洞變成高危漏洞的神奇東西。比如你找到一個xss漏洞和一個csrf漏洞,如果兩個漏洞單獨提交,或許是兩個低危,又或許是兩個忽略。但是如果你把xss和csrf組合起來就有可能變成一個高危漏洞。
說個小技巧,如果你想要詳細的漏洞列表,可以去多收集幾家src的漏洞說明手冊,然後去重,就是一份完美的漏洞列表。
漏洞挖掘技巧
如何快速提高挖掘漏洞能力?在提升挖掘漏洞能力時應該養成哪些好的習慣?讓我們一起往下看:
細心
細心一定要放在第一位,因為細心真的非常重要,我有幸請教過很多大佬成功的祕籍,他們告訴我的第一個詞語就是細心,正所謂心細則挖天下。很多漏洞都是需要細心才可以發現,不放過資料包中的任何一個引數,不放過網站的任意一個點,我曾問過團隊的小石師傅,如何挖掘那些很多人都挖過的src,這麼多人都挖過,一些功能點我還要在測一遍嗎?
小石師傅並沒有給我直接回答,而是講了他一個漏洞的挖掘經歷,那是挖美團的時候,小石師傅直接主站開始挖,並且在個人資料一個很明顯的地方,挖到了一個儲存xss的高危漏洞。
所以,在我們進行漏洞挖掘的時候,不要放棄任何一個可能存在漏洞的地方,每個人都有不同的挖掘方式,網站這麼大,總會有幾個漏測的地方,並且一個漏洞修復了,誰敢保證,修復完了,就不能再修一個漏洞出來呢。
耐心
耐心同細心一樣,可以說是一對cp。如果你本身就足夠細心,那麼我想你的耐心也不會差。如果說細心是你漏洞挖掘的利劍,那麼耐心就是你的磨刀石,很多時候,碰到一個破站盯幾天才能挖到一個漏洞,你堅持下來了就是勝利者。
有人說挖洞,也是個運氣活,運氣好了隨隨便便就是幾個高危,運氣不好,幾天也挖不到一個。雖然有一定的道理,但是當你的能力足夠強,有了自己的套路,想挖漏洞還是輕鬆加愉快的。
會看、會記
會看,會記就是要多看漏洞詳情,多看技術文章,還有網上很多人分享的案例。看完就要記,才能做到學以致用。
如果你面對一個廠商,有無從下手的感覺,就去看漏洞詳情,一個一個看,然後把漏洞出現的位置,以及使用的一些技巧記下來,成為屬於自己的漏洞挖掘手冊,這也是我最近在做的一個事情。還有一些好的文章,好的技巧,或許你暫時還用不到,但是你要學會記,總有用到的一天。
懂收集
大佬說過,漏洞挖掘說白了就是一個fuzz的過程,而fuzz最關鍵的就是一本高效的字典,沒錯我們要學會收集字典,想公開的字典有fuzzdb,是一個非常好的fuzz字典合集,當然我們在收集他人字典的同時也要自己收集字典,曾經看到一個大佬,蒐集了github大量的開發專案的路徑,然後組成字典。
我也不要求小白可以寫程式然後自動收集字典,但是,我們在平時的漏洞挖掘過程中,遇到的一些東西還是要多去收集一下,逐步慢慢的形成自己的一本專用字典,絕對可以提高你的漏洞挖掘效率。當你有一本自己收集的字典時,相信你也成為一名大佬了。
勤動手
當你看過大量漏洞,記了大量筆記,這個時候我相信你最需要的,就是實戰。實戰是可以把所學所看融會貫通的最快方法,沒有之一,只有實戰可以鍛鍊自己的挖洞能力和效率。看到新的漏洞多去搭建環境復現,這也是對能力的一種提升。
愛學習
學習,學無止境,知識面有多廣,決定了你可以挖多少漏洞,多學習,至於學什麼呢,學js,學程式碼審計,學開發,學json等,有的時候真的感覺,你要成為一個開發人員,瞭解詳細的資訊傳輸和交換原理,才可以挖到更加深入的漏洞。如果有一天你感覺挖不到漏洞了,不如放下手頭的一切先去學習吧。