- Kali Linux高級滲透測試(原書第3版)
- (印)維杰·庫馬爾·維盧 (加)羅伯特·貝格斯
- 1619字
- 2020-09-01 18:27:09
1.4 測試方法
滲透測試方法很少考慮為什么要進行滲透測試,或哪些數據是需要保護的業務關鍵數據。缺少這至關重要的第一步,滲透測試就無法抓住重點。
很多滲透測試人員不愿遵循現成的滲透測試方法,他們擔心模型會阻礙他們進行網絡滲透的創造力。滲透測試不能反映惡意攻擊者的實際活動。通常,客戶希望看到你能否在一個特定的系統中獲得管理上的訪問權(你可以獲得這些系統的Root權限嗎?)。然而,攻擊者可能會重點關注以一種不需要Root權限或引起拒絕服務的方式復制關鍵數據。
為了解決滲透測試方法中固有的局限性,必須將所有測試方法集成到一個框架中,從攻擊者的角度審視網絡,即殺鏈(kill chain)。
2009年,Lockheed Martin CERT的Mike Cloppert首先引入了上述理論,現在稱為攻擊者殺鏈(attacker kill chain)。殺鏈包含攻擊者攻擊網絡時所采取的步驟。殺鏈不總是以一個線性流呈現,因為一些步驟可能會并行出現。多發攻擊可以瞬時對同一個目標進行多種攻擊,并且在同一時間攻擊步驟可能發生重疊。
在本書中,我們已經修改了Cloppert的殺鏈,使之能更準確地反映攻擊者如何在測試網絡、應用和數據服務時應用這些步驟。
圖1-1顯示了攻擊者的一個典型殺鏈。

圖1-1 典型的殺鏈
攻擊者的一個典型殺鏈可以描述如下。
·探索或偵察階段。有一句格言:“偵察永遠不浪費時間”。大多數軍事組織承認,在進攻敵人之前,最好盡可能地去了解敵人的一切信息。同樣,攻擊者在攻擊之前也會對目標展開廣泛的偵察。事實上,據估計,針對滲透測試或攻擊,至少有70%的“工作量”是進行偵察!一般來說,可采用兩種類型的偵察:
被動偵察。這種方式并不直接與目標以敵對方式進行交互。例如,攻擊者將會審查公共的可用網站,評估在線媒體(尤其是社交媒體網站),并試圖確定目標的攻擊表面。一項具體的任務是生成一份過去和現在的雇員姓名的列表。這些姓名將成為嘗試暴力攻擊或密碼猜測的基礎。同樣它們也將用于社會工程學的攻擊中。這種類型的偵察很難從普通用戶的行為中區分出來。
主動偵察。這種方式可以被目標檢測到,但是很難從常規的背景中區分出大多數在線組織的表現。主動偵察期間的活動包括物理訪問目標前端、端口掃描和遠程漏洞掃描。
·交付階段。交付是用于完成攻擊中的任務的武器的選擇和開發。精確的武器選擇取決于攻擊者的意圖以及交付路線(例如,借助網絡、無線,或通過基于Web的服務)。交付階段的影響將在本書后半部分(第5~14章)介紹。
·利用或攻擊階段。一個特定的漏洞被成功利用的同時,攻擊者實現他們的目標。攻擊可能在一個特定的情景下發生(例如,通過緩沖區溢出利用一個已知操作系統的安全隱患),或者可能在多個情景下發生(例如,一個攻擊者物理訪問公司處所,偷取電話簿,用公司員工的名字創建門戶登錄暴力破解列表。此外,向所有員工發送電子郵件以引誘他們單擊一個嵌入的鏈接,下載制作的PDF文件,這些文件會危及員工的計算機安全)。當惡意攻擊者針對特定的企業時,多情景攻擊是常態。
·完成階段——對目標的行動。這通常被稱為“滲漏階段”(exfiltration phase),但這是錯誤的,因為通常理解對目標的行動的攻擊,僅僅以竊取敏感信息作為唯一目的(如登錄信息、個人信息和財務信息)。通常情況下,攻擊者有不同的攻擊目標。例如,一家公司可能希望在它競爭對手的網站上發起拒絕服務攻擊,從而驅使用戶訪問自己的網站。因此,這一階段必須專注于攻擊者的可能的許多行動。最常見的利用活動是攻擊者試圖將他們的訪問權限提升到最高級(縱向提權),并且破解盡可能多的賬號(橫向提權)。
·完成階段——持久性。如果攻擊一個網絡或系統是有價值的,那么這個價值很可能在持續攻擊下增長。這就需要攻擊者持續與被攻破的系統保持通信。從防護者的角度來看,這是攻擊殺鏈中最容易檢測到的一部分。
當攻擊者試圖攻擊網絡或特定的數據系統時,攻擊殺鏈是攻擊者行為的一種元模型。作為一種元模型,它可以吸收任何私人的或商業的滲透測試方法。但是,不同于這些方法,它能使攻擊者在一個戰略高度上關注如何接近網絡。這種專注于攻擊者的活動將引導本書的布局和內容。
- Windows Server 2019 Cookbook
- Linux Mint Essentials
- SOA實踐者說
- PLC控制系統應用與維護
- Implementing Azure DevOps Solutions
- Application Development in iOS 7
- 寫給架構師的Linux實踐:設計并實現基于Linux的IT解決方案
- Red Hat Enterprise Linux 6.4網絡操作系統詳解
- Linux軟件管理平臺設計與實現
- 電腦辦公(Windows 10 + Office 2016)入門與提高(超值版)
- 電腦辦公(Windows10+Office2016)從新手到高手
- 完美應用Ubuntu(第4版)
- Docker for Developers
- 深入理解Android:卷III
- Windows 11使用方法與技巧從入門到精通