【CyberSecurityLearning 51】渗透测试方法论+渗透测试流程
目錄
滲透測(cè)試方法論
滲透測(cè)試(penetration testing,pentest)
滲透測(cè)試種類
* 黑盒測(cè)試
* 白盒測(cè)試
* 脆弱性評(píng)估與滲透測(cè)試
安全測(cè)試方法論
? * 開放式web 應(yīng)用程序安全項(xiàng)目(Open Web Aplication Security Project ,OWASP)
OWASP top 10
*通用缺陷列表(CWE)
*通用漏洞與披露(CVE)
*其他方法論
滲透測(cè)試流程
*滲透測(cè)試執(zhí)行標(biāo)準(zhǔn)
*通用滲透測(cè)試框架(√)
范圍界定
信息搜集
目標(biāo)識(shí)別
服務(wù)枚舉(就是端口掃描)
漏洞映射(就是漏洞掃描)
社會(huì)工程學(xué)
漏洞利用
權(quán)限提升
訪問維護(hù)(就是埋藏后門)
文檔報(bào)告
*簡(jiǎn)化的滲透測(cè)試流程
*黑客攻擊的一般過程
?
?
滲透測(cè)試方法論
滲透測(cè)試(penetration testing,pentest)
是實(shí)施安全評(píng)估(即審計(jì))的具體手段。
方法論是在制定、實(shí)施信息安全審計(jì)方案時(shí),需要遵循的規(guī)則、慣例和過程。
人們?cè)谠u(píng)估網(wǎng)絡(luò)、應(yīng)用、系統(tǒng)或者三者組合的安全狀況時(shí),不斷摸索各種務(wù)實(shí)的理念和成熟的做法,并總結(jié)了一套理論——滲透測(cè)試方法論。
滲透測(cè)試種類
* 黑盒測(cè)試
在進(jìn)行黑盒測(cè)試時(shí),安全審計(jì)員在不清楚被測(cè)單位的內(nèi)部技術(shù)構(gòu)造的情況下,從外部評(píng)估網(wǎng)絡(luò)基礎(chǔ)設(shè)施的安全性。
在滲透測(cè)試的各個(gè)階段,黑盒測(cè)試借助真實(shí)世界的黑客技術(shù),暴露出目標(biāo)的安全問題,甚至可以揭露尚未被他人利用的安全弱點(diǎn)。
滲透測(cè)試人員應(yīng)能理解安全弱點(diǎn),將之分類并按照風(fēng)險(xiǎn)等級(jí)(高危、中危、低危、信息泄露)對(duì)其排序。通常來說,風(fēng)險(xiǎn)級(jí)別取決于相關(guān)弱點(diǎn)可能形成危害的大小。老練的滲透測(cè)試專家應(yīng)能夠確定可引發(fā)安全事故的所有攻擊模式。
當(dāng)測(cè)試人員完成黑盒測(cè)試的所有測(cè)試工作之后,他們會(huì)把與測(cè)試對(duì)象安全狀況有關(guān)的必要信息進(jìn)行整理,并使用業(yè)務(wù)的語(yǔ)言描述這些被識(shí)別出來的風(fēng)險(xiǎn),繼而將之匯總為書面報(bào)告。黑盒測(cè)試的市場(chǎng)報(bào)價(jià)通常高于白盒測(cè)試。
* 白盒測(cè)試
白盒測(cè)試的審計(jì)員可以獲取被測(cè)單位的各種內(nèi)部資料甚至不公開的資料,所以滲透測(cè)試人員的視野更為開闊。
若以白盒測(cè)試的方法評(píng)估安全漏洞,測(cè)試人員可以以自小的工作量達(dá)到最高的評(píng)估精確度。
白盒測(cè)試從被測(cè)系統(tǒng)環(huán)境自身出發(fā),全面消除內(nèi)部安全問題。從而增加了從單位外部滲透系統(tǒng)的難度。黑盒測(cè)試起不到這樣的作用。白盒測(cè)試所需要的步驟數(shù)目與黑盒測(cè)試不相上下。
另外,若能夠?qū)缀袦y(cè)試與常規(guī)的研發(fā)生命周期相結(jié)合,就可以在入侵者發(fā)現(xiàn)甚至利用安全弱點(diǎn)之前,盡可能最早地消除全部安全隱患,這使得白盒測(cè)試的事件、成本,以及發(fā)現(xiàn)、解決安全弱點(diǎn)的技術(shù)門檻都全面低于黑盒測(cè)試。
* 脆弱性評(píng)估與滲透測(cè)試
通俗說,脆弱性評(píng)估就是漏洞掃描、漏洞發(fā)現(xiàn)、要工具。
脆弱性評(píng)估通過分析企業(yè)資產(chǎn)面臨安全威脅的情況和程度,評(píng)估內(nèi)部和外部的安全控制的安全性。
這種技術(shù)上的信息系統(tǒng)評(píng)估,不僅揭露現(xiàn)有防范措施里存在的風(fēng)險(xiǎn),而且要提出多重備選的補(bǔ)救策略,并將這些策略進(jìn)行比較。
內(nèi)部脆弱性評(píng)估可保證內(nèi)部系統(tǒng)的安全性,而外部的脆弱性評(píng)估則是驗(yàn)證邊界防護(hù)(perimeter defenses)的有效性。
無(wú)論內(nèi)部脆弱性評(píng)估還是進(jìn)行外部脆弱性評(píng)估,評(píng)估人員都會(huì)采用各種攻擊模式來嚴(yán)格測(cè)試網(wǎng)絡(luò)資產(chǎn)的安全性,從而驗(yàn)證信息系統(tǒng)處理安全威脅的能力,進(jìn)而確定應(yīng)對(duì)措施的有效性。
不同類別的脆弱性評(píng)估需要的測(cè)試流程、測(cè)試工具和自動(dòng)化測(cè)試技術(shù)也不相同。這可通過一體化的安全弱點(diǎn)管控(vulnerability management)平臺(tái)來實(shí)現(xiàn)。
現(xiàn)在的安全弱點(diǎn)管理平臺(tái)帶有可自動(dòng)更新的漏洞數(shù)據(jù)庫(kù),能夠測(cè)試不同類型的網(wǎng)絡(luò)設(shè)備,而且不會(huì)影響配置管理和變更管理的完整性。
脆弱性評(píng)估和滲透測(cè)試兩者最大的區(qū)別就是:滲透測(cè)試不僅要識(shí)別目標(biāo)的弱點(diǎn),它還設(shè)計(jì)在目標(biāo)系統(tǒng)上進(jìn)行漏洞利用、權(quán)限提升和訪問維護(hù)。
換句話說,脆弱性評(píng)估雖然可以充分發(fā)現(xiàn)系統(tǒng)里的缺陷,但不會(huì)考慮去衡量這些缺陷對(duì)系統(tǒng)造成的危害。
另外,相比脆弱性評(píng)估,滲透測(cè)試更傾向于入侵,會(huì)刻意使用各種技術(shù)手段利用安全漏洞;所以滲透測(cè)試可能對(duì)生產(chǎn)環(huán)境帶來實(shí)際的破壞性影響。而脆弱性評(píng)估以非入侵的方式,定性、定量得識(shí)別已知安全弱點(diǎn)。
?
安全測(cè)試方法論
? * 開放式web 應(yīng)用程序安全項(xiàng)目(Open Web Aplication Security Project ,OWASP)
[https://www.owasp.org.cn/]
測(cè)試指南
[https://www.owasp.org/index.php/OWASP_Testing_Project]
開發(fā)人員指南
[https://www.owasp.org/index.php/Gategory:OWASP_Top_Ten_Project]
代碼審查
OWASP top 10
Web十大安全漏洞
十大Web應(yīng)用程序安全風(fēng)險(xiǎn)
1、注入。當(dāng)將不受信任的數(shù)據(jù)作為命令或查詢的一部分發(fā)送到解釋器時(shí),會(huì)出現(xiàn)諸如SQL,NoSQL,OS和LDAP注入之類的注入漏洞。攻擊者的敵對(duì)數(shù)據(jù)可能會(huì)誘使解釋器執(zhí)行未經(jīng)預(yù)期的命令或未經(jīng)適當(dāng)授權(quán)而訪問數(shù)據(jù)。
2、身份驗(yàn)證失敗。與身份驗(yàn)證和會(huì)話管理相關(guān)的應(yīng)用程序功能通常會(huì)錯(cuò)誤地實(shí)現(xiàn),從而使攻擊者可以破壞密碼,密鑰或會(huì)話令牌,或者利用其他實(shí)現(xiàn)缺陷來臨時(shí)或永久地假定其他用戶的身份。
3、敏感數(shù)據(jù)暴露。許多Web應(yīng)用程序和API無(wú)法正確保護(hù)敏感數(shù)據(jù),例如金融,醫(yī)療保健和PII。攻擊者可能會(huì)竊取或修改這些受保護(hù)程度不高的數(shù)據(jù),以進(jìn)行信用卡欺詐,身份盜用或其他犯罪。敏感數(shù)據(jù)可能會(huì)在沒有額外保護(hù)的情況下受到損害,例如靜態(tài)加密或傳輸中加密,并且與瀏覽器進(jìn)行交換時(shí)需要采取特殊的預(yù)防措施。
4、XML外部實(shí)體(XXE)。許多較舊的或配置不當(dāng)?shù)腦ML處理器都會(huì)評(píng)估XML文檔中的外部實(shí)體引用。外部實(shí)體可以使用文件URI處理程序,內(nèi)部文件共享,內(nèi)部端口掃描,遠(yuǎn)程代碼執(zhí)行和拒絕服務(wù)攻擊來公開內(nèi)部文件。
5、訪問控制損壞。通常,對(duì)身份驗(yàn)證用戶允許執(zhí)行的操作的限制通常未得到正確執(zhí)行。攻擊者可以利用這些缺陷來訪問未經(jīng)授權(quán)的功能和/或數(shù)據(jù),例如訪問其他用戶的帳戶,查看敏感文件,修改其他用戶的數(shù)據(jù),更改訪問權(quán)限等。
6、安全配置錯(cuò)誤。安全配置錯(cuò)誤是最常見的問題。這通常是由于不安全的默認(rèn)配置,不完整或臨時(shí)的配置,開放的云存儲(chǔ),錯(cuò)誤配置的HTTP標(biāo)頭以及包含敏感信息的詳細(xì)錯(cuò)誤消息所導(dǎo)致的。不僅必須安全地配置所有操作系統(tǒng),框架,庫(kù)和應(yīng)用程序,而且還必須及時(shí)對(duì)其進(jìn)行修補(bǔ)/升級(jí)。
7、跨站點(diǎn)腳本XSS。每當(dāng)應(yīng)用程序在未經(jīng)適當(dāng)驗(yàn)證或轉(zhuǎn)義的情況下在新網(wǎng)頁(yè)中包含不受信任的數(shù)據(jù),或者使用可以創(chuàng)建HTML或JavaScript的瀏覽器API用用戶提供的數(shù)據(jù)更新現(xiàn)有網(wǎng)頁(yè)時(shí),都會(huì)發(fā)生XSS漏洞。XSS允許攻擊者在受害者的瀏覽器中執(zhí)行腳本,這些腳本可以劫持用戶會(huì)話,破壞網(wǎng)站或?qū)⒂脩糁囟ㄏ虻綈阂饩W(wǎng)站。
8、不安全的反序列化。不安全的反序列化通常會(huì)導(dǎo)致遠(yuǎn)程執(zhí)行代碼。即使反序列化缺陷不會(huì)導(dǎo)致遠(yuǎn)程執(zhí)行代碼,也可以將它們用于執(zhí)行攻擊,包括重播攻擊,注入攻擊和特權(quán)升級(jí)攻擊。
9、使用已知漏洞的組件。諸如庫(kù),框架和其他軟件模塊之類的組件以與應(yīng)用程序相同的特權(quán)運(yùn)行。如果利用了易受攻擊的組件,則此類攻擊可能會(huì)導(dǎo)致嚴(yán)重的數(shù)據(jù)丟失或服務(wù)器接管。使用具有已知漏洞的組件的應(yīng)用程序和API可能破壞應(yīng)用程序防御,并造成各種攻擊和影響。
10、日志和監(jiān)控不足。日志和監(jiān)視的不足,再加上事件響應(yīng)的缺失或無(wú)效集成,使攻擊者可以進(jìn)一步攻擊系統(tǒng),保持持久性,轉(zhuǎn)向更多系統(tǒng)以及篡改,提取或破壞數(shù)據(jù)。大多數(shù)違規(guī)研究表明,檢測(cè)到違規(guī)的時(shí)間超過200天,通常由外部各方而不是內(nèi)部流程或監(jiān)視來檢測(cè)。
*通用缺陷列表(CWE)
通俗講就是:漏洞類別的編號(hào)
CWE-79:XSS漏洞
[http://cwe.mitre.org/data/definitions/79.html]
CWE-89:SQLi
[http://cwe.mitre.org/data/definitions/89.html]
*通用漏洞與披露(CVE)
通俗講就是:具體某一個(gè)漏洞的編號(hào)
[http://cve.scap.org.cn/]
具體的某一個(gè)漏洞
[http://cve.mitre.org/]
MS17-010(微軟安全公告)【微軟17年發(fā)布的第10個(gè)安全公告】
一個(gè)公告對(duì)應(yīng)一個(gè)漏洞
KB 開頭
S2-053(S2就是strtus2,是APACHE 開源開發(fā)java的框架)
【strtus2第53個(gè)安全公告】
一個(gè)安全公告就是一個(gè)漏洞
*其他方法論
開源安全測(cè)試方法論(OSSTMM)
http://www.isecom.org/research/osstmm.html
信息系統(tǒng)安全評(píng)估框架 (ISSAF)
http://www.oissg.org/issaf
Web 應(yīng)用安全聯(lián)合威脅分類(WASC-TC)
http://projects.webappsec.org
?
滲透測(cè)試流程
*滲透測(cè)試執(zhí)行標(biāo)準(zhǔn)
滲透測(cè)試執(zhí)行標(biāo)準(zhǔn)(PTES)的先驅(qū)都是滲透測(cè)試行業(yè)的精英,有七個(gè)階段組成,
可以在任意環(huán)境中進(jìn)行富有成功的滲透測(cè)試。
[http://www.pentest-standard.org/index.php/Main_Page]
?
@7個(gè)階段
?主要特點(diǎn)優(yōu)勢(shì)
PTES的主要特性和優(yōu)勢(shì)如下
1、他是非常全面的滲透測(cè)試框架涵蓋了繩滲透測(cè)試的技術(shù)方面和其他重要方面,如范圍蔓延、報(bào)告、以及滲透人員保護(hù)自身的方法
2、他介紹了多數(shù)測(cè)試任務(wù)的具體方法,可指導(dǎo)你準(zhǔn)確測(cè)試目標(biāo)系統(tǒng)的安全狀態(tài)
3、他匯聚了多名日行一”滲“的滲透測(cè)試專家的豐富經(jīng)驗(yàn)
4、它包含最常用的以及很罕見的相關(guān)技術(shù)
5、他淺顯易懂,你可根據(jù)測(cè)試工作的需要對(duì)相應(yīng)的測(cè)試步驟進(jìn)行調(diào)整
?
*通用滲透測(cè)試框架(√)
從技術(shù)管理的角度,遵循正規(guī)的測(cè)試框架對(duì)安全測(cè)試極為重要,通用滲透測(cè)試框架涵蓋了典型的審計(jì)測(cè)試工作和滲透測(cè)試工作會(huì)涉及到的各個(gè)階段。
相關(guān)階段:
無(wú)論是進(jìn)行白盒測(cè)試還是黑盒測(cè)試,選擇和使用測(cè)試步驟都是一個(gè)滲透測(cè)試人員的責(zé)任。
在測(cè)試開始前,測(cè)試人員需要根據(jù)目標(biāo)系統(tǒng)的實(shí)際環(huán)境和已掌握的相關(guān)目標(biāo)系統(tǒng)的情況,指定最佳的測(cè)試策略。
?
范圍界定
1、測(cè)試對(duì)象是什么?
2、應(yīng)當(dāng)采用何種測(cè)試方法?黑盒/白盒
3、有哪些在滲透測(cè)試中需要滿足的條件?
4、哪些因素可能會(huì)限制測(cè)試執(zhí)行的過程?
5、需要多久才能完成測(cè)試?
6、此次測(cè)試應(yīng)該達(dá)到什么樣的任務(wù)目標(biāo)?
信息搜集
滲透測(cè)試人員需要使用各種公開的資源盡可能的獲取測(cè)試目標(biāo)的相關(guān)消信息。
從互聯(lián)網(wǎng)上搜集信息的主要渠道有:
論壇|公告板|新聞組|媒體文件|博客|社交網(wǎng)絡(luò)|其他商業(yè)或非商業(yè)的網(wǎng)站
此外還可以通過各種搜索引擎獲取相關(guān)數(shù)據(jù)。
如谷歌、雅虎、MSN必應(yīng)、百度等
收集信息主要包括DNS、服務(wù)器、路由關(guān)系、whois、數(shù)據(jù)庫(kù)、電子郵件地址、電話號(hào)碼、個(gè)人信息以及用戶賬戶。
收集的信息越多,滲透測(cè)試成功的概率越高。
目標(biāo)識(shí)別
識(shí)別目標(biāo)網(wǎng)絡(luò)的狀態(tài),操作系統(tǒng)和網(wǎng)絡(luò)架構(gòu)。
就是你要知道你被測(cè)單位有哪些聯(lián)網(wǎng)設(shè)備,并且這些聯(lián)網(wǎng)設(shè)備如何進(jìn)行通信
目前的設(shè)備主要使用的就是tcp/ip協(xié)議
你要知道我們目標(biāo)里面有多少主機(jī)在線,并且這些主機(jī)的IP地址是多少,網(wǎng)絡(luò)架構(gòu)是什么樣?網(wǎng)絡(luò)拓?fù)?#xff1f;
服務(wù)枚舉(就是端口掃描)
這一階段根據(jù)前面各個(gè)階段的成果,進(jìn)一步找出目標(biāo)系統(tǒng)所有開放的端口。
一旦找到了所有開放端口,就可以通過這些端口列出目標(biāo)系統(tǒng)上運(yùn)行的服務(wù)。
主機(jī)上開放的端口都有相應(yīng)的服務(wù)程序,對(duì)這些信息進(jìn)行深度分析之后,可進(jìn)一步發(fā)掘目標(biāo)網(wǎng)絡(luò)基礎(chǔ)設(shè)施中可能存在的漏洞。
漏洞映射(就是漏洞掃描)
根據(jù)已發(fā)現(xiàn)的的開放端口和服務(wù)程序,查找已知和未知的漏洞
社會(huì)工程學(xué)
如果目標(biāo)網(wǎng)絡(luò)沒有直接的入口,欺騙藝術(shù)將起到拋磚引玉的重要作用。
對(duì)目標(biāo)組織的人員進(jìn)行定向攻擊,很可能幫助我們找到滲透目標(biāo)系統(tǒng)的入口。
例如,誘使用戶安裝后門的惡意程序,就可能對(duì)審計(jì)人員的的滲透工作形成突破。
社會(huì)工程學(xué)滲透分為多種不同的實(shí)現(xiàn)形式。
偽裝成網(wǎng)絡(luò)管理員,通過電話要求用戶提高自己的賬戶信息;發(fā)送釣魚郵件來劫持用戶的銀行賬戶;甚至誘使某人出現(xiàn)在某地,這些都是社會(huì)工程學(xué)攻擊
需要注意的是在對(duì)目標(biāo)進(jìn)行欺騙以達(dá)到滲透目標(biāo)之前,多數(shù)情況下需要長(zhǎng)時(shí)間研究目標(biāo)人員的心理
另外,需要研究當(dāng)?shù)氐姆墒欠裨试S
漏洞利用
發(fā)現(xiàn)漏洞之后,就可以使用已有漏洞利用程序?qū)δ繕?biāo)系統(tǒng)進(jìn)行滲透
這個(gè)階段的主要任務(wù)就是控制目標(biāo)系統(tǒng)
這個(gè)流程可分為三步,涉及攻擊前、攻擊、攻擊后的相關(guān)行動(dòng)
權(quán)限提升
滲透測(cè)試人員根據(jù)其擁有的訪問權(quán)限,在目標(biāo)系統(tǒng)任意發(fā)揮,
提權(quán),就是將普通用戶權(quán)限提升至管理員權(quán)限
訪問維護(hù)(就是埋藏后門)
多數(shù)情況下,審計(jì)人員需要一段時(shí)間內(nèi)維護(hù)他們對(duì)目標(biāo)系統(tǒng)的訪問權(quán)限。
也就是埋藏后門(離開時(shí)清除后門)
文檔報(bào)告
審計(jì)人員要記錄、報(bào)告并現(xiàn)場(chǎng)演示那些已經(jīng)識(shí)別、驗(yàn)證和利用了的安全漏洞。
并根據(jù)這些文檔修補(bǔ)所有存在的安全漏洞
*簡(jiǎn)化的滲透測(cè)試流程
明確目標(biāo)
確定范圍 | 確定規(guī)則 | 確定需求
信息收集
基礎(chǔ)信息 | 系統(tǒng)信息 | 應(yīng)用信息 | 人員信息 | 防護(hù)信息
漏洞探測(cè)
系統(tǒng)漏洞 | Web服務(wù)漏洞 | Web應(yīng)用漏洞 | 其他端口 | 通信安全
漏洞驗(yàn)證
手工驗(yàn)證 | 工具驗(yàn)證 | 實(shí)驗(yàn)驗(yàn)證
漏洞利用
定制EXP | 防御繞過 | 進(jìn)一步滲透 | 清理痕跡
完整的漏洞利用程序叫EXP
形成報(bào)告
整理結(jié)果 | 補(bǔ)充介紹 | 修復(fù)建議
*黑客攻擊的一般過程
總結(jié)
以上是生活随笔為你收集整理的【CyberSecurityLearning 51】渗透测试方法论+渗透测试流程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【CyberSecurityLearni
- 下一篇: 【2016年第6期】专题:科学数据与创新