本文原創作者:軒轅之風
在不少電影電視劇中,主角的身邊都有這么一位電腦高手:他們分分鐘可以黑進反派的網絡,攻破安全防線,破解口令密碼,拿到重要文件。他們的電腦屏幕上都是一些看不懂的圖形和數字,你能看懂的就只有那個進度條,伴隨著緊張的BGM,慢慢的向100%靠近······

上面的場景和套路是不是很眼熟?
影視作品中的黑客當然有夸張和戲劇化的表現,不過,現實世界中的黑客也有一套他們的工具庫,軒轅君梳理了常用的20個工具。有了他們,你也能化身電腦高手,成為那個矚目的焦點。
以介紹了系統、網絡、逆向、Android等方面的工具。
- OllyDbg
- WinDbg
- IDA
- APIMonitor
- PCHunter
- ProcExp
- ProcMon
- dex2jar
- jd-gui
- Mimikatz
- WireShark
- Fiddler
- nmap
- netcat
- Nessus
- SQLMap
- hydra
- shodan
- zoomeye
- metasploit
系統終端
系統終端側的工具主要用于程序逆向分析、破解等用途。
OllyDbg
調試工具,簡稱OD,其名頭在圈子里也算得上是頂流了。其黑客風的交互界面,豐富便捷的調試功能成為軟件破解愛好者的首選利器。

WinDbg
也是一款調試工具,微軟出品,必屬精品?與上面的OD不同,它的界面就要樸素無華許多(當然如果你愿意折騰,比如像我,也能自定義配置出黑客風的界面)。WinDbg沒有浮華的外表,但有強大的內核。自帶了一套強大的調試命令,習慣了GUI調試工具的朋友初期可能不習慣,但時間久了之后絕對愛不釋手。

WinDbg最特色的是結合VMWare虛擬機可以進行內核驅動程序調試,也能用于學習操作系統內核,是驅動玩家必備神器。
IDA
IDA絕對是圈子中頂流中的頂流,強大的反匯編引擎和源代碼級的函數構建插件,是程序逆向分析必不可少的強大工具。

函數調用執行流圖形模式:

支持windows、linux、OSX等多操作系統以及x86、x64、ARM甚至JAVA字節碼等多種指令集的分析。
源碼級自動構建:

APIMonitor
這款工具的知名度比起上面幾位要低調不少,這是一款用來監控目標進程的函數調用情況的工具,你可以監控任意你想要監控的進程,查看他們調用了哪些關鍵系統函數,以及對應的參數和返回值,有了它,目標程序的一切活動盡在掌握。

ProcMon
APIMonitor是指定監控對象進行監控,那如果監控目標不明確,想找出干壞事的進程該怎么辦呢?
ProcMon則能派上用場,它通過驅動程序加載到操作系統內核,實現對全系統的整體監控,所有進程的行為都逃不過它的法眼(這話有點絕對,還是有辦法逃過的),是檢測主機活動的常用工具。

ProcExp
Windows自帶的任務管理器功能太弱,這是一款全新增強版的任務管理器,全稱ProcessExplorer。和上面的ProcMon師出同門,是兄弟軟件,常常配套使用。
它可以幫助你看到系統所有活動進程以及這些進程包含的所有線程、加載的動態庫模塊,打開的文件,網絡連接等等信息。

PCHunter
這是一款國產軟件,其前身是Xuetur。是一款Windows操作系統上監控系統安全的瑞士軍刀。


PCHunter可以幫助你殺掉任務管理器干不掉的進程,查看隱藏的進程、驅動程序,查看有沒有鍵盤記錄器等木馬程序,有沒有惡意程序在篡改內核代碼等等。
dex2jar
這是一款用于Android平臺程序逆向分析的工具,從名字中可以看出,通過它,可以將Android的APK包中的可執行程序dex文件轉換成jar包

jd-gui
轉換成Jar包之后,怎么看Java源代碼呢,接下來是jd-gui出場的時刻,通過它,實現Java字節碼的反編譯到源代碼,其可讀性還是非常高的。

