一、什么是滲透測試?
滲透測試 (penetration test)并沒有一個標(biāo)準(zhǔn)的定義,國外一些安全組織達(dá)成共識的通用說法是:滲透測試是通過模擬惡意黑客的攻擊方法,來評估計算機(jī)網(wǎng)絡(luò)系統(tǒng)安全的一種評估方法。這個過程包括對系統(tǒng)的任何弱點、技術(shù)缺陷或漏洞的主動分析,這個分析是從一個攻擊者可能存在的位置來進(jìn)行的,并且從這個位置有條件主動利用安全漏洞。換句話來說,滲透測試是指滲透人員在不同的位置(比如從內(nèi)網(wǎng)、從外網(wǎng)等位置)利用各種手段對某個特定網(wǎng)絡(luò)進(jìn)行測試,以期發(fā)現(xiàn)和挖掘系統(tǒng)中存在的漏洞,然后輸出滲透測試報告,并提交給網(wǎng)絡(luò)所有者。網(wǎng)絡(luò)所有者根據(jù)滲透人員提供的滲透測試報告,可以清晰知曉系統(tǒng)中存在的安全隱患和問題。我們認(rèn)為滲透測試還具有的兩個顯
著特點是:滲透測試是一個漸進(jìn)的并且逐步深入的過程。滲透測試是選擇不影響業(yè)務(wù)系統(tǒng)正常運(yùn)行的攻擊方法進(jìn)行的測試。作為網(wǎng)絡(luò)安全防范的一種新技術(shù),對于網(wǎng)絡(luò)安全組織具有實際應(yīng)用價值。但要找到一家合適的公司實施滲透測試并不容易。
二、滲透測試——Web如何進(jìn)行
應(yīng)用數(shù)以千計,就有必要建立一套完整的安全測試框架,流程的最高目的web當(dāng)需要測試的標(biāo)是要保證交付給客戶的安全測試服務(wù)質(zhì)量。 立項:項目建立,時間安排,人力分配,目標(biāo)制定,廠商接口數(shù)確定; 應(yīng)用:分析系統(tǒng)架構(gòu)、使用的組件、對外提供的接web威脅分析:針對具體的&系統(tǒng)分析top3重點關(guān)注輸出安全威脅分析表,為威脅模型進(jìn)行對應(yīng)的安全威脅分析,STRIDE以口等, 威脅:具備可測試用例按照模板輸出,根據(jù)威脅分析的結(jié)果制定對應(yīng)的測試用例,制定測試用例: 執(zhí)行性:or發(fā)散測試,挖掘?qū)?yīng)的安全問題&漏洞挖掘:測試用例執(zhí)行&測試執(zhí)行漏洞;漏洞并進(jìn)行回歸測試,確保or回歸測試:指導(dǎo)客戶應(yīng)用開發(fā)方修復(fù)安全問題&問題修復(fù)漏洞得到修復(fù),并且沒有引入新的安全問題;or安全問題
項目總結(jié)評審:項目過程總結(jié),輸出文檔評審,相關(guān)文檔歸檔。
應(yīng)用的滲透測試流程分別是:信息收集→漏洞發(fā)現(xiàn)→漏洞利用,下面仔細(xì)分析一下各個階3主要分為段流程
2.1信息收集:
1,獲取域名的whois信息,獲取注冊者郵箱姓名電話等。
2,查詢服務(wù)器旁站以及子域名站點,因為主站一般比較難,所以先看看旁站有沒有通用性的cms或者其他漏洞。
3,查看服務(wù)器操作系統(tǒng)版本,web中間件,看看是否存在已知的漏洞,比如IIS,APACHE,NGINX的解析漏洞
4,查看IP,進(jìn)行IP地址端口掃描,對響應(yīng)的端口進(jìn)行漏洞探測,比如 rsync,心臟出血,mysql,ftp,ssh弱口令等。
5,掃描網(wǎng)站目錄結(jié)構(gòu),看看是否可以遍歷目錄,或者敏感文件泄漏,比如php探針
6,google hack 進(jìn)一步探測網(wǎng)站的信息,后臺,敏感文件
2.2 漏洞發(fā)現(xiàn):
在這個階段我們在做測試的時候要對癥下藥,不能盲目的去掃描,首先要確定目標(biāo)應(yīng)用是否使用的是公開的開源軟件,開源框架等、然后在做深一度的漏洞掃描。
關(guān)于開源軟件的漏洞發(fā)現(xiàn):
開源的軟件:常見的開源軟件有wordpress、phpbb、dedecms
開源的框架:常見的開源框架有Struts2、 Spring MVC、ThinkPHP
中間件服務(wù)器:常見的中間件服務(wù)器有jboss、tomcat、Weblogic
數(shù)據(jù)庫服務(wù):常見的數(shù)據(jù)庫服務(wù)mssql、mysql、oracle、redis、sybase、MongoDB、DB2
對于開源軟件的測試方法:
1 通過指紋識別軟件判斷開源軟件的版本信息,針對不同的版本信息去開放的漏洞數(shù)據(jù)庫查找相應(yīng)版本的漏洞進(jìn)行測試
2 對于默認(rèn)的后臺登錄頁、數(shù)據(jù)庫服務(wù)端口認(rèn)證等入口可以進(jìn)行簡單的暴力破解、默認(rèn)口令嘗試等操作
3 使用開源的漏洞發(fā)現(xiàn)工具對其進(jìn)行漏洞掃描,如:WPScan
關(guān)于自主開發(fā)的應(yīng)用
手動測試:這個階段,我們需要手工測試所有與用戶交互的功能,比如:留言板、登入口、下單、退出、退貨、付款等操作
軟件掃描:如:appscan、wvs、netsparker,burp,nessus等
可能存在的漏洞
Owasp關(guān)鍵點
SQL注入
XSS攻擊
代碼安全之上傳文件
代碼安全之文件包含
代碼安全之SSRF
邏輯漏洞之密碼重置
邏輯漏洞之支付漏洞
邏輯漏洞之越權(quán)訪問
平臺安全之中間件安全
2.3 漏洞利用:
針對不同的弱點有不同的漏洞利用方式,需要的知識點也比較多。一般這個階段包括兩種方式,一種是手工測試,一種是工具測試
手工測試:
手工測試是通過客戶端或服務(wù)器訪問目標(biāo)服務(wù),手工向目標(biāo)程序發(fā)送特殊的數(shù)據(jù),包括有效的和無效的輸入,觀察目標(biāo)的狀態(tài)、對各種輸入的反應(yīng),根據(jù)結(jié)果來發(fā)現(xiàn)問題的漏洞檢測技術(shù)。手工測試不需要額外的輔助工具,可由測試者獨立完成,實現(xiàn)起來比較簡單。但這種方法高度依賴于測試者,需要測試者對目標(biāo)比較了解。手工測試可用于Web應(yīng)用程序、瀏覽器及其他需要用戶交互的程序。
這種方式對于有特殊過濾等操作,或者網(wǎng)絡(luò)上沒有成型的利用工具的時候可以使用。
工具測試:
網(wǎng)絡(luò)上有很多好用的免費(fèi)利用工具,比如針對sql注入的sqlmap、針對軟件漏洞的matesploit等
-
Web
+關(guān)注
關(guān)注
2文章
1272瀏覽量
69759 -
服務(wù)器
+關(guān)注
關(guān)注
12文章
9335瀏覽量
86138 -
SQL
+關(guān)注
關(guān)注
1文章
775瀏覽量
44274
發(fā)布評論請先 登錄
相關(guān)推薦
ADS1298的操作溫度范圍到底是多少?
Web安全之滲透測試基礎(chǔ)與實踐
Web端TCP/UDP測試工具!小白必學(xué)~
![<b class='flag-5'>Web</b>端TCP/UDP<b class='flag-5'>測試</b>工具!小白必學(xué)~](https://file1.elecfans.com/web3/M00/05/52/wKgZO2d-UKaAOYPYAALA2_56j2A288.png)
入門web安全筆記分享
![入門<b class='flag-5'>web</b><b class='flag-5'>安全</b>筆記分享](https://file1.elecfans.com/web3/M00/00/E4/wKgZPGdOyoqADr_dAAAtU_jOb6E500.png)
TLV320AIC3254內(nèi)部中的ADC處理模塊和minidsp到底是什么關(guān)系?
功放和運(yùn)放到底是什么區(qū)別?
過電壓電路保護(hù)的意義到底是什么
共享單車到底是什么通信原理
![共享單車<b class='flag-5'>到底是</b>什么通信原理](https://file1.elecfans.com/web2/M00/C7/85/wKgZomYUqYOACDKoAAAhy1l7n3g339.jpg)
評論