天天看點

滲透測試者的基本技能

随着國内外重大資訊安全事故數量的急劇增長,安全在整個IT行業中的不斷升溫,國内外滲透測試從業者也不斷的增多,但是安全體系龐大複雜,并非朝夕就能掌握相關的專業知識和技能。最近在國外的一篇部落格上看見一位安全專家根據他多年的安全從業經驗,對滲透測試者所需要的必備做出了一些總結,因為語言的不同,可能翻譯了解會有所纰漏,希望大家指出修正,謝謝!

1、精通一個作業系統。我不想強調這個有多麼重要。太多的人們都想成為一個黑客或者系統安全專家,但是事實上卻沒有對支援他們進行黑客攻擊和安全防護的系統有較為深入的了解。但是如果你戴着一頂系統管理者的帽子的話,這是必定最基本的常識。作為一個黑客來說,就算你拿到了root權限,但是卻不知道它有什麼用就意味着什麼事情都沒有幹。如果你不知道你在系統中留下了那些蛛絲馬迹,怎麼能有辦法将它們擦除掉呢?如果你對系統沒有足夠的了解,你怎麼知道所有的事情是怎麼被記入日志的?

2、良好的網絡知識和協定知識。能夠例舉出OSI模型并能證明對網絡和協定比較了解。你需要深入的了解TCP協定,并不隻是知道它代表傳輸控制協定,你需要知道TCP包的結構和裡面所裝載的内容以及其工作的詳細過程。另外,TCP和UDP的差別;了解路由,能夠詳細的描述一個包是怎樣從一個地方發往另一個地方的;深入了解DNS,ARP是怎麼工作的;了解DHCP,了解你終端是怎麼動态獲得IP位址的,想想當你插入網線的時候發生了什麼?在你插入網線嘗試獲得一個動态配置設定的IP位址的時候,NIC 建立了什麼類型的通路?是第二層?還是第三層?

3、如果你不了解上面第二點所說的話,你就不太可能了解ARP欺騙(ARP  Spoof)和中間人攻擊(MITM)是怎麼實施的。簡而言之,如果你不知道一個程序是怎麼工作的你怎麼知道攻擊和操作這個程序,甚至更糟糕的是,你根本不知道有怎麼一個程序存在着。這讓我們不得不記住一點,通常你應該對事物是怎麼工作的有足夠的求知欲,每當我們看見一些很不錯的東西的時候我都該在腦子中快速的轉動,他是怎麼工作的呢?

4、學習幾種基本的腳本語言。從一些簡單的開始,比如說:vbs或Bash。

5、了解一個基本的防火牆。學習怎麼配置它來達到通路控制的目的,之後試着打敗它。你可以找一個廉價的或者用過的路由器和防火牆做實驗,去買一個或者向你的公司要一個舊的。從簡單的配置通路控制表開始,學習怎麼樣通過簡單的IP欺騙和其他基本的技術來掃描他們。你除了應用他們才能更深入的了解這些概念。一旦掌握了這些,你就可以轉向PIX或ASA。

6、對驗證有一定的了解。這會更好的掩蓋你蹤迹, 這對你的影響是顯然的。

7、好好的學習一門程式設計語言。找出你想讓它自動化完成的東西或者一些簡單的你想創造的東西。比如端口掃描,你可以找一些類似的工具,看看它們的源代碼,試着做出自己的端口掃描工具。

8、有一個明确的目标驅動自己去學習新的東西。這比其他所有的都重要,因為你要把自己的時間投入在上面并且随時都保持熱情。

9、學習少量的資料庫。學習資料庫并了解它們是怎麼工作的,下載下傳各種資料庫看看,查找資料并試着設計一個簡單的資料庫,不用成為資料庫專家,了解基本知識将有很大的幫助。

10、保持與人分享交流的熱情。最好是建立自己的部落格記錄下自己的學習過程。