安全工具系列 -- 信息收集(二)
1、whois查詢網(wǎng)站及服務(wù)器信息
如果知道目標(biāo)的域名,你首先要做的就是通過(guò)Whois數(shù)據(jù)庫(kù)查詢域名的注冊(cè)信息,Whois數(shù)據(jù)庫(kù)是提供域名的注冊(cè)人信息,包括聯(lián)系方式,管理員名字,管理員郵箱等等,其中也包括DNS服務(wù)器的信息。
默認(rèn)情況下,Kali已經(jīng)安裝了Whois。你只需要輸入要查詢的域名即可:
利用以上收集到的郵箱、QQ、電話號(hào)碼、姓名、以及服務(wù)商,可以針對(duì)性進(jìn)行攻擊,利用社工庫(kù)進(jìn)行查找相關(guān)管理員信息,另外也可以對(duì)相關(guān)DNS服務(wù)商進(jìn)行滲透,查看是否有漏洞,利用第三方漏洞平臺(tái),查看相關(guān)漏洞。
2、Dig使用
可以使用dig命令對(duì)DNS服務(wù)器進(jìn)行挖掘。
Dig命令后面直接跟域名,回車即可
Dig常用選項(xiàng)
- -c?選項(xiàng),可以設(shè)置協(xié)議類型(class),包括IN(默認(rèn))、CH和HS。
- -f?選項(xiàng),dig支持從一個(gè)文件里讀取內(nèi)容進(jìn)行批量查詢,這個(gè)非常體貼和方便。文件的內(nèi)容要求一行為一個(gè)查詢請(qǐng)求。來(lái)個(gè)實(shí)際例子吧:
- -4?和-6?兩個(gè)選項(xiàng),用于設(shè)置僅適用哪一種作為查詢包傳輸協(xié)議,分別對(duì)應(yīng)著IPv4和IPv6。
- -t?選項(xiàng),用來(lái)設(shè)置查詢類型,默認(rèn)情況下是A,也可以設(shè)置MX等類型,來(lái)一個(gè)例子:
- -q?選項(xiàng),其實(shí)它本身是一個(gè)多余的選項(xiàng),但是它在復(fù)雜的dig命令中又是那么的有用。-q選項(xiàng)可以顯式設(shè)置你要查詢的域名,這樣可以避免和其他眾多的參數(shù)、選項(xiàng)相混淆,提高了命令的可讀性,來(lái)個(gè)例子:
- -x?選項(xiàng),是逆向查詢選項(xiàng)。可以查詢IP地址到域名的映射關(guān)系。舉一個(gè)例子:
跟蹤dig全過(guò)程
dig非常著名的一個(gè)查詢選項(xiàng)就是+trace,當(dāng)使用這個(gè)查詢選項(xiàng)后,dig會(huì)從根域查詢一直跟蹤直到查詢到最終結(jié)果,并將整個(gè)過(guò)程信息輸出出來(lái)
精簡(jiǎn)dig輸出
使用+nocmd的話,可以節(jié)省輸出dig版本信息。
Dig可以用來(lái)查域傳送漏洞,前面介紹了dig的使用,若將查詢類型設(shè)定為axfr,就能得到域傳送數(shù)據(jù)。這也是我們要用來(lái)測(cè)試DNS域傳送泄露的命令.
3、Nslookup用法
nslookup是站長(zhǎng)較為常用的工具之一,它甚至比同類工具dig的使用人數(shù)更多,原因是它的運(yùn)行環(huán)境是windows,并且不需要我們?cè)倭硗獍惭b什么東西。dig是在linux環(huán)境里運(yùn)行的命令,不過(guò)也可以在windows環(huán)境里使用,只是需要安裝dig windows版本的程序。
Nslookup命令以兩種方式運(yùn)行:非交互式和交互式。
本文第一次提到“交互式”的概念,簡(jiǎn)單說(shuō)明:交互式系統(tǒng)是指執(zhí)行過(guò)程中允許用戶輸入數(shù)據(jù)和命令的系統(tǒng)。而非交互式系統(tǒng),是指一旦開(kāi)始運(yùn)行,不需要人干預(yù)就可以自行結(jié)束的系統(tǒng)。因此,nslookup以非交互式方式運(yùn)行,就是指運(yùn)行后自行結(jié)束。而交互式,是指開(kāi)始運(yùn)行后,會(huì)要求使用者進(jìn)一步輸入數(shù)據(jù)和命令。
類型
- A 地址記錄
- AAAA 地址記錄
- AFSDB Andrew文件系統(tǒng)數(shù)據(jù)庫(kù)服務(wù)器記錄
- ATMA ATM地址記錄
- CNAME 別名記錄
- HINFO 硬件配置記錄,包括CPU、操作系統(tǒng)信息
- ISDN 域名對(duì)應(yīng)的ISDN號(hào)碼
- MB 存放指定郵箱的服務(wù)器
- MG 郵件組記錄
- MINFO 郵件組和郵箱的信息記錄
- MR 改名的郵箱記錄
- MX 郵件服務(wù)器記錄
- NS 名字服務(wù)器記錄
- PTR 反向記錄
- RP 負(fù)責(zé)人記錄
- RT 路由穿透記錄
- SRV TCP服務(wù)器信息記錄
- TXT 域名對(duì)應(yīng)的文本信息
- X25 域名對(duì)應(yīng)的X.25地址記錄
例如
1.設(shè)置類型為ns
2.下面的例子查詢baidu.com使用的DNS服務(wù)器名稱:
3.下面的例子展示如何查詢baidu.com的郵件交換記錄:
4.查看網(wǎng)站cname值。
5.查看郵件服務(wù)器記錄(-qt=MX)
6.同樣nslookup也可以驗(yàn)證是否存在域傳送漏洞,步驟如下:
4、fierce工具
在進(jìn)行了基本域名收集以后,如果能通過(guò)主域名得到所有子域名信息,再通過(guò)子域名查詢其對(duì)應(yīng)的主機(jī)IP,這樣我們能得到一個(gè)較為完整的信息。除了默認(rèn)使用,我們還可以自己定義字典來(lái)進(jìn)行域名爆破。
使用fierce工具,可以進(jìn)行域名列表查詢:fierce -dns domainName
輸出結(jié)果表明,程序首先進(jìn)行了域傳送測(cè)試,域傳送通過(guò)一條命令就能獲取服務(wù)器上所有的域名信息。如果一次就能簡(jiǎn)單獲取服務(wù)器上所有記錄域名信息,就不再暴力破解。
但從結(jié)果上看,“Unsucessful in zone transfer”,
域傳送測(cè)試是失敗了。接著執(zhí)行暴力破解,測(cè)試的數(shù)量取決于字典中提供的字符串?dāng)?shù)量,上例中沒(méi)有指定字典,在默認(rèn)情況下在Kali中使用/usr/share/fierce/hosts.txt。
一個(gè)內(nèi)部網(wǎng)絡(luò)的DNS域名服務(wù)器可以提供大量信息,這些信息可以在以后評(píng)估網(wǎng)絡(luò)漏洞。
5、theHarvester的使用
theHarvester是一個(gè)社會(huì)工程學(xué)工具,它通過(guò)搜索引擎、PGP服務(wù)器以及SHODAN數(shù)據(jù)庫(kù)收集用戶的email,子域名,主機(jī),雇員名,開(kāi)放端口和banner信息。
- -d?服務(wù)器域名
- -l?限制顯示數(shù)目
- -b?調(diào)用搜索引擎(baidu,google,bing,bingapi,pgp,linkedin,googleplus,jigsaw,all)
- -f?結(jié)果保存為HTML和XML文件
- -h?使用傻蛋數(shù)據(jù)庫(kù)查詢發(fā)現(xiàn)主機(jī)信息
實(shí)例1
theHarvester -d sec-redclub.com -l 100 -b baidu實(shí)戰(zhàn)2
輸出到html文件中,可以更清晰的看到搜索的網(wǎng)站信息的模型。
theHarvester -d sec-redclub.com -l 100 -b baidu -f myresults.html6、DNS枚舉工具DNSenum
DNSenum是一款非常強(qiáng)大的域名信息收集工具。它能夠通過(guò)谷歌或者字典文件猜測(cè)可能存在的域名,并對(duì)一個(gè)網(wǎng)段進(jìn)行反向查詢。它不僅可以查詢網(wǎng)站的主機(jī)地址信息、域名服務(wù)器和郵件交換記錄,還可以在域名服務(wù)器上執(zhí)行axfr請(qǐng)求,然后通過(guò)谷歌腳本得到擴(kuò)展域名信息,提取子域名并查詢,最后計(jì)算C類地址并執(zhí)行whois查詢,執(zhí)行反向查詢,把地址段寫入文件。
本小節(jié)將介紹使用DNSenum工具檢查DNS枚舉。在終端執(zhí)行如下所示的命令:
輸出的信息顯示了DNS服務(wù)的詳細(xì)信息。其中,包括主機(jī)地址、域名服務(wù)地址和郵件服務(wù)地址,最后會(huì)嘗試是否存在域傳送漏洞。
使用DNSenum工具檢查DNS枚舉時(shí),可以使用dnsenum的一些附加選項(xiàng),如下所示。
- --threads [number]:設(shè)置用戶同時(shí)運(yùn)行多個(gè)進(jìn)程數(shù)。
- -r:允許用戶啟用遞歸查詢。
- -d:允許用戶設(shè)置WHOIS請(qǐng)求之間時(shí)間延遲數(shù)(單位為秒)。
- -o:允許用戶指定輸出位置。
- -w:允許用戶啟用WHOIS請(qǐng)求。
7、subDomainsbrute二級(jí)域名收集
二級(jí)域名是指頂級(jí)域名之下的域名,在國(guó)際頂級(jí)域名下,它是指域名注冊(cè)人的網(wǎng)上名稱;在國(guó)家頂級(jí)域名下,它是表示注冊(cè)企業(yè)類別的符號(hào)。
我國(guó)在國(guó)際互聯(lián)網(wǎng)絡(luò)信息中心(Inter NIC) 正式注冊(cè)并運(yùn)行的頂級(jí)域名是CN,這也是我國(guó)的一級(jí)域名。
在頂級(jí)域名之下,我國(guó)的二級(jí)域名又分為類別域名和行政區(qū)域名兩類。類別域名共7個(gè),包括用于科研機(jī)構(gòu)的ac;國(guó)際通用域名com、top;用于教育機(jī)構(gòu)的edu;用于政府部門的gov;用于互聯(lián)網(wǎng)絡(luò)信息中心和運(yùn)行中心的net;用于非盈利組織的org。而行政區(qū)域名有34個(gè),分別對(duì)應(yīng)于我國(guó)各省、自治區(qū)和直轄市。
以上為工具默認(rèn)參數(shù),如果是新手,請(qǐng)直接跟主域名即可,不用進(jìn)行其它設(shè)置。
Python subDomainsbrute.py sec-redclub.com
就可以直接運(yùn)行,等待結(jié)果,最后在工具文件夾下面存在txt文件,直接導(dǎo)入掃描工具就可以進(jìn)行掃描了。
8、layer子域名檢測(cè)工具
layer子域名檢測(cè)工具主要是windows一款二級(jí)域名檢測(cè)工具,利用爆破形式。
工具作者:http://www.cnseay.com/4193/
域名對(duì)話框直接輸入域名就可以進(jìn)行掃描了,工具顯示比較細(xì)致,有域名、解析ip、cnd列表、web服務(wù)器和網(wǎng)站狀態(tài),這些對(duì)于一個(gè)安全測(cè)試人員,非常重要。如下操作:
會(huì)顯示大部分主要二級(jí)域名。
9、Nmap
Nmap是一個(gè)網(wǎng)絡(luò)連接端口掃描軟件,用來(lái)掃描網(wǎng)上電腦開(kāi)放的網(wǎng)絡(luò)連接端口。確定哪些服務(wù)運(yùn)行在哪些連接端口,并且推斷計(jì)算機(jī)運(yùn)行哪個(gè)操作系統(tǒng)。它是網(wǎng)絡(luò)管理員必用的軟件之一,以及用以評(píng)估網(wǎng)絡(luò)系統(tǒng)安全。
功能
- 主機(jī)發(fā)現(xiàn)
- 端口掃描
- 版本偵測(cè)
- OS偵測(cè)
部署方式
- Kail集成環(huán)境
- 單獨(dú)安裝(使用yum、apt-get工具直接安裝)
- PentestBox環(huán)境
- Windows版等等
Nmap使用
Nmap的參數(shù)和選項(xiàng)繁多,功能非常豐富。我們先來(lái)看一下Nmap的通用命令格式:Nmap<掃描選項(xiàng)><掃描目標(biāo)>(詳細(xì)教程及下載方式參見(jiàn):http://nmap.org/)
主機(jī)發(fā)現(xiàn)的原理與Ping命令類似,發(fā)送探測(cè)包到目標(biāo)主機(jī),如果收到回復(fù),那么說(shuō)明目標(biāo)主機(jī)是開(kāi)啟的。Nmap支持十多種不同的主機(jī)探測(cè)方式,比如發(fā)送ICMP ECHO/TIMESTAMP/NETMASK報(bào)文、發(fā)送TCPSYN/ACK包、發(fā)送SCTP INIT/COOKIE-ECHO包,用戶可以在不同的條件下靈活選用不同的方式來(lái)探測(cè)目標(biāo)機(jī)。
主機(jī)發(fā)現(xiàn)的基本用法
- -sL: List Scan 列表掃描,僅將指定的目標(biāo)的IP列舉出來(lái),不進(jìn)行主機(jī)發(fā)現(xiàn)。
- -sn: Ping Scan 只進(jìn)行主機(jī)發(fā)現(xiàn),不進(jìn)行端口掃描。
- -Pn: 將所有指定的主機(jī)視作開(kāi)啟的,跳過(guò)主機(jī)發(fā)現(xiàn)的過(guò)程。
- -PS/PA/PU/PY[portlist]: 使用TCPSYN/ACK或SCTP INIT/ECHO方式進(jìn)行發(fā)現(xiàn)。
- -PE/PP/PM: 使用ICMP echo, timestamp, and netmask 請(qǐng)求包發(fā)現(xiàn)主機(jī)。
- -PO[protocollist]: 使用IP協(xié)議包探測(cè)對(duì)方主機(jī)是否開(kāi)啟。
- -sP: Ping 指定范圍內(nèi)的 IP 地址
- -n/-R: -n表示不進(jìn)行DNS解析;-R表示總是進(jìn)行DNS解析。
- --dns-servers <serv1[,serv2],...>: 指定DNS服務(wù)器。
- --system-dns: 指定使用系統(tǒng)的DNS服務(wù)器
- --traceroute: 追蹤每個(gè)路由節(jié)點(diǎn)
掃描局域網(wǎng)192.168.80.1/24范圍內(nèi)哪些IP的主機(jī)是活動(dòng)的。命令如下:nmap –sn 192.168.80.1/24
由圖可知:192.168.80.1、192.168.80.254、192.168.80.166三臺(tái)主機(jī)處于存活狀態(tài)。
掃描局域網(wǎng)192.168.80.100-200范圍內(nèi)哪些IP的主機(jī)是活動(dòng)的。命令如下:nmap –sP 192.168.80.100-200
端口掃描是Nmap最基本最核心的功能,用于確定目標(biāo)主機(jī)的TCP/UDP端口的開(kāi)放情況。默認(rèn)情況下,Nmap會(huì)掃描1000個(gè)最有可能開(kāi)放的TCP端口。Nmap通過(guò)探測(cè)將端口劃分為6個(gè)狀態(tài):
- open:端口是開(kāi)放的。
- closed:端口是關(guān)閉的。
- filtered:端口被防火墻IDS/IPS屏蔽,無(wú)法確定其狀態(tài)。
- unfiltered:端口沒(méi)有被屏蔽,但是否開(kāi)放需要進(jìn)一步確定。
- open|filtered:端口是開(kāi)放的或被屏蔽。
- closed|filtered:端口是關(guān)閉的或被屏蔽。
端口掃描方面非常強(qiáng)大,提供了很多的探測(cè)方式:
- TCP SYN scanning
- TCP connect scanning
- TCP ACK scanning
- TCP FIN/Xmas/NULL scanning
- UDP scanning
- 其他方式
- -sS/sT/sA/sW/sM: 指定使用 TCP SYN/Connect()/ACK/Window/Maimon scans的方式來(lái)對(duì)目標(biāo)主機(jī)進(jìn)行掃描。
- -sU: 指定使用UDP掃描方式確定目標(biāo)主機(jī)的UDP端口狀況。
- -sN/sF/sX: 指定使用TCP Null,FIN,and Xmas?scans秘密掃描方式來(lái)協(xié)助探測(cè)對(duì)方的TCP端口狀態(tài)。
- --scanflags <flags>: 定制TCP包的flags。
- -sI?zombiehost[:probeport]: 指定使用idle scan方式來(lái)掃描目標(biāo)主機(jī)(前提需要找到合適的zombie host)
- -sY/sZ: 使用SCTP INIT/COOKIE-ECHO來(lái)掃描SCTP協(xié)議端口的開(kāi)放的情況。
- -sO: 使用IP protocol 掃描確定目標(biāo)機(jī)支持的協(xié)議類型。
- -b <FTP relay host>: 使用FTP bounce scan掃描方式
- -p: 指定端口掃描
在此,我們以主機(jī)192.168.80.166為例。命令如下:nmap -sS -p0-65535 -T4 192.168.80.166
參數(shù)-sS表示使用TCP SYN方式掃描TCP端口;-p0-65535表示掃描所有端口;-T4表示時(shí)間級(jí)別配置4級(jí);
掃描特定端口是否開(kāi)放:nmap -p21,80,445,3306 192.168.80.166
簡(jiǎn)要的介紹版本的偵測(cè)原理。版本偵測(cè)主要分為以下幾個(gè)步驟:
- 首先檢查open與open|filtered狀態(tài)的端口是否在排除端口列表內(nèi)。如果在排除列表,將該端口剔除。
- 如果是TCP端口,嘗試建立TCP連接。嘗試等待片刻(通常6秒或更多,具體時(shí)間可以查詢文件nmap-services-probes中Probe TCP NULL q||對(duì)應(yīng)的totalwaitms)。通常在等待時(shí)間內(nèi),會(huì)接收到目標(biāo)機(jī)發(fā)送的“WelcomeBanner”信息。nmap將接收到的Banner與nmap-services-probes中NULLprobe中的簽名進(jìn)行對(duì)比。查找對(duì)應(yīng)應(yīng)用程序的名字與版本信息。
- 如果通過(guò)“Welcome Banner”無(wú)法確定應(yīng)用程序版本,那么nmap再嘗試發(fā)送其他的探測(cè)包(即從nmap-services-probes中挑選合適的probe),將probe得到回復(fù)包與數(shù)據(jù)庫(kù)中的簽名進(jìn)行對(duì)比。如果反復(fù)探測(cè)都無(wú)法得出具體應(yīng)用,那么打印出應(yīng)用返回報(bào)文,讓用戶自行進(jìn)一步判定。
- 如果是UDP端口,那么直接使用nmap-services-probes中探測(cè)包進(jìn)行探測(cè)匹配。根據(jù)結(jié)果對(duì)比分析出UDP應(yīng)用服務(wù)類型。
- 如果探測(cè)到應(yīng)用程序是SSL,那么調(diào)用openSSL進(jìn)一步的偵查運(yùn)行在SSL之上的具體的應(yīng)用類型。
- 如果探測(cè)到應(yīng)用程序是SunRPC,那么調(diào)用brute-force RPC grinder進(jìn)一步探測(cè)具體服務(wù)。
- -sV: 指定讓Nmap進(jìn)行版本偵測(cè)
- --version-intensity <level>: 指定版本偵測(cè)強(qiáng)度(0-9),默認(rèn)為7。數(shù)值越高,探測(cè)出的服務(wù)越準(zhǔn)確,但是運(yùn)行時(shí)間會(huì)比較長(zhǎng)。
- --version-light: 指定使用輕量偵測(cè)方式 (intensity 2)
- --version-all: 嘗試使用所有的probes進(jìn)行偵測(cè) (intensity 9)
- --version-trace: 顯示出詳細(xì)的版本偵測(cè)過(guò)程信息。
對(duì)主機(jī)192.168.80.166進(jìn)行版本偵測(cè)。命令如下:nmap -sV -p0-65535 -T4 192.168.80.166
Nmap使用TCP/IP協(xié)議棧指紋來(lái)識(shí)別不同的操作系統(tǒng)和設(shè)備。在RFC規(guī)范中,有些地方對(duì)TCP/IP的實(shí)現(xiàn)并沒(méi)有強(qiáng)制規(guī)定,由此不同的TCP/IP方案中可能都有自己的特定方式。Nmap主要是根據(jù)這些細(xì)節(jié)上的差異來(lái)判斷操作系統(tǒng)的類型的。
Nmap內(nèi)部包含了2600多已知系統(tǒng)的指紋特征(在文件nmap-os-db文件中)。將此指紋數(shù)據(jù)庫(kù)作為進(jìn)行指紋對(duì)比的樣本庫(kù)。分別挑選一個(gè)open和closed的端口,向其發(fā)送經(jīng)過(guò)精心設(shè)計(jì)的TCP/UDP/ICMP數(shù)據(jù)包,根據(jù)返回的數(shù)據(jù)包生成一份系統(tǒng)指紋。將探測(cè)生成的指紋與nmap-os-db中指紋進(jìn)行對(duì)比,查找匹配的系統(tǒng)。如果無(wú)法匹配,以概率形式列舉出可能的系統(tǒng)。
- -O: 指定Nmap進(jìn)行OS偵測(cè)。
- --osscan-limit: 限制Nmap只對(duì)確定的主機(jī)的進(jìn)行OS探測(cè)(至少需確知該主機(jī)分別有一個(gè)open和closed的端口)。
- --osscan-guess: 大膽猜測(cè)對(duì)方的主機(jī)的系統(tǒng)類型。由此準(zhǔn)確性會(huì)下降不少,但會(huì)盡可能多為用戶提供潛在的操作系統(tǒng)。
命令:nmap –O 192.168.80.166
- -vv: 詳細(xì)顯示掃描狀態(tài)
nmap -p21,80,445,3306 -vv 192.168.80.166
- --script: 使用nse腳本,也可自行編寫nse腳本,nmap有580多個(gè)腳本
nmap --script=auth 192.168.80.166
- --script=brute: 對(duì)弱口令進(jìn)行暴力破解
nmap --script=brute 192.168.80.166
- --script=default: 使用默認(rèn)nse腳本搜集應(yīng)用的信息
nmap --script=default 192.168.80.166
- --script=vuln: 檢測(cè)常見(jiàn)漏洞
nmap --script=vuln 192.168.80.166
優(yōu)劣勢(shì)
優(yōu)勢(shì):
- 功能靈活強(qiáng)大,支持多種目標(biāo),大量計(jì)算機(jī)的同時(shí)掃描;
- 開(kāi)源,相關(guān)幫助文檔十分詳細(xì);
- 流行,由于其具有強(qiáng)大的掃描機(jī)探測(cè)功能,,已被成千上萬(wàn)安全專家使用。
劣勢(shì):
- Nmap參數(shù)眾多,難以一一記憶;
10、DirBuster
DirBuster是一款路徑及網(wǎng)頁(yè)暴力破解的工具,可以破解出一直沒(méi)有訪問(wèn)過(guò)或者管理員后臺(tái)的界面路徑。Java運(yùn)行環(huán)境+DirBuster程序包
- 雙擊運(yùn)行DirBuster.jar
- 在URL中輸入目標(biāo)URL或者主機(jī)IP地址
- 在file with list of dirs/files?欄后點(diǎn)擊browse,選擇破解的字典庫(kù)為directory-list-2.3-small.txt
- 將File extension中填入正確的文件后綴,默認(rèn)為php,如果為jsp、asp、aspx頁(yè)面,需要填入jsp、asp、aspx
- 同樣可以選擇自己設(shè)置字典,線程等等
- 其他選項(xiàng)不變,點(diǎn)擊右下角的start,啟動(dòng)目錄查找
- 觀察返回結(jié)果,可點(diǎn)擊右下角的report,生成目錄報(bào)告
- 敏感目錄發(fā)掘能力強(qiáng)
- OWASP安全機(jī)構(gòu)極力推薦
- 探測(cè)目錄依賴字典文件
總結(jié)
以上是生活随笔為你收集整理的安全工具系列 -- 信息收集(二)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: C语言以科学计数法的格式打印
- 下一篇: sqk,按分钟统计平均值