普通程序員和黑客的專注角度不同,程序員不一定是黑客,黑客肯定是程序員!
以一位朋友為例,做linux內(nèi)核和驅(qū)動開發(fā)多年,后來又做云平臺架構(gòu),云平臺對安全的要求級別比較高,于是自然而然的開始研究網(wǎng)絡(luò)攻防方面的技術(shù)。 其實本質(zhì)上來講,黑客技術(shù)都是計算機技術(shù),只是專注的角度不同而已,比如計算機領(lǐng)域有數(shù)據(jù)開發(fā)工程師、驅(qū)動開發(fā)工程師、協(xié)議棧開發(fā)工程師,其實黑客明面上應(yīng)該叫做系統(tǒng)安全工程師。
其實要成為一名黑客需要掌握的東東可不少,當(dāng)然所謂的偽黑客只要會用工具即可,真正的黑客需要掌握的知識體系有: 精通操作系統(tǒng),一般是linux 精通一門編程語言,一般是C 精通網(wǎng)絡(luò)協(xié)議 精通密碼學(xué)和算法 對心理學(xué)有一定的掌握 精通web技術(shù) 持續(xù)了解和收集業(yè)內(nèi)常見的一些漏洞 入侵一個系統(tǒng)工程,分為多個步驟,包括: 鎖定機器和踩點 入侵,包括多個方面:社工、端口掃描、嗅探、協(xié)議分析、漏洞分析、字典文件制作、撞庫攻擊等等 侵入之后的清理、偽裝和善后(包括留后門、清除系統(tǒng)日志等)
如果要成為黑客,必須是一名合格的程序員,掌握必備的編程語言,而且黑客相對于普通的程序員,在某些專業(yè)領(lǐng)域做的而更加驚喜,而且很多都是標(biāo)準(zhǔn)的程序的逆向。 這就給了人們一種“黑客是最牛的程序員”的印象,其實不然,術(shù)業(yè)有專攻而已,而且黑客和程序員的關(guān)系就是剪不斷理不亂。 很多程序員和黑客其實都是難兄難弟,程序員編程為生,黑客以發(fā)現(xiàn)程序員的錯誤為生,國內(nèi)的許多大公司的網(wǎng)絡(luò)安全部門,多數(shù)是黑客招安來的,黑客化身成為公司的安全工程師,然后以工程師的名義繼續(xù)和黑客對戰(zhàn)。
看似是難兄難弟,其實是相親相愛一家人,兩者隨時可能角色互換。 黑客的產(chǎn)生是程序員造成的,因為漏洞都是程序員寫的,這么理解也可以,最后,黑客和程序員的區(qū)別就是一句話的區(qū)別:程序員是一種職業(yè),而黑客是一種興趣,并且黑客也分好壞兩種。 |
|