老鳥教你如何成為一名出色的黑客人員
有的朋友經(jīng)常會(huì)問我:“我怎樣才能得到***份滲透測(cè)試的工作”像大多數(shù)其他類型的工作一樣,公司希望員工能夠盡可能快的給公司帶來(lái)實(shí)質(zhì)性的價(jià)值,這就需要你有一些經(jīng)驗(yàn)之后才能做到。而我們現(xiàn)在要討論的是如何得到***份工作來(lái)獲得這些經(jīng)驗(yàn)。這是一個(gè)典型的雞和雞蛋哪個(gè)先有的坑爹問題。
首先,你不必有過職業(yè)滲透師的經(jīng)驗(yàn)才能成為一個(gè)職業(yè)的滲透師,你只需要具有發(fā)現(xiàn)安全問題的能力并且對(duì)滲透測(cè)試工作充滿激情就可以。
我認(rèn)為涉足到這個(gè)領(lǐng)域***的方式就是要把精力集中在Web應(yīng)用的滲透測(cè)試上。因?yàn)檫@是目前這個(gè)領(lǐng)域經(jīng)常會(huì)做的工作也是目前想進(jìn)入這個(gè)領(lǐng)域需要代價(jià)最小的一種。
學(xué)習(xí)
嘗試?yán)斫獠僮飨到y(tǒng)原理。理解你的瀏覽器是怎樣發(fā)送請(qǐng)求的??梢允褂靡粋€(gè)代理來(lái)截獲這些請(qǐng)求和響應(yīng)。閱讀一些關(guān)于DNS的知識(shí)并理解它是如何工作的。學(xué)習(xí)SSL。學(xué)習(xí)使用php,.Net,Ruby on Rails編寫簡(jiǎn)單的Web應(yīng)用,在這個(gè)過程中要以一個(gè)編程人員的思維來(lái)思考在編碼過程中可能會(huì)犯下哪些錯(cuò)誤。此外,網(wǎng)絡(luò)上有一些安全教程以及一些存在弱點(diǎn)的應(yīng)用可以用來(lái)進(jìn)行測(cè)試。這里我推薦PentesterLab網(wǎng)站里提供的一些非常好的練習(xí)。我們還需要經(jīng)常閱讀安全資訊并對(duì)你感興趣的主題進(jìn)行更深層次的研究。滲透測(cè)試就是要親自研究和測(cè)試來(lái)達(dá)到一個(gè)更深更高的水平。
這是一種學(xué)習(xí)新技術(shù)非常好的方式,同時(shí)還可以和他人競(jìng)爭(zhēng)。此外你還有機(jī)會(huì)見到一些已經(jīng)成為職業(yè)滲透師的人。而且如果他們喜歡你的技術(shù),他們會(huì)很樂意幫助你并把你帶入這個(gè)領(lǐng)域。一個(gè)好的伯樂給公司帶來(lái)的價(jià)值是巨大的。這就是為什么很多公司要支付比給他們的雇員更多的薪酬來(lái)給一些獵頭。
挖掘漏洞
并且要以一種聰明的方式。如果你找到了一個(gè)Bug,有四種途徑來(lái)處理:
“Oh天吶,我發(fā)現(xiàn)的漏洞太炙手可熱了,我得在別人找到之前把它公布出來(lái)”?;旧希?dāng)你發(fā)現(xiàn)一個(gè)Bug之后會(huì)通過郵件發(fā)送到一些郵件列表中比如full-disclosure.如果這個(gè)漏洞并不是真實(shí)可重現(xiàn)的,這也許并不會(huì)給你帶來(lái)一份滲透測(cè)試的工作而且你的郵件也會(huì)***保存在互聯(lián)網(wǎng)上。
“讓我們發(fā)一份郵件給應(yīng)用的官方吧”,這樣做很好,你也許會(huì)在官方的公告中被提及,并從中獲得一些不錯(cuò)聲譽(yù)。
“讓我們寫一個(gè)針對(duì)這個(gè)漏洞的補(bǔ)丁并發(fā)郵件給官方吧”,這是非常出色的反饋和公開的方式,你很有可能被列在官方的更新記錄中。并且在以后招聘人員可以看到你有能力找到漏洞并正確修復(fù)他們。
“隱藏我發(fā)現(xiàn)的漏洞吧“,這也是一種不錯(cuò)的處理Bug的方式,但是你目前需要人們知道你的能力,所以現(xiàn)在這么做并不是很合適。
大多數(shù)的招聘者會(huì)從建立中應(yīng)聘的人們有很多各種各樣的證書,但多數(shù)情況下他們并沒有很多實(shí)際的技能以及一些被網(wǎng)絡(luò)記錄下來(lái)的小榮譽(yù) 。如果你能找出一些漏洞并幫助官方修復(fù)他們,那么你將大有可能通過面試:
1,你將有能力來(lái)說明你能夠挖掘漏洞。
2,你將有能力來(lái)說明你能夠修復(fù)漏洞,并向開發(fā)人員介紹你修復(fù)的思路。這就是滲透測(cè)試要做的最基本的工作:找出漏洞,向非安全從業(yè)人員解釋這個(gè)地方為什么是不安全的并幫助他們修復(fù)漏洞。因此你現(xiàn)在已經(jīng)能夠理解這項(xiàng)工作了。
3,你將有能力說明你對(duì)于安全充滿激情,因?yàn)槟氵€沒有進(jìn)入這個(gè)領(lǐng)域工作就已經(jīng)開始挖掘和修復(fù)漏洞了。
那么現(xiàn)在,從哪些應(yīng)用開始做滲透測(cè)試呢。我覺得你肯定不想從WordPress/phpmyadmin或一些大型的已經(jīng)經(jīng)過很多人檢查過的項(xiàng)目入手。嘗試一些小一些但是又具有活躍用戶群的項(xiàng)目,開始測(cè)試他們。你找不到漏洞才怪呢:)
把事情簡(jiǎn)單化
在寫簡(jiǎn)歷的時(shí)候不要寫太多的關(guān)鍵字。不要弄得自己好像某一個(gè)領(lǐng)域的專家,比如使用“精通X”。如果你使用了這個(gè)詞那么招聘人員在問問題的時(shí)候也會(huì)期待你能給出一個(gè)非常專業(yè)的回答。如果我看到你使用了“我能夠……我有能力……”,那么我會(huì)問一些簡(jiǎn)單的問題并降低我的期待值。不要在你的簡(jiǎn)歷中撒謊,寫上事實(shí)就好了。這樣能讓面試人員產(chǎn)生驚喜的感覺。
提問題
如果你沒有通過面試,那么在面試之后你要詢問你在哪方面需要提高,面試人員期待應(yīng)聘者應(yīng)該掌握哪些技能?他們有沒有一些你能學(xué)習(xí)的資源?如果他們看到你希望提高你的技能,他們也會(huì)愿意在幾個(gè)月后給你第二次面試的機(jī)會(huì)讓你在這期間能夠用你所學(xué)到的技能讓他們信服。