2021年6月7日08点37分 渗透测试基础部分
1、基礎(chǔ)知識
1.1、HTTP
一個客戶端請求應(yīng)答的標準
基于TCP層次的應(yīng)用層協(xié)議,默認端口80
1.2、HTTPS
以安全為目標的HTTP通道,簡單來說是HTTP的安全版,既HTTP下加入SSL層,HTTPS的安全基礎(chǔ)是SSL,默認端口是443
1.3、SSL(Secure Sockets Layer 安全套接字協(xié)議)
SSL是為網(wǎng)絡(luò)通信提供安全及數(shù)據(jù)完整性的一種安全協(xié)議,利用數(shù)據(jù)加密(Encryption)技術(shù),可確保數(shù)據(jù)在網(wǎng)絡(luò)上之傳輸過程中不會被截取及竊聽。
1.4、URL(統(tǒng)一資源定位符)
瀏覽器通過超文本傳輸協(xié)議,將Web服務(wù)器 站點上的網(wǎng)頁代碼提取出來,并翻譯成網(wǎng)頁
服務(wù)方式或協(xié)議+主機地址和端口號+資源的具體地址+查詢字符串+參數(shù)=參數(shù)值
1.5、Web工作過程
當單擊某一個鏈接時,HTTP開始工作,首先建立連接,客戶機發(fā)送請求到服務(wù)器,服務(wù)器接收請求后響應(yīng),
1.6、瀏覽器的工作過程
1.7、語言基礎(chǔ)
HTML:用來做網(wǎng)頁的表現(xiàn)層,字體鏈接圖片
Javascript:用在客戶端的腳本語言,可以在HTML網(wǎng)頁中使用,增加東來功能
后端語言:用來處理邏輯層的,提供網(wǎng)頁的功能和完成的動作,如數(shù)據(jù)查詢,計算利息,生成圖表
SQL:是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存儲數(shù)據(jù)以及查詢,更新和管理關(guān)系型數(shù)據(jù)庫系統(tǒng),也是數(shù)據(jù)庫腳本文件擴展名
1.8、HTTP方法
options:獲取服務(wù)器支持的HTTP方法列表
get:請求正文
head:請求頭部
post:提交數(shù)據(jù)
put:上傳文件
delete:刪除文件
move:移動文件
copy:復(fù)制文件
trace:跟蹤調(diào)試
1.9、HTTP響應(yīng)狀態(tài)碼
由三位數(shù)字組成,HTTP響應(yīng)狀態(tài)碼是告知用戶是否請求成功或者需要采取其他動作
200請求成功,301重定向,302重定向,401認證失敗,403無權(quán)訪問,404文件不存在,500服務(wù)器錯誤
1.10、術(shù)語
肉雞:是中了我們的木馬,或者留了后門,可以被我們遠程操控的機器,現(xiàn)在許多人把有WEBSHELL權(quán)限的機器也叫肉雞。
木馬:特洛伊木馬,有盜號專用的木馬,也有遠程控制專用的木馬,如:魔獸木馬生成器、冰河、灰鴿子等。
掛馬:就是在別人的網(wǎng)站文件里放入網(wǎng)頁木馬或者將代碼嵌入到正常的網(wǎng)頁文件中,以使瀏覽者中馬。
端口:是計算機與外界通訊交流的出口,不同的端口開放了不同的服務(wù)。
后門:這個就是入侵后為方便我們下次進入肉雞方便點所留下的東西,親切的稱為后門,Rookit等。
CRACK:接觸過軟件破解的人一定了解這個詞, CRACKER就是軟件破解者的意思,許多共享軟件就是我們的CRACKER來完成破解的,就是現(xiàn)在俗稱的XX軟件破解版。
POC:Proof of Concept,中文意思是“觀點證明”。這個短語會在漏洞報告中使用,漏洞報告中的POC則是一段說明或者一個攻擊的樣例,使得讀者能夠確認這個漏洞是真實存在的。
EXP:Exploit,中文意思是“漏洞利用”。意思是一段對漏洞如何利用的詳細說明或者一個演示的漏洞攻擊代碼,可以使得讀者完全了解漏洞的機理以及利用的方法。
VUL:Vulnerability的縮寫,泛指漏洞。
CVE:CVE的英文全稱是“Common Vulnerabilities & Exposures”公共漏洞和暴露,例如CVE-2015-0057、CVE-1999-0001等等。CVE就好像是一個字典表,為廣泛認同的信息安全漏洞或者已經(jīng)暴露出來的弱點給出一個公共的名稱。如果在一個漏洞報告中指明的一個漏洞,如果有CVE名稱,你就可以快速地在任何其它CVE兼容的數(shù)據(jù)庫中找到相應(yīng)修補的信息,解決安全問題。可以在https://cve.mitre.org/網(wǎng)站根據(jù)漏洞的CVE編號搜索該漏洞的介紹,也可以在中文社區(qū)http://www.scap.org.cn/上搜索關(guān)于漏洞的介紹。
0DAY:在計算機領(lǐng)域中,零日漏洞或零時差漏洞(英語:Zero-dayexploit)通常是指還沒有補丁的安全漏洞,而零日攻擊或零時差攻擊(英語:Zero-dayattack)則是指利用這種漏洞進行的攻擊。提供該漏洞細節(jié)或者利用程序的人通常是該漏洞的發(fā)現(xiàn)者。
2、滲透測試定義和流程
英文:Penetration Testing
定位:完全站在攻擊者的角度對目標系統(tǒng)進行安全性測試過程
解釋:一種安全測試的手段
2.1、滲透測試類型
黑盒測試:測試人員是在對目標系統(tǒng)一無所知的狀態(tài)下進行測試工作,除了知道目標的基本范圍之外,所有的信息都依賴測試人員自行發(fā)掘。黑盒測試主要是模擬來自互聯(lián)網(wǎng)的攻擊者,讓用戶了解自己系統(tǒng)對外來攻擊者的真實安全情況。
白盒測試:測試人員在測試前可從目標系統(tǒng)中獲得足夠的初始信息,例如網(wǎng)絡(luò)地址段、使用的網(wǎng)絡(luò)協(xié)議、拓撲圖、應(yīng)用列表等等。測試人員可以利用掌握的資料進行內(nèi)部探查,甚至與企業(yè)的員工進行交互。這類測試的目的是模擬組織內(nèi)部網(wǎng)絡(luò)管理人員的越權(quán)操作,和預(yù)防組織重要信息泄露。
灰盒測試:對測試目標有一定的了解。這類測試的目的是模擬組織內(nèi)部普通員工或?qū)ο到y(tǒng)有一定了解的非法接入用戶,可以綜合考察組織信息安全工作的運轉(zhuǎn)情況,檢驗信息安全工作人員在安全事件響應(yīng)和處理方面的實際能力。
2.2、滲透測試的目的
了解系統(tǒng)的安全保護程度和有效性
不同的安全保護程度和安全保護的有效性決定滲透測試的結(jié)果
了解攻擊者可能利用的途徑
攻擊者的經(jīng)驗決定可能利用的途徑,但成熟的攻擊者的選擇在很大程度上是相似的,所以要求攻擊者必須是成熟的、專業(yè)的,這樣才能了解信息系統(tǒng)最脆弱的環(huán)節(jié)
了解當前系統(tǒng)所面臨最重要的問題
滲透測試發(fā)現(xiàn)的問題并不全面,這也是風險評估存在的意義
2.3、滲透測試的場景
內(nèi)網(wǎng)測試:內(nèi)網(wǎng)測試指的是滲透測試人員由內(nèi)部網(wǎng)絡(luò)發(fā)起測試,這類測試能夠模擬企業(yè)內(nèi)部違規(guī)操作者的行為。最主要的“優(yōu)勢”是繞過了防火墻的保護。內(nèi)部主要可能采用的滲透方式:遠程緩沖區(qū)溢出,口令猜測,以及B/S或C/S應(yīng)用程序測試(如果涉及C/S程序測試,需要提前準備相關(guān)客戶端軟件供測試使用)
外網(wǎng)測試:外網(wǎng)測試指的是滲透測試人員完全處于外部網(wǎng)絡(luò),模擬對內(nèi)部狀態(tài)一無所知的外部攻擊者的行為。包括對網(wǎng)絡(luò)設(shè)備的遠程攻擊,口令管理安全性測試,防火墻規(guī)則試探、規(guī)避,Web及其它開放應(yīng)用服務(wù)的安全性測試。
2.4、滲透測試的流程
2.4.1、制定滲透測試方案
- 在滲透測試之前應(yīng)該制訂完善的方案,方案中應(yīng)包括:滲透測試目標、滲透測試范圍、測試時間與人員、滲透測試計劃、滲透測試方法、所采用的工具、風險及規(guī)避措施、測試過程管理等。
- 滲透測試方案中所采用的掃描及攻擊軟件工具應(yīng)具有可控性,保證工具本身的安全性。
- 制定滲透測試過程中,當目標系統(tǒng)處于非正常工作狀態(tài)時的恢復(fù)方案。
- 滲透測試方案中應(yīng)制定保密措施,應(yīng)明確指定滲透測試的參加人員,并且在滲透測試過程中對數(shù)據(jù)嚴格保密,測試結(jié)束后數(shù)據(jù)和資料應(yīng)交還被測方,并簽定保密協(xié)議。
- 應(yīng)讓被測方知曉滲透測試所有細節(jié)和風險,所有過程都在被測方的控制下進行,并在測試過程中實時與被測方溝通。
- 所有測試項目均應(yīng)獲得被測方的書面同意。
2.4.2、收集分析目標系統(tǒng)信息
網(wǎng)絡(luò)信息收集:從網(wǎng)絡(luò)上搜索一些相關(guān)信息,包括Google Hacking, Whois查詢,DNS等信息(如果考慮進行社會工程學的話,這里還可以相應(yīng)從郵件列表/新聞中獲取目標系統(tǒng)中一些邊緣信息如內(nèi)部員工帳號組成,身份識別方式,郵件聯(lián)系地址等)
目標系統(tǒng)信息收集:通過上面一步,我們應(yīng)當可以簡單的描繪出目標系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu),如公司網(wǎng)絡(luò)所在區(qū)域,子公司IP地址分布,VPN接入地址等。從獲取的地址列表中通過掃描了解其組織架構(gòu)及操作系統(tǒng)使用情況。
端口/服務(wù)信息收集:通過掃描獲取目標的端口開放信息和對應(yīng)的開放服務(wù)信息
應(yīng)用信息收集:通過上邊的信息搜集和端口/服務(wù)信息盡可能多找到目標所屬的應(yīng)用系
統(tǒng)。
2.4.3、實施攻擊
| 漏洞發(fā)現(xiàn) | 搜集密碼 |
| 漏洞利用 | 進一步滲透 |
| 權(quán)限提升 | 痕跡清除 |
2.4.4、輸出測試報告
測試結(jié)束后,通過分析滲透測試得到的數(shù)據(jù),通過識別威脅、脆弱性和已有控制措施,對被測網(wǎng)絡(luò)存在的風險進行綜合評估。并向被測方提交詳細的滲透測試報告,重點是給出系統(tǒng)風險和明確的結(jié)論,使受測機構(gòu)能夠快速掌握問題的根源,同時要向受測機構(gòu)指出合理的解決方案。
2.5、滲透測試流程圖
3、應(yīng)用安全社區(qū)和OWAP TOP 10
3.1、兩個重要的WEB應(yīng)用安全組織
WASC(Web Application Security Consortium)
是一個由安全專家、行業(yè)顧問和諸多組織的代表組成的國際團體。WASC組織的關(guān)鍵項目之一是“Web 安全威脅分類”,也就是將 Web 應(yīng)用所受到的威脅、攻擊進行說明并歸納成具有共同特征的分類。該項目的目的是針對 Web 應(yīng)用的安全隱患,制定和推廣行業(yè)標準術(shù)語。
OWAPS(Open Web Application Security Project)
該組織致力于發(fā)現(xiàn)和解決不安全 Web應(yīng)用的根本原因。它們最重要的項目之一是“Web 應(yīng)用的十大安全隱患”,總結(jié)了目前 Web 應(yīng)用最常受到的十種攻擊手段,并且按照攻擊發(fā)生的概率進行了排序。這個項目的目的是統(tǒng)一業(yè)界最關(guān)鍵的 Web 應(yīng)用安全隱患,并且加強企業(yè)對 Web 應(yīng)用安全的意識。
3.2、常見的安全社區(qū)
- CNNVD:中國國家漏洞庫(www.cnnvd.org.cn)
- CNVD:中國國家信息安全漏洞共享平臺(www.cnvd.org.cn)
- SCAP中文社區(qū):http://www.scap.org.cn/
- CVE:通用漏洞與披露
- exploit-db:https://www.exploit-db.com/
- 安全字典:www.secdic.com
- T00LS: https://www.t00ls.net
- FreeBuf互聯(lián)網(wǎng)安全新媒體平臺:www.freebuf.com
- 安全客: www.anquanke.com
- 嘶吼 RoarTalk:www.4hou.com
- 安全牛: www.aqniu.com
- 安全脈搏: www.secpulse.com
- MottoIN: www.mottoin.com
4、信息搜集
信息收集是指通過各種方式及工具獲取所需要的信息。
信息收集是信息得以利用的第一步,也是關(guān)鍵的一步。
信息收集工作的好壞,直接關(guān)系到最終結(jié)果。
4.1、域名信息搜集
域名注冊郵箱:可以通過社工方式尋找到郵箱的密碼,控制郵箱后即可獲得域名解析權(quán),可以造成域名劫持攻擊
子域名搜集:搜集更多的子域名可以擴大攻擊面,從最弱的環(huán)節(jié)進行攻擊
搜集域名信息所采用的手段主要有whois查詢,子域名搜集和爆破,DNS域傳送漏洞利用等
4.2、Whois查詢
就是查詢一個用來查詢域名是否已經(jīng)被注冊,以及注冊的域名的詳細信息的數(shù)據(jù)庫(如域名所有人、域名注冊商、域名注冊日期和過期日期等)
通過域名Whois服務(wù)器查詢,可以查詢域名歸屬者的聯(lián)系方式,以及注冊和到期時間,可以使用站長工具來查詢域名注冊信息
網(wǎng)址:http://whois.chinaz.com
Linux命令:whois test.com
windows命令:nslookup test.com
4.3、子域名搜集
可以通過搜索引擎的site語法搜集子域名信息
語法格式:site:test.com
另外可以使用subdomainbrute工具,下載:https://github.com/lijiejie/subDomainsBrute
4.4、Google Hack
Google等搜索引擎中收錄了大量存在弱點的網(wǎng)站,通過特定的搜索語法,可以準確的找到這些網(wǎng)站,這種特定的搜索語法就是GoogleHack。
根據(jù)GoogleHack得到的結(jié)果,可以作為下一步滲透思路的參考。
| intitle | intitle:后臺登陸 | 把網(wǎng)頁標題中某個關(guān)鍵字做為搜索條件 |
| inurl | inurl:admin.php | 搜索URL中包含指定關(guān)鍵字的網(wǎng)站 |
| site | site:secdic.com | 返回指定域名所有被收錄的URL |
這些語法可以自由組合,比如搜索國內(nèi)所有大學被搜索引擎收錄的后臺管理頁面,可使用
的語法有:
4.5、敏感目錄和文件掃描
目錄掃描,就是通過掛載字典的方式,拼接URL并逐個訪問,根據(jù)服務(wù)器返回的響應(yīng)判斷文件或目錄是否存在。一般情況下,當服務(wù)器返回狀態(tài)碼為200時代表文件存在,返回403時代表目錄存在。根據(jù)掃描得到的敏感文件和目錄可以作為下一步滲透思路的參考。
比如掃描到了在線編輯器,那么可通過編輯器相關(guān)漏洞進行滲透;比如掃描到了管理后臺,那么可以根據(jù)后臺標記的CMS版本信息判斷是否存在可利用漏洞,等等。
常用的工具有:wscan、wwwscan、御劍等。
總結(jié)
以上是生活随笔為你收集整理的2021年6月7日08点37分 渗透测试基础部分的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: AMD Opteron 185 + AT
- 下一篇: 球差电镜测试常见的问题及解答(二)