Mimikatz
當你的電腦被黑客攻破以后,為了以后能經常“光顧”,他們通常會獲取你的用戶名與密碼,用戶名很容易獲取,但電腦密碼呢?
國外的牛人開發的這款Mimikatz就可以做到,在你的電腦上執行后,將會在電腦內存中找出你的密碼,是不是很可怕?

網絡
網絡部分的工具就更厲害了,接入網絡意味著你的活動半徑邁出了自己的電腦,可以去到更為廣闊的空間。
WireShark
WireShark的大名應該很多人都聽過,即便在非安全行業,作為一個普通的后端開發工程師,掌握網絡數據抓包也是一項基礎技能。

WireShark就是一款強大的抓包工具,支持你能想到的幾乎所有通信協議的字段解碼。通過它,網絡中流淌的數據將無所遁形,一目了然。
Fiddler
Fiddler同樣也是一款抓包工具,與WireShark這樣的純抓包分析不同,Fiddler更偏向基于HTTP協議的Web流量。對HTTP協議的解碼支持做得更好,在交互上也更易用。

另外,Fiddler還有一項重要的功能就是可以搭建代理,常用于分析加密的HTTPS流量。

nmap
網絡滲透之前很重要的一環就是要進行信息搜集,了解滲透目標開啟了什么服務,軟件是什么版本,拿到了這些信息才能制定接下來選擇什么樣的漏洞進行攻擊。
nmap就是這樣一款知名的網絡掃描工具,在Linux下以命令行形式調用,另外還有一個可視化界面的zenmap,通過發起網絡數據包探測,分析得出目標的信息。

netcat
netcat號稱網絡工具中的瑞士軍刀,功能強大,是網絡滲透最最常用的工具

netcat命令簡寫nc,通過它,你可以:
- 端口掃描
- 網絡通信
- 文件傳輸
- 加密傳輸
- 硬盤克隆
- 遠程控制
- ······
總之,瑞士軍刀,絕不會讓你失望,是你工(zhuang)作(bi)的極好幫手!
Nessus
Nessus號稱是世界上最流行的漏洞掃描工具,內置豐富的漏洞特征庫,圖形化的界面降低了操作難度

掃描結果:

SQLMap
SQL注入是web服務器程序最常出現的漏洞,發起SQL注入攻擊的工具也非常多。SQLMap就是其中一款,其豐富的參數提供了強大的注入能力。

不過由于其命令行操作,不如一些傻瓜式的可視化工具來的容易上手。
hydra
Hydra,這個名字應該很眼熟吧,沒錯,它就是漫威宇宙中的九頭蛇。名字聽上去就很霸氣,這是一款自動化爆破的工具,支持眾多協議,包括POP3,SMB,RDP,SSH,FTP,POP3,Telnet,MySQL等等服務,一般的弱口令,Hydra都能輕松拿下。

metasploit
metasploit是網絡滲透使用最多最廣的工具。說它是工具某種意義上來說不太準確,它更像是一個平臺,一個車間,一個提供了眾多工具的操作空間,通過它,你可以完成涵蓋信息搜集、探測掃描、漏洞攻擊、數據傳輸等幾乎完整的黑客攻擊過程。



shodan
這是一款號稱互聯網上最可怕的“搜索引擎”。注意它和百度、谷歌搜索普通互聯網內容不同,它搜索的目標是計算機、手機、攝像頭、打印機等等看得見摸得著的網絡設備。

隨便搜一個H3C結果:

再隨便點擊一個IP結果進去:

shodan的中文譯名是“撒旦”,不斷的在爬取整個互聯網的信息,進而分析接入網絡的這些設備。
zoomeye
借鑒于shodan的思路,國內的知道創宇公司也做了一個類似的產品:鐘馗之眼,英文名稱zoomeye。

在zoomeye,你可以搜索任意一個IP地址,網址或者別的信息,它將告訴你這個IP背后的信息:這個IP在世界上哪個地方?擁有這個IP的是一臺什么樣的主機?
我們拿Github舉例,看看GitHub服務器的分布情況

看得出來,服務器主要是在美國,選擇第一個點進去:

地理位置、開放的端口服務都告訴你了。
結語
工具都是好工具,但是切不可用于不正當用途,尤其是現在網絡安全法的出臺,再也不能像以前隨隨便便拿起工具就東掃西掃,一不小心就是面向監獄編程了。