◆巨騰飛 岳劍暉
(陜西省網(wǎng)絡(luò)與信息安全測(cè)評(píng)中心 陜西 710065)
滲透檢測(cè)是運(yùn)用模擬惡意駭客的攻擊方式,來評(píng)價(jià)電腦安全性的一個(gè)評(píng)價(jià)方式。這種工作過程涉及對(duì)系統(tǒng)的各種問題、技術(shù)問題或弱點(diǎn)的主動(dòng)分析,通常這種方法在某個(gè)攻擊者可能出現(xiàn)的地方來實(shí)現(xiàn)的,而且在這些地方可以有條件自主使用安全漏洞,信息收集作為獲得企業(yè)授權(quán)之后滲透測(cè)試正式開展的第一階段,其重要性不言而喻。
我們?cè)谕饩W(wǎng)信息收集的時(shí)候,會(huì)發(fā)現(xiàn)日益安全技術(shù)發(fā)展的今天,Web 系統(tǒng)防護(hù)愈加趨于完善,很難找到可直接利用的漏洞。因此我們會(huì)將更多的精力放在企業(yè)辦公系統(tǒng)、郵箱、VPN 上,要實(shí)現(xiàn)成功滲透測(cè)試,就更加體現(xiàn)信息收集的重要性,信息搜集越完善,就越能為我們的滲透測(cè)試提供巨大幫助。
根據(jù)《精通Metasploit 滲透測(cè)試》一書所講:信息收集是整個(gè)滲透測(cè)試最重要階段之一,可任意讓測(cè)試者選擇合適和準(zhǔn)確的滲透測(cè)試攻擊方式,縮短滲透測(cè)試的時(shí)間,通常這個(gè)階段占據(jù)整個(gè)滲透測(cè)試時(shí)間的40%~60%。最終能否成功滲透進(jìn)入目標(biāo)網(wǎng)絡(luò),很大程度上取決于測(cè)試者在這個(gè)階段的工作成果,因此信息收集是Web 系統(tǒng)滲透測(cè)試不可或缺的一部分。
常見的信息收集方法包括但不限于以下十三個(gè)方面:
首先whois 信息可得到所有域名申請(qǐng)人的基本信息,包含域名注冊(cè)者、聯(lián)系人、郵箱、聯(lián)系電話、域名初始日期、域名到期日期、DNS 服務(wù)信息、域名狀態(tài)等。然后就可以使用在聯(lián)系郵件、聯(lián)系人等反查相關(guān)目標(biāo)解析過的歷史域名。
一般企業(yè)Web 應(yīng)用使用的SSL 證書、ICON 圖標(biāo)的主域名都是一致的,所以可以通過找SSL 證書、ICON 圖標(biāo)的方式找同一公司資產(chǎn)。然后將這些收集到的信息放入一些信息收集網(wǎng)站,可批量搜索目標(biāo)更多的相關(guān)資產(chǎn)。
程序員們?cè)谶M(jìn)行源代碼時(shí)喜歡把Github、網(wǎng)盤等當(dāng)成代碼庫或者存放程序,因?yàn)镚ithub 不但可以托管程序,而且還可以對(duì)其中的代碼信息進(jìn)行查詢,但在上傳或發(fā)布程序時(shí),由于安全意識(shí)不夠,會(huì)使一些敏感的配置信息文件暴露于眾。一些網(wǎng)盤不僅能存儲(chǔ)文件,還可以進(jìn)行公開文件搜索,可能會(huì)導(dǎo)致一些敏感信息泄漏。
電子郵箱信息可以為滲透測(cè)試人員提供大量的信息,有些工具可以指定瀏覽器爬取的信息,能夠高效地找到多個(gè)對(duì)測(cè)試人員有用的郵箱地址,有時(shí)候郵箱名字會(huì)反應(yīng)一個(gè)人的密碼或者命名習(xí)慣。
系統(tǒng)服務(wù)和網(wǎng)絡(luò)安全也是相對(duì)應(yīng)的,每多打開一個(gè)端口,就意味著滲透面也相應(yīng)增加,而打開的端口越多,也就意味著系統(tǒng)服務(wù)器所受到的威脅也越大?,F(xiàn)在一些主流的端口掃描工具基本都支持全端口掃描。
瀏覽器信息收集是使用網(wǎng)頁搜尋強(qiáng)大功能,來從磅礴的網(wǎng)絡(luò)中查找到所需要的資訊。從搜索結(jié)果可以搜索到歷史遺留后門、無法直接瀏覽看到的系統(tǒng)后臺(tái)入口、用戶個(gè)人信息泄漏、源代碼泄漏、未經(jīng)授權(quán)瀏覽、mdb 文件下載和備份文件等漏洞信息。
開始Web 系統(tǒng)滲透測(cè)試前,需要明確知道系統(tǒng)的網(wǎng)絡(luò)資產(chǎn):域名、IP 等,而IP 和域名有著直接的解析關(guān)系,所以如何找到網(wǎng)站所有子域名是關(guān)鍵?,F(xiàn)在有很多在線、離線工具均可進(jìn)行子域名枚舉,包括主動(dòng)枚舉與被動(dòng)枚舉。
有些大的公司通常會(huì)具有多個(gè)出口IP 地址,可能會(huì)位于相同的C 段,所以在進(jìn)行一些大的攻防演戲時(shí),C 段也是一種突破思路,C段上可能會(huì)有其他應(yīng)用或者一些廢棄的應(yīng)用未及時(shí)下線,我們可以借助這些應(yīng)用來進(jìn)行滲透測(cè)試會(huì)有意想不到的收獲。
Web 應(yīng)用指紋包括但不限于:前端框架、應(yīng)用框架、開發(fā)框架、CMS 類型、javascript 框架、css 文件或代碼、中間件、數(shù)據(jù)庫信息、網(wǎng)站開發(fā)語言、Web 服務(wù)器、注釋掉的html 代碼中的內(nèi)容、cookie中的關(guān)鍵詞、robots.txt 文件中的關(guān)鍵詞和404 報(bào)錯(cuò)頁面等信息。
企業(yè)在開發(fā)并發(fā)布Web 應(yīng)用系統(tǒng)時(shí),由于服務(wù)器配置問題,導(dǎo)致目錄瀏覽功能打開,引起敏感目錄信息泄漏,從而造成安全隱患。在信息收集中,需要收集的敏感信息包括但不限于:robots.txt、后臺(tái)目錄、目錄遍歷、數(shù)據(jù)庫備份文件、網(wǎng)站備份文件、上傳目錄、測(cè)試頁面、phpinfo、網(wǎng)頁編輯器、DS_Store 文件、phpmyadmin 頁面和crossdomin.xml 頁面等信息。
一些Web 應(yīng)用系統(tǒng)為了保證其安全性及穩(wěn)定性,采用CDN 等方式進(jìn)行部署,滲透測(cè)試過程中無法查看其真實(shí)IP 地址,這時(shí)候就需要一些在線工具或者網(wǎng)站對(duì)其歷史解析信息進(jìn)行查找,通過歷史解析信息分析出其真實(shí)IP 并對(duì)其進(jìn)行滲透測(cè)試。
通過網(wǎng)站郵箱、公告通知中收集的人名、身份證號(hào)、學(xué)號(hào)等信息,可進(jìn)行類似社工信息匯聚,將其組合成:人名+年份、人名+特殊字符+年份、人名+生日等生成密碼字典,對(duì)其網(wǎng)站后臺(tái)、辦公系統(tǒng)和郵箱等系統(tǒng)進(jìn)行密碼爆破或嘗試會(huì)有預(yù)想不到的收獲。
本文主要基于Web 系統(tǒng)簡(jiǎn)要介紹滲透測(cè)試中的一個(gè)重要階段——信息收集,包括信息收集的重要性、信息收集的分類,較為全面的總結(jié)出信息收集的常用方法,幫助安全相關(guān)測(cè)試人員拓展?jié)B透測(cè)試信息收集方法,提升滲透測(cè)試技能。