【學習筆記】外圍資訊收集
概述
滲透測試過程中,在劃定了測試範圍後,就需要進入資訊收集階段。在這個階段,滲透人員需要使用各種公開資源儘可能地獲取測試目標的相關資訊。
本次記錄了幾種外圍資訊收集的方法,以www.testfire.net 為目標,testfire.net 是IBM 公司為了演示旗下比較有名的Web 漏洞掃描器AppScan 的強大功能所搭建的模擬銀行網站,所以上面會有很多常見的Web 安全漏洞。
資訊收集方式
DNS收集
1.WHOIS資訊
1.1 whois查詢
whois 是一個整合在Kali 中的小工具,whois 工具可以用來查詢域名註冊資訊。whois 查詢域名資訊資料庫,屬於公開渠道,域名資訊有時候會進行隱藏。whois testfire.net
同時也有很多線上查詢的網站:
愛站
阿里雲
全球WHOIS查詢
站長之家whois查詢
1.2 whois反查
除了用whois 查詢以外,還可以進行反查,對於這些反查得到的資訊,如果數量龐大,說明是服務商的電話。
whois反查 | 說明 |
---|---|
郵箱反查 | 通過郵箱查詢到註冊過哪些域名 |
註冊人反查 | 通過註冊人查詢到註冊過哪些域名 |
電話反查 | 通過電話查詢到註冊過哪些域名 |
2.子域名資訊
2.1 子域名查詢
-
通過netcraft線上查詢
-
通過tools 線上工具進行查詢
-
通過Google語法查詢
-
利用HTTPS證書查詢
2.2 域傳送漏洞
DNS 區域傳送(DNS zone transfer)指的是一臺備用伺服器使用來自主伺服器的資料重新整理自己的域(zone)資料庫。這為執行中的DNS 服務提供了一定的冗餘度,其目的是為了防止主的域名伺服器因意外故障變得不可用時影響到整個域名的解析。一般來說,DNS 區域傳送操作只在網路裡真的有備用域名DNS 伺服器時才有必要用到,但許多DNS 伺服器卻被錯誤地配置成只要有client 發出請求,就會向對方提供一個zone 資料庫的詳細資訊,所以說允許不受信任的網際網路使用者執行DNS 區域傳送(zone transfer)操作,是最為嚴重的錯誤配置之一 。
- 缺乏身份認證:只要客戶端發出請求,主DNS伺服器就會同步資料庫;
- 正確的配置是主DNS伺服器指定備份DNS伺服器的IP地址;
- 可以使用dig工具來檢測域傳送漏洞
2.3 子域名爆破
原理:字典爆破
- 子域名挖掘機
- ksubdomain
DNS to IP
通過DNS解析找到IP地址
1.常用工具
1.1 ping
1.2 nslookup
1.3 dig
sudo apt-get update
sudo apt-get install dnsutils
命令 | 示例 |
---|---|
dig <domain_name> | dig www.testfire.net |
dig @<name_server> <domain_name> | dig @8.8.8.8 www.testfire.net |
dig +trace <domain_name> | dig +trace www.testfire.net |
dig axfr @<name_server> <domain_ame> | dig axfr @127.0.0.1 vulhub.org |
1.4 dnsenum
1.5 網站工具
2.CDN問題
映象(快取)伺服器:
- 提高使用者體驗
- 隱藏真實IP地址
如何繞過CDN查詢網站的真實IP地址?(思路)
- 讓目標網站主動來連線我們
- 查詢DNS 歷史記錄
- 子域名
- SSL 證書
- 全網掃描
- 國外線路
- 參考文章
IP資訊
1.IP查詢
站長工具
http://ip.tool.chinaz.com/
https://www.ip138.com/iplookup.asp?ip=65.61.137.117&action=2
1.1 IP whois查詢
http://tool.chinaz.com/ipwhois/?q=65.61.137.117
https://www.abuseipdb.com/whois/65.61.137.117
https://ipinfo.io/65.61.137.117
2.旁站查詢
同IP網站查詢
http://stool.chinaz.com/same?s=65.61.137.117&page=
3.IP to location
通過IP地址查詢到實體地址
3.1 查詢IP地址經緯度
https://www.maxmind.com/en/home
3.2 GPS定位
https://www.zoomeye.org/
利用搜索引擎搜尋
搜尋引擎是指從網際網路蒐集資訊,經過一定的整理以後,提供給使用者進行查詢的系統。傳統搜尋引擎 對我們來說並不陌生,像Google、Baidu等,每天我們幾乎都會用他們搜尋資訊。與傳統搜尋引擎相比,網路空間搜尋引擎 有很大不同,其搜尋目標為全球IP 地址,實時掃描網際網路和解析各種裝置,對網路中的裝置進行探測識別和指紋分析,並將其掃描的目標資訊進行分散式儲存,供需求者檢索使用。
傳統搜尋引擎(網頁資訊)
網路空間搜尋引擎
1.傳統搜尋引擎
1.1 Google Hacking
Google 機器人,自動爬行全世界所有網站(網頁)的內容。Google Hacking 就是利用搜索引擎的語法,達到精準搜尋資訊的目的。
參考:GHDB
功能 | Google語法 |
---|---|
探索網站目錄結構 | parent directory site:testfire.net index of site:testfire.net |
搜尋登入頁面 | site:testfire.net inurl:login site:testfire.net intext:login |
搜尋指定的檔案型別 | site:testfire.net filetype:pdf |
搜尋phpinfo() | intext:PHP Version ext:php intext:apache2handler intext:allow_url_include intext:php.ini |
2.網路空間搜尋引擎
2.1 ZoomEye
ZoomEye,又稱為“鍾馗之眼”,是國內安全廠商知道創宇傾力打造的知名空間搜尋引擎,它可以識別網路中的站點元件指紋和主機裝置指紋。
ZoomEye 支援公網裝置指紋檢索和Web 指紋檢索。Web 指紋識別包括應用名、版本、前端框架、後端框架、服務端語言、伺服器作業系統、網站容器、內容管理系統和資料庫等。裝置指紋識別包括應用名、版本、開放埠、作業系統、服務名、地理位置等,直接輸入關鍵詞即可開始檢索。下面列舉了ZoomEye 的常見搜尋語法,更多資訊也可以參考搜尋導航 。
裝置指紋檢索語法:
語法 | 描述 | 例項 |
---|---|---|
app:元件名 | 目標元件名稱 | app:"Apache httpd" |
ver:元件版本 | 目標元件版本號 | ver:'2.2.17' |
port:埠號 | 目標系統開發埠 | port:'6379' |
os:作業系統 | 目標作業系統型別 | os:linux |
service:服務名 | 目標執行的服務型別 | service:webcam |
hostname:主機名 | 目標系統的主機名 | hostname:google.com |
country:國家/地區程式碼 | 目標系統的地理位置 | country:CN |
city:城市 | 目標系統的城市 | city:'Shanghai' |
ip:IP地址 | IP地址 | ip:10.10.10.1 |
org:組織機構 | 組織機構 | org:'Vimpelcom' |
asn:自治系統號 | 自治系統編號 | asn:42893 |
ssl:SSL證書號 | SSL證書 | ssl:'corp.google.com' |
Web指紋搜尋語法:
語法 | 描述 | 示例 |
---|---|---|
app:元件名 | 目標元件名稱 | app:"Apache httpd" |
ver:元件版本 | 目標元件版本號 | ver:'2.2.17' |
site:網站域名 | 目標網站域名 | site:baidu.com |
os:作業系統 | 目標作業系統 | os:windows |
title:頁面標題 | 目標網站標題 | title:'hello' |
keywords:頁面關鍵字 | 目標頁面關鍵字 | keywords:'hello' |
desc:頁面說明 | 頁面描述欄位 | desc:'hello' |
headers:請求頭部 | HTTP請求中的headers | headers:Server |
country:國家或者地區程式碼 | 目標地理位置 | country:US |
city:城市名稱 | 目標城市 | city:"Beijing" |
ip:IP地址 | IP地址 | ip:1.1.1.1 |
org:組織機構 | 組織機構 | org:'Vimpelcom' |
asn:自治系統號 | 自治系統編號 | asn:42893 |
2.2 shodan
Shodan主要獲取網際網路中裝置中的服務、位置、埠、版本等資訊,目前比較受歡迎的內容有webcam 、linksys 、cisco 、netgear 、SCADA 等。通過不同的搜尋語法可以做到批量搜尋漏洞主機、統計中病毒主機、進行弱口令爆破、獲取shell 等功能。
語法 | 描述 | 示例 |
---|---|---|
city: <城市名稱> | 目標系統所在城市 | city:"beijing" |
country: <國家或地區程式碼> | 國家的簡稱 | country:"CN" |
geo: <經緯度> | 經緯度 | geo:"469481,7.4447" |
hostname: <主機名> | 主機名或域名 | hostname:"baidu" |
ip: <IP 地址> | IP 地址 | ip:"11.11.11.11" |
isp: <ISP 供應商> | ISP 供應上 | isp:"China Telecom" |
org: <組織或公司> | 組織或公司 | org:"baidu" |
os: <作業系統> | 作業系統 | os:"Windows 7 or 8" |
port: <埠號> | 埠號 | port:80 |
net: <CIDR 格式的IP 地址> | CIDR 格式的IP | 地址 net:"190.30.40.0/24" |
version: <軟體版本號> | 軟體版本 | version:"4.4.2" |
vuln: <漏洞編號> | 漏洞CVE編號 | vuln:CVE-2020-0787 |
http.server: <服務型別> | http 請求返回中的server 的型別 | http.server:apache |
http.status: <請求狀態碼> | http 請求返回響應碼的狀態 | http.status:200 |
網站資訊
1.網站報告
1.1 netcraft
1.2 ZoomEye
2.技術架構
作業系統+Web 伺服器+中介軟體+資料庫
*AMP
*NMP
Windows+IIS+{ASP|.NET(.aspx)}+{ACCESS|MSSQL(SQL Server)}
...
2.1 套件
- phpStudy
- XAMPP
- 寶塔
- ...
2.2 網站
前後端分離 | 站庫分離 |
---|---|
前端伺服器 後端伺服器 資料庫伺服器 檔案儲存伺服器 第三方伺服器介面(簡訊驗證介面)... | web 伺服器資料庫伺服器 |