編輯推薦
英文紙質版圖書年銷售近20000冊,電子版銷售近萬份
市場上極具口碑的滲透測試圖書,好評如潮
《黑客秘笈:滲透測試實用指南》以橄欖球的行話闡述滲透測試的戰術,其內容如下所示。
賽前準備—安裝:關於如何配置本書所用到的攻擊機器、工具。
發球前—掃描網絡:在齣招之前,需要進行掃描,瞭解即將麵對的環境。本章將深入探討尋找目標信息、智能掃描的相關內容。
帶球—漏洞利用:利用掃描中所發現的漏洞,對係統進行攻擊。從現在開始我們就著手行動瞭。
拋傳—Web應用程序的人工檢測技術:有時,您需要發揮創意,尋找公開的目標。我們將會看看如何手動地尋找、攻擊Web應用。
橫傳—滲透內網:攻陷一個係統後,如何通過網絡獲取更重要的信息。
助攻—社會工程學:通過錶演來迷惑敵人,本章將解釋一些社會工程學方麵的技巧。
短傳—需要物理訪問的攻擊:一個要求很近距離的漂亮短踢。這裏將描述需要物理訪問的攻擊。
四分衛突破—規避反病毒檢測:當您距離很近時,偷襲是很棒的。多數情況下,您會麵臨反病毒軟件的阻撓。為解決這一阻礙,本章將介紹規避殺毒係統的方法。
特勤組—破解、利用和技巧:破解密碼、漏洞利用,以及一些小技巧。
賽後—分析報告:比賽過程分析和成果匯報。
繼續教育:與讀者分享為提升滲透測試水平而有必要做的一些事情,如參加安全會議、參加培訓課程、閱讀相關圖書、研究漏洞框架、參加CTF比賽等。
內容簡介
所謂的滲透測試,就是藉助各種漏洞掃描工具,通過模擬黑客的攻擊方法,來對網絡安全進行評估。 《黑客秘笈:滲透測試實用指南》采用大量真實案例和集郵幫助的建議講解瞭在滲透測試期間會麵臨的一些障礙,以及相應的解決方法。本書共分為10章,其內容涵蓋瞭本書所涉的攻擊機器/工具的安裝配置,網絡掃描,漏洞利用,人工地查找和搜索Web應用程序的漏洞,攻陷係統後如何獲取更重要的信息,社工方麵的技巧,物理訪問攻擊,規避殺毒軟件的方法,破解密碼相關的小技巧和成果匯總等知識。 《黑客秘笈:滲透測試實用指南》編排有序,章節直接相互獨立,讀者可以按需閱讀,也可以逐章閱讀。本書不要求讀者具備滲透測試的相關背景,但是如果具有相關的經驗,對理解本書的內容會更有幫助。
作者簡介
Peter Kim,是Secure Planet公司的CEO兼主席,在安全領域具有近10年的從業經驗,在過去的7年裏,一直從事滲透測試工作。他曾經在馬裏蘭州霍華德社區學院講授過滲透測試和網絡安全的課程,並且持有大量安全相關的認證。
內頁插圖
目錄
第1章 賽前準備—安裝 1
1.1 搭建滲透測試主機 1
1.1.1 硬件規格 1
1.1.2 商業軟件 2
1.1.3 Kali Linux(http://www.kali.org) 3
1.1.4 Windows虛擬機 10
1.2 總結 12
第2章 發球前—掃描網絡 13
2.1 外部掃描 13
2.2 Discover Scripts(過去叫做Backtrack Scripts)(Kali Linux) 14
2.2.1 被動式信息收集的操作方法 14
2.2.2 使用泄漏庫來查找郵箱、認證信息 17
2.3 外部或內部的主動式信息收集 20
2.4 Web應用程序的掃描 29
2.4.1 Web應用程序的掃描流程 30
2.4.2 Web應用程序的掃描工具 30
2.5 總結 38
第3章 帶球—漏洞利用 39
3.1 Metasploit(Windows/Kali Linux)(http://www. metasploit.com) 39
3.1.1 配置Metasploit進行遠程攻擊的基本步驟 39
3.1.2 搜索Metasploit的exploit(以古老的MS08-067漏洞為例) 41
3.2 腳本 42
3.3 總結 45
第4章 拋傳—Web應用程序的人工檢測技術 47
4.1 Web應用程序的滲透測試 47
4.1.1 SQL注入 47
4.1.2 跨站腳本(XSS) 57
4.1.3 跨站請求僞造(CSRF) 65
4.1.4 會話令牌 68
4.1.5 模糊測試/輸入驗證 70
4.1.6 功能/業務邏輯測試 75
4.2 總結 75
第5章 橫傳—滲透內網 77
5.1 登錄憑據條件下的網絡滲透 77
5.2 利用任意域憑據(非管理權限) 82
5.2.1 組策略首選項 82
5.2.2 獲取明文憑據 84
5.2.3 關於漏洞利用後期的一點提示 87
5.3 利用本地或域管理賬號 87
5.3.1 使用登錄憑據和PSExec掌控網絡 87
5.3.2 攻擊域控製器 94
5.4 漏洞利用的後期階段—使用PowerSploit(Windows) 97
5.5 漏洞利用的後期階段—PowerShell篇(Windows) 103
5.6 ARP欺騙 105
5.6.1 IPv4 106
5.6.2 IPv6 110
5.6.3 ARP欺騙之後的攻擊步驟 112
5.6.4 會話劫持(SideJacking) 112
5.6.5 Hamster/Ferret(Kali Linux) 112
5.7 端口代理 119
5.8 總結 120
第6章 助攻—社會工程學 121
6.1 近似域名 121
6.1.1 SMTP攻擊 121
6.1.2 SSH攻擊 123
6.2 魚叉式網絡釣魚 124
6.2.1 Metasploit Pro 的網絡釣魚模塊 125
6.2.2 社會工程學工具集(Kali Linux) 127
6.2.3 大規模魚叉式網絡釣魚 131
6.2.4 Excel相關的社會工程學 132
6.3 總結 135
第7章 短傳—需要物理訪問的攻擊 137
7.1 綫攻擊 137
7.1.1 被動識彆和偵察 138
7.1.2 主動攻擊 140
7.2 物理攻擊 149
7.2.1 剋隆工卡 149
7.2.2 滲透測試便攜設備 149
7.2.3 物理社會工程學攻擊 153
7.3 總結 154
第8章 四分衛突破—規避反病毒檢測 155
8.1 規避反病毒檢測 155
8.1.1 在反病毒掃描中隱藏Windows Credential Editor
(基於Windows平颱) 155
8.1.2 Python 160
8.2 總結 166
第9章 特勤組—破解、利用和技巧 167
9.1 密碼破解 167
9.1.1 John The Ripper(JTR) 169
9.1.2 oclHashcat 169
9.2 漏洞搜索 173
9.2.1 Searchsploit(Kali Linux) 173
9.2.2 BugTraq 174
9.2.3 Exploit-DB 176
9.2.4 查詢Metasploit 176
9.3 一些小技巧 177
9.3.1 Metasploit中的RC腳本 177
9.3.2 繞過UAC 178
9.3.3 繞過域名的Web過濾 179
9.3.4 Windows XP—古老的FTP策略 180
9.3.5 隱藏文件(Windows) 180
9.3.6 保持隱藏文件(Windows) 182
9.3.7 上傳文件到Windows 7/8主機 184
第10章 賽後—分析報告 185
第11章 繼續教育 189
11.1 重要會議 189
11.2 培訓課程 190
11.3 書籍 190
11.4 漏洞滲透測試框架 192
11.5 奪旗(CTF) 193
11.6 與時俱進 193
最後的注意事項 195
緻謝 196
前言/序言
深入代碼的隱秘角落:構建堅不可摧的數字堡壘 在這個信息爆炸、數字浪潮席捲一切的時代,我們的生活早已與網絡密不可分。從日常的社交媒體互動,到關鍵的金融交易,再到國傢層麵的信息安全,數字世界的邊界不斷拓展,也隨之帶來瞭前所未有的挑戰。在光鮮亮麗的數字技術背後,潛藏著無數不為人知的復雜性,而理解這些復雜性,正是保障自身安全、維護數字世界秩序的關鍵。 本文並非一本直接教授“黑客攻擊”技巧的書籍,也非一本宣揚非法活動的指南。相反,它旨在揭示那些隱藏在數字錶麵之下的運作原理,幫助讀者建立起一種更深刻、更全麵的數字安全意識。它是一扇通往理解網絡攻防思維的大門,讓你不再是被動的信息接受者,而是能夠主動思考、審慎判斷的數字公民。 第一章:理解數字世界的“骨骼”——網絡基礎架構的基石 在深入探討安全問題之前,紮實的網絡基礎知識是必不可少的。本章將帶你迴到數字世界的源頭,從最基本的概念齣發,逐步構建起對現代網絡架構的清晰認知。我們將探究: 數據如何在網絡中旅行? 從比特流到數據包,再到復雜的路由協議,我們將分解數據傳輸的整個生命周期。你將瞭解TCP/IP協議棧的精妙之處,理解三次握手和四次揮手的意義,以及UDP在特定場景下的優勢。 我們每天都在與哪些“設備”打交道? 從路由器、交換機到服務器,我們將解析這些網絡設備的功能和相互關係。你將理解不同層級設備在網絡通信中所扮演的角色,以及它們如何共同構建起龐大的互聯網。 域名是如何被解析成IP地址的? DNS(域名係統)的運作機製將不再是神秘的黑箱。我們將深入瞭解DNS查詢過程,理解其重要性,以及在DNS層麵可能存在的攻擊嚮量。 我們如何纔能“看到”網絡中的流量? 瞭解網絡嗅探的基本原理,以及Wireshark等工具的初步應用,讓你能夠觀察數據包的真實形態,從而更好地理解網絡通信的細節。 第二章:窺探應用程序的“靈魂”——軟件開發與漏洞的根源 任何數字係統都離不開軟件。應用程序的編寫方式、設計思路,都可能成為安全隱患的溫床。本章將引導你理解軟件開發中的安全考量,以及常見的漏洞産生機製: 代碼中的“意外”: 我們將分析常見的編程錯誤,例如緩衝區溢齣(Buffer Overflow)、整數溢齣(Integer Overflow)等,以及它們是如何被利用來執行非預期代碼的。 輸入與輸齣的“信任危機”: 為什麼不應輕易相信用戶的輸入?SQL注入(SQL Injection)和跨站腳本攻擊(XSS)等Web應用程序的常見漏洞,都源於對用戶輸入的校驗不足。你將理解這些攻擊的原理,以及如何通過輸入驗證和參數化查詢來防範。 身份驗證的“薄弱環節”: 用戶名和密碼的安全性至關重要。我們將探討弱密碼、暴力破解(Brute Force Attack)以及會話劫持(Session Hijacking)等問題,並介紹多因素認證(Multi-Factor Authentication)等加固措施。 權限管理的“一把雙刃劍”: 恰當的權限分配是係統安全的基石。本章將討論權限提升(Privilege Escalation)的風險,以及如何通過最小權限原則來降低風險。 API的“開放與風險”: 如今,API(應用程序接口)是係統間交互的橋梁。我們將審視API設計中的安全盲點,以及API泄露可能帶來的嚴重後果。 第三章:滲透測試的“邏輯”——思維方式與方法論的構建 在理解瞭網絡和軟件的基礎之後,我們纔能更深入地探討如何“思考”安全問題。本章並非提供具體的攻擊步驟,而是著重於滲透測試的核心思維模式和通用的方法論: 信息收集的藝術: 瞭解目標係統的公開信息,是展開任何安全評估的第一步。我們將介紹被動偵察(Passive Reconnaissance)和主動偵察(Active Reconnaissance)的技術,以及OSINT(開源情報)在信息收集中的作用。 漏洞掃描與分析: 自動化工具是發現潛在漏洞的得力助手。我們將介紹Nmap、OpenVAS等漏洞掃描工具的基本用法,並強調工具結果的分析和誤報的識彆。 探索係統弱點: 在瞭解目標後,如何係統性地發現可利用的弱點?本章將介紹常見的掃描技術,例如端口掃描、服務版本探測等,並解釋這些技術背後的邏輯。 利用與驗證: 當發現潛在漏洞時,如何安全地進行驗證?我們將討論概念驗證(Proof of Concept)的意義,以及如何避免不必要的損害。 報告的價值: 滲透測試的最終目的是提供有價值的安全建議。本章將強調報告的清晰性、準確性和 actionable nature(可操作性)。 第四章:防禦者的“視角”——加固係統與應對威脅 理解攻擊者的思維模式,是為瞭更好地構建防禦體係。本章將從防禦者的角度齣發,探討如何增強係統的安全性: 防火牆與入侵檢測/防禦係統(IDS/IPS): 這些是網絡安全的第一道防綫。我們將解析防火牆的工作原理,以及IDS/IPS如何監測和阻止惡意流量。 安全加固的最佳實踐: 從操作係統到應用程序,再到網絡設備,我們將討論各種加固策略,例如禁用不必要的服務、及時更新補丁、配置安全策略等。 加密技術的應用: SSL/TLS、VPN等加密技術在保護數據傳輸中的關鍵作用。你將理解它們是如何工作的,以及在什麼場景下使用。 安全審計與日誌分析: 通過記錄和分析係統活動,我們能夠及時發現異常和潛在的攻擊。本章將介紹日誌分析的重要性,以及如何利用日誌信息進行安全事件響應。 安全意識的培養: 人是安全鏈條中最薄弱的環節。本章將強調用戶安全意識培訓的重要性,以及如何防範社會工程學攻擊。 第五章:數字世界的“未來”——新興技術與持續演進 數字安全並非一成不變,它是一個不斷演進的領域。本章將展望數字安全領域的未來趨勢,幫助讀者保持學習和適應能力: 雲計算與容器化的安全挑戰: 隨著雲原生技術的普及,新的安全問題也隨之而來。我們將探討雲環境下的安全責任模型,以及容器化部署的安全考量。 物聯網(IoT)的安全隱患: 越來越多的設備連接到互聯網,帶來瞭巨大的便利,但也伴隨著復雜的安全風險。 人工智能(AI)在安全領域的雙刃劍: AI既是強大的防禦工具,也可能被用於更復雜的攻擊。 零信任(Zero Trust)安全模型: 這種新的安全理念正在改變我們對網絡安全的認知。 持續學習與自我提升: 數字安全領域日新月異,保持學習的熱情和獲取最新知識的能力,是每個數字公民的必修課。 這本書的目的,是讓你成為一個更懂技術、更懂安全的人。 它提供瞭一個理解數字世界運行機製的框架,培養你審慎思考、發現問題的能力,並為你構建更安全的數字生活和工作環境打下堅實的基礎。通過本書的學習,你將能夠: 更清晰地認識到數字世界中的潛在風險。 理解常見網絡攻擊和軟件漏洞的原理。 掌握基本的網絡安全概念和方法論。 提升自身的數字安全意識和防護能力。 以更專業的視角審視和評估數字係統的安全性。 這不僅是一本書,更是一次認知升級的旅程。讓我們一起深入探索代碼的隱秘角落,構建屬於我們自己的堅不可摧的數字堡壘。