什麼是滲透測試
滲透測試是滲透測試工程師對黑客可能用來深入檢測目标網絡、主機和應用程序安全的攻擊技術和漏洞發現技術的完整模拟,并找到系統之中最易受攻擊的環節
如何進行web滲透測試
完整的web滲透測試框架當有數千個web應用程序需要測試時,有必要建立一個完整的安全測試框架。該流程的最高目标是确保向客戶提供的安全測試服務的質量。
項目立項:
項目立項、時間安排、人力配置、目标制定、廠商接口人确定
系統分析與威脅分析:針對具體的web應用,分析系統架構、使用的組件、内部提供的接口等,以STERID作為威脅模型進行相應的安全威脅分析,輸出安全威脅分析表,關注後三名威脅
制定測試用例:根據威脅分析結果制定相應的測試用例。測試用例根據模闆輸出,可以執行
測試執行和漏洞挖掘:測試用例執行和發散測試,挖掘相應的安全問題或漏洞
問題修複和回歸測試:指導客戶端應用程序開發人員修複安全問題或漏洞,并進行回歸測試,以确保安全問題或漏洞得到修複,并且沒有引入新的安全問題
項目總結審查:項目過程總結,輸出文檔審閱,以及相關文檔歸檔[2]。
web應用程序
滲透測試過程主要分為三個階段:信息收集→ 漏洞發現→ 漏洞利用率。讓我們仔細分析每個階段的過程:
I.信息收集
在信息收集階段,我們需要收集盡可能多的有關目标web應用程序的信息,例如腳本語言類型、服務器類型、目錄結構、使用的開源軟件、數據庫類型所有鍊接頁面、使用的框架、,etc
腳本語言類型:常見的腳本語言類型包括:PHP、ASP、ASPX、JSP等
測試方法:
1抓取網站的所有鍊接并檢查後綴
2直接訪問不存在的頁面,然後進行不同的後綴測試
3檢查robots Txt,檢查後綴
服務器類型:常見的web服務器包括Apache、Tomcat、IIS、,ngnix等
測試方法:
1檢查頭部并判斷服務器類型
2根據錯誤信息判斷
3根據默認頁面判斷
目錄結構:了解更多目錄,并可能發現更多弱點,如目錄浏覽、代碼洩露等
使用Google
robot 1獲取整個目錄,或者使用Google
robot 2搜索整個目錄Txt是否披露使用的開源軟件
如果我們知道目标公司使用的開源軟件,我們可以找到相關軟件的漏洞,直接測試網站
Fingerprint identification(網絡之上有很多開源的指紋識别工具)
數據庫類型:不同的數據庫有不同的測試方法
1。使用應用程序報告錯誤并檢查錯誤信息
2掃描服務器的數據庫端口(在未完成NAT且未過濾防火牆時生效)
所有鍊接頁面:這與以前的目錄結構類似,但這不僅是為了獲取網站的所有功能頁面,但也要獲取管理員備份的源代碼有時
1使用字典枚舉頁面
2使用爬蟲對整個網站進行爬網,或使用谷歌等搜索引擎獲取
3查看機器人Txt是否洩漏
許多網站使用開源框架快速開發網站,因此,收集網站的框架信息也非常重要。指紋識别(網絡之上有許多開源的指紋識别工具)
2。漏洞發現
在這個階段,我們應該在測試時對案例應用正确的藥物,而不能盲目掃描。首先,我們應該确定目标應用程序是否使用開源軟件、開源框架等,然後進行深入的漏洞掃描
關于開源軟件的漏洞發現
開源軟件:常見的開源軟件包括WordPress、phpbb、dedecms等。
開源框架:常見的開源框架包括struts 2,spring MVC、ThinkPHP等
下方件服務器:常用中間件服務器包括JBoss、Tomcat、Weblogic等
數據庫服務:常用數據庫服務MSSQL、mysql、Oracle、redis、Sybase、mongodb DB2等
開源軟件測試方法
1通過指紋識别軟件判斷開源軟件的版本信息,并根據不同的版本信息,在開放的漏洞數據庫之中找到相應版本的漏洞進行測試
2默認後台登錄頁面可以進行簡單的暴力破解,數據庫服務端口身份驗證和其他條目默認密碼嘗試和其他操作
3使用開源漏洞發現工具掃描漏洞,例如wpscan
3。漏洞利用
針對不同的漏洞,有不同的漏洞利用方法,需要更多的知識點。通常,該階段包括兩種方式:一種是手動測試,另一種是工具測試
手動測試是一種漏洞檢測技術,通過客戶端或服務器訪問目标服務,手動向目标程序發送特殊數據,包括有效和無效輸入,觀察目标的狀态及其對各種輸入的響應,并根據結果發現問題。手動測試不需要額外的輔助工具,但可以由測試人員獨立完成,實現起來相對簡單。然而,這種方法高度依賴于測試人員,這需要測試人員更好地了解目标。手動測試可用于需要用戶交互的web應用程序、浏覽器和其他程序
有想要學習資料的,私聊加V。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!