冷濤 四川警察學院
近年來,網(wǎng)站漏洞問題依然嚴峻,挖礦木馬成為網(wǎng)站最大的現(xiàn)實威脅,網(wǎng)絡(luò)賭博、釣魚網(wǎng)站、網(wǎng)絡(luò)色情等涉網(wǎng)案件層出不窮,這給企事業(yè)單位和網(wǎng)民造成了大量損失。《中華人民共和國網(wǎng)絡(luò)安全法》自2017年6月1日正式實施,對國內(nèi)運營的信息系統(tǒng)實施等級保護提出了明確要求。滲透測試技術(shù)廣泛應用于網(wǎng)站安全等級評估和涉網(wǎng)案件的偵查工作中,信息搜集技術(shù)作為滲透測試的重要階段,對攻防雙方都是掌握信息的關(guān)鍵,作為情報偵查員,可以先發(fā)制人,搜集目標信息;作為案件偵查員,利用信息搜集技術(shù)可以后發(fā)制人,對攻擊者實施信息搜集,歸因溯源。從學者研究來看,郭璞等人介紹了信息收集的常見方法,主要有網(wǎng)站信息收集、Google Hacking、蜘蛛爬蟲、掃描工具、網(wǎng)絡(luò)媒體平臺。該方法寫的較簡略,分類不夠明晰。莫懷海等人結(jié)合主動和被動信息收集介紹了域名信息、服務器信息、架構(gòu)信息、指紋信息、敏感目錄、敏感信息等,做了大量工作,但分類還不夠全面。國外的文獻也多側(cè)重于某一具體技術(shù)的研究。筆者主要基于滲透測試理論,詳解介紹信息搜集的內(nèi)容和技術(shù),為實戰(zhàn)提供方法論。
滲透測試是一種通過模擬惡意攻擊者的技術(shù)與方法,挫敗目標系統(tǒng)的安全措施,取得訪問控制權(quán),并發(fā)現(xiàn)具備業(yè)務影響后果安全隱患的一種安全測試與評估方式。主要包括黑盒測試、白盒測試和灰盒測試。
PTES標準中定義了滲透測試的七個階段,分別是前期交互階段、信息搜集階段、威脅建模階段、漏洞分析階段、滲透測試攻擊階段、后滲透攻擊階段和報告階段。滲透測試團隊嘗試利用各種信息來源與搜集技術(shù)方法,嘗試獲取關(guān)于目標組織的網(wǎng)絡(luò)拓撲、系統(tǒng)配置與安全防御措施的信息。情報搜集的方法包括公開來源信息查詢、Google hacking、社會工程學、網(wǎng)絡(luò)踩點、掃描探測、被動監(jiān)聽、服務查點等。
作為網(wǎng)絡(luò)攻擊者,在已知目標名稱和域名的情況下,在攻擊準備階段,需要知道在網(wǎng)絡(luò)中的“地理位置”,如DNS、IP地址、單位地址、網(wǎng)絡(luò)拓撲、電話號碼、網(wǎng)管員及聯(lián)系方式等,還需知道目標系統(tǒng)中存在的安全缺陷和漏洞以及目標系統(tǒng)的安全防護機制(IDS、IPS、WAF等),作為網(wǎng)絡(luò)防御方,信息搜集的主要內(nèi)容是追查入侵者的身份、網(wǎng)絡(luò)位置、所攻擊的目標、采用的攻擊方法等,追查是否存在域、子域,搜集IP地址、網(wǎng)絡(luò)范圍、分配的ASN號碼,在這些IP地址的操作系統(tǒng)、服務、開放端口等,以及入侵者的電子郵件地址等相關(guān)信息。
信息搜集技術(shù)分為被動信息搜集和主動信息搜集,被動信息搜集是指在不被目標系統(tǒng)察覺的情況下,通過搜索引擎、社交媒體等方式對目標外圍的信息進行搜集。例如網(wǎng)站的Whois信息、DNS信息、管理員,以及工作人員的個人信息等。主動信息搜集技術(shù)則要與目標進行接觸,如端口探測、指紋探測等。下面根據(jù)滲透測試關(guān)注內(nèi)容的相關(guān)技術(shù)進行介紹。
1.Whois信息
目標域名的Whois信息,包括管理員姓名、郵箱、電話、Ns產(chǎn)商等。滲透測試者重點關(guān)注注冊商、注冊人、郵件、DNS解析服務器、注冊人聯(lián)系電話。對于獲取的郵箱賬號,可通過各種公開的社工庫查詢該郵箱密碼。Whois查詢可通過在線網(wǎng)站,如愛站網(wǎng)、站長之家、微步在線等,也可通過Kali系統(tǒng)命令Whois。
2.備案信息查詢技術(shù)
網(wǎng)站備案是根據(jù)國家法律法規(guī)規(guī)定,網(wǎng)站的所有者需向國家相關(guān)部門申請注冊并備案。在中國境內(nèi)的網(wǎng)站可查詢備案信息,查詢網(wǎng)站有天眼查、ICP備案查詢網(wǎng)。
3.DNS各類記錄獲取
DNS記錄類型較多,在信息搜集階段,需要重點關(guān)注地址記錄(A)、郵件服務器記錄(Mx)、名字服務器記錄(Ns),通過A記錄觀察域名解析到的IP,需要注意的是,如果目標使用了CDN,所獲IP不一定是目標真實IP。通過Mx記錄:檢查Smtp、Imap、Pop3是否可枚舉目標郵件用戶名,通過Ns記錄,檢查是否允許傳送,如果可傳送,將直接獲取目標所有真實子域。
4.子域名信息查詢技術(shù)
子域名即二級域名,是在頂級域名下的域名,收集的子域名越多,測試的目標越多,成功率也越大。子域名搜集的方法主要有:基于Google語法、第三方聚合應用枚舉、基于SSL證書查詢和爆破枚舉法。基于Google語法是指利用Google和Bing這樣的搜索引擎進行搜索查詢(Site:www.xxx.com),Google還支持額外的減號運算符,以排除對“網(wǎng)站:wikimedia.org-www-store”不感興趣的子域名。第三方聚合應用枚舉是利用第三方在線網(wǎng)站查詢子域名,如VirusTotal、https://dnsdumpster.com/等網(wǎng)站。Kali集成工具Dmitry,Recon-ng也可獲取子域名信息。證書透明度(CertificateTransparency,CT)是證書授權(quán)機構(gòu)(CA)的一個項目,證書授權(quán)機構(gòu)會將每個SSL/TLS證書發(fā)布到公共日志中。一個SSL/TLS證書通常包含域名、子域名和郵件地址,因此查找這些公共日志也可以獲取目標的子域名。常用查詢網(wǎng)站有“https://crt.sh”和“https://censys.io”等。爆破枚舉法是利用爆破形式的子域名挖掘常用工具有Layer子域名挖掘機、Subdomainbrute、K8、DNSRecon等,其中Layer子域名挖掘機是Windows下的檢測工具,在域名對話框直接輸入域名即可進行掃描,工具顯示比較細致,有域名、解析IP、CDN列表、Web服務器和網(wǎng)站狀態(tài)等。
1.CDN判斷和IP定位
當前大多數(shù)網(wǎng)絡(luò)運營商都采用了CDN來提高網(wǎng)絡(luò)響應速度,為了順利實現(xiàn)滲透測試,需要繞過CDN尋找真實的IP地址。CDN即內(nèi)容分發(fā)網(wǎng)絡(luò),是為解決因傳輸距離和不同運營商節(jié)點造成的網(wǎng)絡(luò)速度性能低下的問題而出現(xiàn)的一種技術(shù),它通過緩存用戶經(jīng)常訪問的靜態(tài)數(shù)據(jù)資源并在用戶二次訪問時就近分發(fā)來提高網(wǎng)站的響應速度及用戶體驗。所以當Ping目標域名時,得到的IP只是返回最近目標節(jié)點的CDN服務器的IP,并非真實IP。判斷是否使用了CDN可通過多地區(qū)Ping目標主域,如果目標服務器返回結(jié)果出現(xiàn)多個IP地址,則說明使用了CDN。繞過CDN的方法有很多,如網(wǎng)絡(luò)空間引擎搜索、查詢歷史DNS記錄、查詢子域名、漏洞利用、RSS郵件訂閱,通過Zmpap全網(wǎng)爆破查詢真實IP等。還可嘗試通過國外IP訪問。在確定真實IP后,可通過“ipip.net”等網(wǎng)站查詢服務器真實地理位置,如果確定在第三方云服務器,公安機關(guān)可通過調(diào)證手段獲取目標信息。
2.旁站、C段搜集
旁站是指和目標網(wǎng)站處于同一服務器的其它站點,有些情況下,對一個網(wǎng)站進行滲透,如果發(fā)現(xiàn)安全性較高,可以嘗試從旁站入手,通過旁站看是否有跨目錄權(quán)限,如果沒有,可繼續(xù)提權(quán)拿到更高權(quán)限之后再對目標網(wǎng)站進行滲透。C段是指和目標服務器IP處在同一個網(wǎng)段的其它服務器。通過C段可探測該網(wǎng)段的開放端口和開放Web,進而開展內(nèi)網(wǎng)滲透獲取信息。常用工具有御劍、愛站網(wǎng)、Tools內(nèi)部旁注掃描器、K8_c段旁注工具、Nmap等。
敏感資源主要包括數(shù)據(jù)庫文件、配置信息、CMS的安裝文件和后臺地址、Robots.txt、備份文件、招聘信息、人員信息、歷史漏洞信息、Github、郵箱、網(wǎng)盤等。常用技術(shù)如下:
1.Google Hacking
Google提供了多個關(guān)鍵字自定義搜集信息,見表1。其關(guān)鍵字可組合使用。作用是搜索網(wǎng)頁正文中含有"后臺管理"并且域名后綴是“edu.cn”的網(wǎng)站。此外Google搜索引擎還可用來收集數(shù)據(jù)庫文件、SQL注入、配置信息、源代碼泄露、未授權(quán)訪問和Robots.txt等敏感信息。
?
2.Shodan
Shodan是世界上第一個互聯(lián)網(wǎng)連接設(shè)備的搜索引擎。使用Shodan可發(fā)現(xiàn)哪些設(shè)備連接到Internet,它們位于何處,使用者是誰等。Shodan可以跟蹤網(wǎng)絡(luò)中所有可以直接從Internet訪問的計算機。使用Shodan可發(fā)現(xiàn)許多網(wǎng)絡(luò)設(shè)備的足跡,如連接的攝像頭,網(wǎng)絡(luò)攝像頭,交通信號燈等。
3.威脅情報大數(shù)據(jù)平臺
微步在線情報社區(qū)(https://x.threatbook.cn/),提供云Api接口,支持對內(nèi)部資產(chǎn)進行失陷檢測和發(fā)現(xiàn)威脅;對內(nèi)部大數(shù)據(jù)平臺或者安全設(shè)備日志的威脅進行檢測;對公網(wǎng)開放的應用或者服務的外放訪問IP的風險識別;對終端/服務器的可疑文件/進程是否屬于惡意程序進行分析識別;對外部安全事件的關(guān)聯(lián)拓線及溯源追蹤等。
4.開源程序
敏感資源的獲取還可通過開源程序,如Github源代碼信息泄露搜集(Github_Nuggests,GitHack)、Svn信息泄漏搜集(Svn_git_scanner)、Seekret(目錄信息搜索)、SeaySVN漏洞利用工具,DS_Store泄露(DS_Store_exp),批量信息泄露掃描(bbscan)、.hg源碼泄漏(Cvcs-Ripper-Master)。Theharvester:為域提供電子郵件地址、虛擬主機、不同域名、Shodan結(jié)果等。Spiderfoot:Spiderfoot是一種偵察工具,它可以自動查詢100多個公共數(shù)據(jù)源(OSINT),以搜集有關(guān)IP地址、域名、電子郵件地址、名稱等的情報。Recon-ng:自動化信息搜集框架,既提供了被動掃描的功能,又提供了主動掃描的功能。
5.字典或暴力破解
基于字典或暴力破解敏感目錄的工具較多,如御劍后臺掃描,DirBuster、Wwwscan、Spinder.py(輕量快速單文件目錄后臺掃描),Sensitivefilescan(輕量快速單文件目錄后臺掃描),Weakfilescan(輕量快速單文件目錄后臺掃描)。
DirBuster 是一款路徑及網(wǎng)頁暴力破解的工具,可以破解出一直沒有訪問過或者管理員后臺的界面路徑。還可掃描敏感的文件、目錄、后臺或者網(wǎng)站備份文件和數(shù)據(jù)庫文件。
在獲取目標真實IP后,需要探測目標服務器的操作系統(tǒng)版本、Web服務及版本信息、后端腳本,網(wǎng)站是否使用開源程序或框架。對目標主機的系統(tǒng)版本、服務版本以及目標站點所用的應用程序版本進行探測,為漏洞發(fā)現(xiàn)做鋪墊。例如使用nmap -sS -sV -O 192.168.26.13,參數(shù)-sS使用syn掃描,參數(shù)-sV探測詳細的服務版本信息,參數(shù)-O是探測系統(tǒng)指紋。而對網(wǎng)站CMS(內(nèi)容管理系統(tǒng))指紋識別,由于網(wǎng)站包含Html、Js、Css等文件,在這些文件中含有一些特征碼,這些特征碼就是CMS的指紋,在滲透測試中通過識別CMS查找與其相關(guān)的漏洞進行下一步操作。常用的CMS如MetInfo(米拓)、蟬知、Ecshop、DedeCMS、帝國CMS、PHPCMS、Wordpress、Discuz、Phpwind等,開源框架如Thinkphp等。識別此類網(wǎng)站的方法主要通過Whatweb、御劍Web指紋識別、WebRobo、椰樹、輕量Web指紋識別、大禹CMS識別等工具,也可通過網(wǎng)站Bugscanner、云悉指紋進行識別。
在滲透測試的過程中,對端口信息的收集是一個很重要的過程,通過掃描服務器開放的端口以及從該端口判斷服務器上存在的服務,以此對癥下藥。常用的端口掃描工具有Nmap、Zenmap、御劍等,針對掃描出的文件共享服務端口、遠程連接服務端口、Web服務端口、數(shù)據(jù)庫服務端口、郵件服務端口、網(wǎng)絡(luò)常見協(xié)議端口、特殊服務端口等進行定向攻擊。
掌握目標網(wǎng)絡(luò)的拓撲結(jié)構(gòu),對整個系統(tǒng)網(wǎng)絡(luò)的滲透成功具有重要意義。常見的網(wǎng)絡(luò)拓撲探測工具有Nslookup、Maltego、Visualroute等。其中,Maltego是圖形化界面,可搜集目標的網(wǎng)絡(luò)拓撲及相關(guān)的各類信息,Visualroute工具將Traceroute、Ping以及Whois等功能集合在了一個簡單易用的圖形界面里,可以用來分析互聯(lián)網(wǎng)的連通性,并找到快速有效的數(shù)據(jù)點以解決相關(guān)的問題。此外,該軟件還具有一個獨特的功能,即能夠找到路由器或者服務器的地理位置。
Waf也叫Web應用防火墻,是通過執(zhí)行一系列針對HTTP/HTTPS的安全策略來專門為Web應用提供保護的一款產(chǎn)品。常見的探測方法有利用Wafwoof、Nmap、Sqlmap等工具。
由于許多網(wǎng)站后臺通過郵箱登錄,因此搜集郵箱賬號可用來爆破或者弱口令登錄以及撞褲攻擊。常用的搜集郵箱賬號的方法主要有通過Google語法搜集,通過說明文檔以及網(wǎng)站頁面收集,或者從網(wǎng)站發(fā)表者以及留言板信息處收集賬號,常用工具有Msf的Search_email模塊、社工庫等。
社會工程學分為非接觸信息搜集和與人交流的社會工程學。非接觸信息搜集是指在不物理接觸目標的情況下,通過互聯(lián)網(wǎng)或其他手段,對目標進行信息搜集。主要收集姓名、性別、出生日期、身份證號碼、身份證家庭住址、快遞收貨地址、地理位置(包括照片EXIF提取、IP地址、附近的人三角定位)、學歷目標履歷素描、QQ、手機號(曾用與現(xiàn)用)、郵箱、銀行卡、電子郵箱、支付寶、各SNS主頁、微博、人人網(wǎng)、百度貼吧、網(wǎng)易輕博客等常用ID、目標性格素描。常用的社會工程學工具有Theharvester和Kali平臺下的Setoolkit集成化社會工程學工具。其中Set工具提供了網(wǎng)站攻擊、魚叉式釣魚攻擊、介質(zhì)感染攻擊、群發(fā)郵件攻擊等10多種集成攻擊手法。
在一起案件中,獲得嫌疑網(wǎng)站域名為Http://www.cpfxxx.Com/,通過上述技術(shù)信息搜集技術(shù)獲取信息如表2所示。
?
無論是滲透測試工程師、網(wǎng)絡(luò)管理員,還是網(wǎng)絡(luò)警察,在實際網(wǎng)絡(luò)安全評估或涉網(wǎng)案件的偵查工作中,信息搜集技術(shù)作為一項重要技術(shù)應用廣泛。研究基于滲透測試理論技術(shù),詳細介紹了信息搜集的內(nèi)容、技術(shù)和相關(guān)工具,對相關(guān)工作者具有一定的借鑒意義。