前言
前段時間,看了一本書名爲《Kali Linux 滲透測試的藝術》,我發現書中第四章信息蒐集那部分有些內容不能適應有些內容不能適用國內,這勾起了我想總結一下國內信息蒐集的慾望,於是就有了這篇文章。
什麼是信息蒐集
信息蒐集也稱踩點,信息蒐集毋庸置疑就是儘可能的蒐集目標的信息,包括端口信息、DNS信息、員工郵箱等等看似並不起眼的一些信息都算是信息蒐集,這些看似微乎其微的信息,對於滲透測試而言就關乎到成功與否了。xise
信息蒐集的重要性
信息蒐集是滲透測試的最重要的階段,佔據整個滲透測試的60%,可見信息蒐集的重要性。根據收集的有用信息,可以大大提高我們滲透測試的成功率。
信息蒐集的分類
1、主動式信息蒐集(可獲取到的信息較多,但易被目標發現)
2、通過直接發起與被測目標網絡之間的互動來獲取相關信息,如通過Nmap掃描目標系統。
3、被動式信息蒐集(蒐集到的信息較少,但不易被發現)
4、通過第三方服務來獲取目標網絡相關信息。如通過搜索引擎方式來蒐集信息。
蒐集什麼信息
1、whois信息(微步)
2、網站架構
3、dns信息(通過查詢dns我們可以檢測是否存在dns域傳送漏洞)
4、子域名蒐集
5、敏感目錄及敏感信息、源碼泄露(搜索引擎+工具)
6、脆弱系統(網絡空間)
7、旁站查詢
8、C端查詢
9、指紋信息
10、端口服務
11、備案信息
12、真實ip
13、探測waf
14、社工(朋友圈、微博、qq空間、求職、交易等社交平臺)
15、企業信息(天眼查、企業信用信息公示系統、工業和信息化部ICP/IP地址/域名信息備案管理系統)
信息蒐集的流程
上面我已經列舉了需要蒐集的信息,然後我給它們分了一下類。
我考慮到一個網站的組成是由域名、服務器、網站程序組成的。
因此:
首先入手域名方面:whois、子域名、備案信息;
其次是入手服務器方面:dns信息、端口服務、真實ip;
然後入手網站程序(web層)方面:網站架構、敏感目錄及敏感信息、源碼泄露(搜索引擎+工具)、脆弱系統(網絡空間)、旁站查詢、C端查詢、指紋信息、探測waf;
最後入手企業方面:天眼查、企業信用信息公示系統
歸了類之後,我做了一張腦圖。
腦圖如下圖所示:
Whois信息和Whois反查
whois是用來查詢域名的IP以及所有者等信息的傳輸協議。 whois信息可以獲取關鍵註冊人的信息,包括註冊商、聯繫人、聯繫郵箱、聯繫電話、創建時間等,可以進行郵箱反查域名,爆破郵箱,社工,域名劫持等等。http://caidaome.com/
查詢方式
2、微步
4、Linux whois命令
5、其他工具
這裏需要注意的是國際域名可以設置隱私保護,但像國內.cn等域名是不可以設置隱私保護的。
當然我們得比較一下這幾種方式哪一種比較適合自己。
站長之家查詢whois信息
這裏我用360.cn爲例。可以看到下圖我們蒐集到了註冊商、聯繫人、聯繫郵箱等信息。騰訊分分彩
可以看到很直觀,很中國,而且我們還可以通過聯繫人和聯繫郵箱反查。
我們通過聯繫人反查,蒐集到更多信息,效果如下圖
我們也可以通過郵箱反查,效果如下圖
微步查詢whois信息
下圖通過微步查詢whois信息的效果,和站長之家一樣很中國,想要反查whois需要複製郵箱
圖是反查郵箱的效果,微步需要登錄纔可以查看更多的信息。
因此相較於站長之家就顯得有些麻煩了。
who.is查詢whois信息
下圖是通過who.is網站查詢到的whois信息,可以看到中文字符竟還有亂碼,很外國,且不能whois反查。
Linux whois命令查詢whois信息
需要注意的是並不是所有Linux系統都自帶whois命令的。
我這裏就用CentOS7來演示安裝whois客戶端。
具體命令的話可以看下圖
安裝完成之後,我們來查詢一下360.cn。可以看到下圖的效果,同樣出現了亂碼。
其他工具查詢whois信息
查詢whois信息的工具,我這裏不做講解了,工具實質上還是調用了網站接口的。
因此通過比較,我們針對國內網站的whois信息,我們使用站長之家和微步來查詢whois信息效率會比較高。
子域名蒐集
子域名收集可以發現更多目標,以增加滲透測試成功的可能性,探測到更多隱藏或遺忘的應用服務,這些應用往往可導致一些嚴重漏洞。當一個主站堅不可摧時,我們可以嘗試從分站入手。
查詢方式
1、layer子域名挖掘機
3、subDomainsBrute
4、搜索引擎語法(site:xxx.com)
layer子域名挖掘機
下載地址:https://www.webshell.cc/6384.html
我們運行這款工具需要安裝.net framework 4.0以上,否則會出現像下圖一樣的錯誤信息
以360.cn爲例,爆破的效果如下圖,這款軟件的好處是還可以進行掃描端口和探測服務器類型
https://phpinfo.me/domain/
這是Lcy大佬的在線子域名爆破工具,我們可以測試一下爆破360.cn的子域名的效果,如下圖所示,作爲在線工具,它的爆破速度很可觀。
subDomainsBrute
這是lijiejie大佬用python寫的子域名爆破工具,不用說運行的話需要先安裝python,對於懶惰的人,直接拖進kali裏直接就可以運行。
github下載地址:https://github.com/lijiejie/subDomainsBrute
下圖是以360.cn爲例,用這款工具爆破出來的子域名,可以看到比較少,這是因爲字典比較小的原因。
搜索引擎語法(site:xxx.com)
我們也可以通過搜索引擎的語法搜索,但是搜索到的子域名比較少。
下圖是通過百度搜索360.cn子域名的效果圖,當然谷歌也是同樣的語法。
備案信息
備案信息分爲兩種,一種是IPC備案信息查詢,一種是公安部備案信息查詢。如果是國外的服務器是不需要備案的,因此可以忽略此步驟,國內的服務器是需要備案的,因此可以嘗試獲取信息。http://tatawed.com/
查詢方式
1、ICP備案查詢
2、公安部備案查詢
ICP備案查詢
下圖是通過網站查詢ICP備案信息
公安部備案查詢
下圖是通過全國公安機關互聯網安全管理服務平臺查詢公安部備案信息
DNS信息蒐集
通過查詢DNS信息,我們可能可以發現網站的真實ip地址,也可以嘗試測試是否存在DNS域傳送漏洞。
查詢方式
1、Kali(host、big命令)
2、windows(nslookup命令)
3、在線工具
Kali命令
host查詢DNS信息,如下圖所示:
windows命令
nslookup命令效果如下圖,比較low。
在線工具
地址:
這裏就不做講解了,和查whois信息一樣。
探測端口服務
查詢方式
Nmap
個人覺得用Nmap足矣
Nmap掃描
掃描結果如下圖所示,可以看到我們可以掃描到操作系統類型、端口信息和端口對應的服務信息。
獲取網站真實ip
現在大多數的網站都開啓了CDN加速,導致我們獲取到的IP地址不一定是真實的IP地址。
CDN的全稱是Content Delivery Network,即內容分發網絡。其基本思路是儘可能避開互聯網上有可能影響數據傳輸速度和穩定性的瓶頸和環節,使內容傳輸的更快、更穩定。通過在網絡各處放置節點服務器所構成的在現有的互聯網基礎之上的一層智能虛擬網絡,CDN系統能夠實時地根據網絡流量和各節點的連接、負載狀況以及到用戶的距離和響應時間等綜合信息將用戶的請求重新導向離用戶最近的服務節點上。其目的是使用戶可就近取得所需內容,解決 Internet網絡擁擠的狀況,提高用戶訪問網站的響應速度。騰訊分分彩
思路
1、二級域名法 一般網站不會所有的二級域名放CDN,因此我們可以利用這點來獲取網站的真實ip
2、多地ping法 由CDN的原理,不同的地方去Ping服務器,如果IP不一樣,則目標網站肯定使用了CDN
3、nslookup法 找國外的比較偏僻的DNS解析服務器進行DNS查詢,因爲大部分CDN提供商只針對國內市場,而對國外市場幾乎是不做CDN,所以有很大的機率會直接解析到真實IP
4、查看郵件法 通過查看郵件原文來確定ip地址,CDN總不會發送郵件吧
5、RSS訂閱法 RSS原理於郵件法差不多
6、查看歷史解析記錄法 查找域名歷史解析記錄,域名在上CDN之前用的IP,很有可能就是CDN的真實源IP地址
7、利用網站漏洞(XSS、命令執行、SSRF、php探針、phpinfo頁面等) 可以通過一些頁面和漏洞獲取到服務器ip地址也是可能的。
網站架構
操作系統
查詢方式:
1、Nmap
2、wappalyzer插件
3、雲悉
wappalyzer插件是一款火狐插件,可以去火狐擴展中添加。
雲悉是雲悉安全專注於網絡資產自動化梳理,cms檢測web指紋識別,讓網絡資產更清晰的在線查詢工具。
通過Nmap獲取操作系統,如下圖所示
通過wappalyzer插件查詢,如下圖所示
通過雲悉也可以查詢到操作系統,如下圖所示
中間件信息
1、wappalyzer插件
2、雲悉
通過wappalyzer插件查詢中間件信息,如下圖所示
通過雲悉也可以查詢到中間件信息,如下圖所示
數據庫
1、wappalyzer
2、雲悉
通過雲悉查詢到數據庫信息,如下圖所示
通過wappalyzer插件查詢到數據庫信息,如下圖所示
編程語言
1、wappalyzer
2、雲悉
通過wappalyzer插件查詢到編程語言信息,如下圖所示
通過雲悉查詢到編程語言信息,如下圖所示
敏感目錄及敏感信息、源碼泄露(搜索引擎+工具)
途徑方法
1、御劍
2、搜索引擎
3、BBscan
4、GSIL
5、社交平臺(QQ羣、文庫、求職網)
robots.txt、crossdomin.xml、sitemap.xml、源碼泄漏文件、/WEB-INF/
御劍
御劍這款工具主要用於掃描網站的敏感目錄、敏感文件。這裏必須要說明一下字典必須要足夠強大纔可以掃到別人發現不了的點。因此我們必須完善一下自己的字典。
下圖是我利用御劍對我自己網站的一次掃描
搜索引擎
搜索引擎也可以用於搜索網站的敏感目錄、敏感文件和敏感信息。
這裏就必須提一下搜索引擎的語法了,這裏以google 黑客語法爲例,語法同樣適用於百度搜索引擎。
基本語法:
"" //雙引號表示強制搜索
- //表示搜索不包含關鍵詞的網頁
| //或者的意思
site //返回所有於這個域名有關的網頁
intext //搜索到的網頁正文部分包含關鍵詞
intitle //搜索到的網頁標題包含關鍵詞
cache //搜索關於某些內容的緩存
definne //搜索某個詞語的定義
filetype //搜索指定的文件類型
info //查找指定站點的一些基本信息
inurl //搜索包含關鍵詞的URL
link //可以返回所有和baidu.com做了鏈接的URL
下面做幾個演示
下圖將返回360.cn的一些分站
下圖返回了所有360.cn下的所有包含login關鍵詞的URL
具體的用法你可以自己開動腦經組合使用,這裏就不多做演示了。
BBscan
BBscan是一款信息泄漏批量掃描腳本。它是依舊還是由lijiejie大佬用python寫的安全工具。
這是項目地址:https://github.com/lijiejie/BBScan
在windows平臺運行需要解決依賴問題
pip install -r requirements.txt
下圖是安裝依賴的過程
下面說一下使用示例
1. 掃描單個web服務 tatawed.com
python BBScan.py --host tatawed.com
2. 掃描tatawed.com/和www.tatawed.com//28下的其他主機
python BBScan.py --host www.tatawed.com/ --network 28
3. 掃描txt文件中的所有主機
python BBScan.py -f wandoujia.com.txt
4. 從文件夾中導入所有的主機並掃描
python BBScan.py -d targets/ --browser
5. 如果是爲了去各大src刷漏洞,可以考慮把所有域名保存到targets文件夾下,然後
python BBScan.py -d targets/ --network 30
下圖是我利用BBscan掃描自己網站
GSIL
GSIL是一款由python3寫的從github上尋找敏感文件的安全工具。
項目地址:https://github.com/FeeiCN/GSIL
先安裝一下依賴
pip install -r requirements.txt
然後需要給它進行配置
用法
# 啓動測試
$ python3 gsil.py test
# 測試token有效性
$ python3 gsil.py --verify-tokens
社交平臺
在wooyun某一些案例中,有一些奇葩的思路,通過qq羣信息泄露或者通過在線文檔平臺等等導致被攻擊。
下圖是通過QQ羣查找找到的敏感文件以及賬號和密碼信息。
下圖是通過道客巴巴獲取敏感信息,其他社交平臺這裏就不演示了,社交平臺實在有點多。
脆弱系統(網絡空間)
網絡空間搜索引擎的作用就是將互聯網上公開的網絡資產收集和整理,以此方便人們進行查閱和利用。我在網絡空間可發現了不少企業的脆弱系統,未授權訪問、SQL注入、弱口令等等都是存在的。
網絡空間搜索引擎:
1、Shodan
2、FOFA
3、Zoomeye
旁站查詢
什麼是旁站
旁站是和目標網站在同一臺服務器上的其它的網站。
在線工具 k8旁站查詢
在線工具獲取旁站
下圖是通過站長之家獲取同一個服務器下的站點信息
k8查詢旁站
這個工具是C#寫的,因此需要.NET Framework v4.0
想要使用這款工具還需要申請必應API,我手工測試時是打不開KEY申請地址的,可能已經不行了,因此還是推薦使用在線工具查詢吧。
C端查詢
什麼是C端
C端是和目標服務器ip處在同一個C段的其它服務器。
查詢方式
北極熊掃描器 Nmap
北極熊掃描器掃C端
這是一款國人寫的掃描器,不得不說這款掃描器誤報率是真的高。通過一些實戰我發現這款掃描器不錯的是C端掃描,可以獲取網站標題、服務環境、程序類型
下圖是使用北極熊掃描器掃C端的效果圖
Nmap掃C端
下圖是Nmap掃描開放http服務的服務器的效果圖
指紋信息
指紋是什麼
指定路徑下指定名稱的js文件或代碼。
指定路徑下指定名稱的css文件或代碼。
<title>中的內容,有些程序標題中會帶有程序標識
meta標記中帶程序標識<meta name=”description”/><meta name=”keywords”/><meta name=”generator”/><meta name=”author”/><meta name=”copyright”/>中帶程序標識。
display:none中的版權信息。
頁面底部版權信息,關鍵字© Powered by等。
readme.txt、License.txt、help.txt等文件。
指定路徑下指定圖片文件,如一些小的圖標文件,後臺登錄頁面中的圖標文件等,一般管理員不會修改它們。
註釋掉的html代碼中<!–
http頭的X-Powered-By中的值,有的應用程序框架會在此值輸出。
cookie中的關鍵字
robots.txt文件中的關鍵字
404頁面
302返回時的旗標
指紋信息的重要性
通過識別目標網站所使用的CMS信息,可以幫助我們進一步瞭解滲透測試環境,可以利用已知的一些CMS漏洞來進行攻擊。
識別指紋方式
1、雲悉
2、wappalyzer插件
3、whatweb工具
探測waf
WAF也稱Web應用防護系統,Web應用防火牆是通過執行一系列針對HTTP/HTTPS的安全策略來專門爲Web應用提供保護的一款產品。
原理:WAF識別大多基於Headers頭信息。通過發送惡意的內容,對比響應,尋找數據包被攔截、拒絕或者檢測到的標識。
探測方式
手工(提交惡意數據)
工具(WAFW00F、Nmap)
我們可以通過工具判斷,如果工具檢測到WAF的存在,手工驗證一下是否存在誤報;如果工具檢測不到WAF的存在,我們也可以通過手工來判斷WAF到底存不存在。
Nmap探測WAF
Nmap探測WAF有兩種腳本,一種是http-waf-detect,一種是http-waf-fingerprint。
WAFW00F探測WAF
手工探測WAF
在網址URL參數後面輸入惡意數據,通過提交後被WAF攔截得知WAF信息。如下圖
天眼查
地址:https://www.tianyancha.com/
天眼查是一款“都能用的商業安全工具”,根據用戶的不同需求,實現了企業背景、企業發展、司法風險、經營風險、經營狀況、知識產權方面等多種數據維度的檢索。
下圖以奇虎360爲例
企業信用信息公示系統
地址:http://www.gsxt.gov.cn/index.html
下圖以奇虎360爲例
參考
書籍《Kali Linux 滲透測試的藝術》
*本文作者:看不盡的塵埃,轉載請註明來自 Freebuf