滲透測試

關于企業的滲透測試流程

針對企業的網絡服務

  • 前期交互
    Pre-Engagement Interaction 這個階段的工作是指與客戶交流滲透測試要求或是確定滲透測試的攻擊范圍,并制定滲透測試計劃和對團隊個人分配任務(完成一次企業級的滲透測試不是一兩個人可以完成的,需要團隊的支持)
  • 信息收集
    Information Gathering
    1.關于域名的信息收集
    收集域名信息使用whois查看信息(利用云服務信息泄露,注冊人信息)
    測試是否存在域傳送漏洞(dnsenum)
    子域名爆破(dnsenum 、subdomain 、wydomain)尋找企業的二級域名
    使用google hack
    Github的信息泄露
    2.端口掃描
    使用工具:nmap
    常見的端口對應的web服務
21端口:ftp服務(弱密碼爆破,匿名登錄)
23端口:Telnet服務()
25端口:SMTP郵件協議
53端口:DNS服務
67端口:Bootstrap Protocol Server 引導程序協議客戶端
80端口:web服務
109端口:POP3服務器
137,138端口:作用是在局域網中提供計算機的名稱或是IP查詢,已知目標主機的IP地址,向地址發送一個連接137端口連接,可以獲得目標主機的相關信息。
可以判斷目標主機是否作為文件服務器或是主域控制器來使用
443端口:主要服務HTTPS服務(heartbleed心臟出血漏洞)openssl.py
1080端口:Socks代理服務
1433端口:Mssql服務(弱密碼爆破)
1521端口:oracle服務
1775端口:MMS(Microsoft Media Server)
3128端口:squid服務(攻擊者掃描這個端口是為了搜尋一個代理服務器而匿名訪問Internet)
3306端口:mysql服務(弱密碼爆破)
5554端口:蠕蟲病毒(Worm.Sasser)利用端口開啟一個ftp服務
6379端口:Redis服務(未授權訪問,弱密碼)
8080端口:web服務(tomcat,nginx)
9000端口:fpm服務

3.識別中間件
使用工具:namp,firebug,burp

現主流的操作系統、中間件、腳本解析語言、數據庫
linux +apache +php+mysql
linux +nginx+php+mysql
linux+tomcat+jsp+mysql/oracle
win 2003 +ii6s +asp(x)+mssql2005
win + iis + php +mysql
win +apache + php +mysql
apache解析漏洞:例如一個文件名x1.x2.x3,Apache會從x3開始解析,直到能夠解析為止
IIS解析漏洞:test.asp/任意文件名 | test.asp;任意文件名 | 任意文件名/任意文件名.php(屬于php-cgi漏洞),會直接按照asp解析
Nginx解析漏洞:任意文件名/任意文件名.php(php-cgi漏洞) | 任意文件名%00.php
Tomcat:Tomcat Manager弱密碼
JBoss:反序列化代碼執行,管理界面弱密碼
Weblogic:反序列化代碼執行,SSRF漏洞,管理界面弱密碼
Resin:任意文件讀取漏洞

4.CMS漏洞
使用工具:google exploit.db
power by,后臺,robots.txt識別
5.web漏洞,目錄,后臺(御劍)
使用工具:AWVS,APPSCAN
邏輯漏洞,文件包含,代碼執行,XSS,CSRF,SQL注入等漏洞
6.腳本語言識別
使用工具:whatweb
通過后綴名 ,cms,報錯信息
7.防火墻的使用情況
8.企業員工信息
使用工具:theharveter hydra
個人或企業郵箱:弱密碼爆破,水坑攻擊(利用瀏覽器漏洞,flash漏洞),魚叉攻擊(word,pdf,CHM漏洞),釣魚攻擊
個人聯系方式
社會工程學
Github信息泄露

  • 威脅建模
    Threat Modeling
    這是建立在充分的信息搜集之后的,團隊進行威脅建模與攻擊規劃,從大量的信息中找出一個企業網站最薄弱的環節。實行最有效的攻擊
  • 漏洞分析階段
    Vulnerability Analysis
    在該階段,滲透測試者需要綜合分析前幾個階段獲取并匯總的情報信息,特別是安全漏洞掃描結果、服務查點信息等。
    通過搜索可獲取的滲透代碼資源,找出可以實施滲透攻擊的攻擊點,并在實驗環境中進行驗證。
    在該階段,高水平的滲透測試團隊還會針對攻擊通道上的一些關鍵系統與服務進行安全漏洞探測與挖掘,期望找出可被利用的未知安全漏洞,并開發出滲透代碼,從而打開攻擊通道上的關鍵路徑。
  • 滲透測試攻擊
    Exploitation
    這個階段一般顯示在本地實現環境,進行有效的測試,再到企業服務器上施展攻擊。
    滲透攻擊可以利用公開渠道可獲取的滲透代碼,但一般在實際應用場景中,
    滲透測試者還需要充分地考慮目標系統特性來定制滲透攻擊,并需要挫敗目標網絡與系統中實施的安全防御措施,才能成功達成滲透目的。
    在黑盒測試中,滲透測試者還需要考慮對目標系統檢測機制的逃逸,從而避免造成目標組織安全響應團隊的警覺和發現。
  • 后滲透測試攻擊
    這一步建立在滲透側是成功之后的,進行對服務器的提權,內網滲透,權限維持(留后門)
    自主設計出攻擊目標,識別關鍵基礎設施,并尋找客戶組織最具價值和嘗試安全保護的信息和資產,
    最終達成能夠對客戶組織造成最重要業務影響的攻擊途徑。
  • 生成報告
    Reporting
    這份報告是所有階段之中滲透測試團隊所獲取的關鍵情報信息、探測和發掘出的系統安全漏洞、成功滲透攻擊的過程,
    以及造成業務影響后果的攻擊途徑,同時還要站在防御者的角度上,幫助他們分析安全防御體系中的薄弱環節、存在的問題,以及修補與升級技術方案。

總結,在所有的測試流程中,信息搜集是最關鍵的,滲透測試是需要思路和基本功,后滲透測試時展現個人能力和思路的。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容