目錄
簡介
安裝
debian/ubtuntu
redhat/centos
特性
使用
常用參數如下:
whatweb -v
whatweb --version
whatweb -i 1.txt
whatweb -v www.baidu.com
掃描等級
whatweb -a 4 www.baidu.com
掃描網段
whatweb --no-errors -t 255 192.168.71.0/24
導出
插件
whatweb -v -p php http://www.xiaodi8.com/
簡介
whatweb 一款網站指紋識別工具,使用Ruby語言開發。
whatweb能夠識別各種關于網站的詳細信息包括:CMS類型、博客平臺、中間件、web框架模塊、網站服務器、腳本類型、JavaScript庫、IP、cookie等等。WhatWeb還標識版本號,電子郵件地址,賬戶ID,Web框架模塊,SQL錯誤等。
WhatWeb可以隱秘、快速、徹底或緩慢掃描。(代表他有四個掃描等級)
WhatWeb支持攻擊級別來控制速度和可靠性之間的權衡。當在瀏覽器中訪問網站時,該交易包含許多關于Web技術為該網站提供支持的提示。有時,單個網頁訪問包含足夠的信息來識別網站,但如果沒有,WhatWeb可以進一步詢問網站。默認的攻擊級別稱為“被動”,速度最快,只需要一個網站的HTTP請求。這適用于掃描公共網站。在滲透測試中開發了更積極的模式。
安裝
debian/ubtuntu
apt-get install whatweb
kali中自帶whatweb,如果沒有的話也可以使用上述命令安裝,因為kali是基于 Debian 的一個特定用途的 Linux 發行版。
redhat/centos
yum update
yum install ruby ruby-devel rubygems
wget http://www.morningstarsecurity.com/downloads/whatweb-0.4.7.tar.gz
tar xzvf whatweb-0.4.7.tar.gz
cd whatweb-0.4.7
./whatweb url
特性
- 擁有超過1700+個插件
- 若網站返回302,會跳轉到重定向的網站
- 可以根據服務器返回的響應頭確定網站使用的服務器類型,web中間件類型,cookie信息
- 可以從網站的源代碼中確定網站使用了哪些JavaScript庫
- 可以通過頁面hash,path等確定網站使用的cms版本
- 查詢網站ip及所屬國家
- 多種日志格式:XML,JSON,MagicTree,RubyObject,MongoDB
- 可定制化HTTP頭
- 可進行基礎的認證設置
- 支持批量掃描網站
使用
whatweb [options] <URLs>
常用參數如下:
-h 查看幫助信息
--version 查看版本信息
-i 指定要掃描的文件
-v 詳細顯示掃描的結果
-a 指定運行級別
whatweb -v
查看工具幫助信息
whatweb --version
查看工具版本信息
whatweb -i 1.txt
將需要掃描的域名放到1.txt,批量掃描域名
whatweb -v www.baidu.com
顯示掃描結果的詳細信息
掃描等級
whatweb共有四個掃描等級,分別是1-4級,對應不同的掃描機制(當不指定掃描等級的時候,默認使用1級),同樣的當等級越高,所需要的時間也越長。等級2不可用,需要注意一下。
- stealthy 每個目標發送一次http請求,并且會跟隨重定向
- unused 不可用
- aggressive 每個目標發送少量的http請求,這些請求時根據參數為1時結果確定的
- heavy 每個目標會發送大量的http請求,會去嘗試每一個插件
whatweb -a 4 www.baidu.com
當使用等級2時會報錯提示未選擇等級,這里是因為等級2已經不可用了。
掃描網段
whatweb --no-errors -t 255 192.168.71.0/24
--no-errors:該選項用于在輸出中隱藏錯誤信息,使得輸出更為簡潔。
-t:該參數用于設置線程數,這里是255線程。
192.168.71.0/24:這里表示掃描的網段,同時也可以掃描單個IP
這里還可以跟-i、-v、-a參數配合使用,但是你會發現這樣使用,掃描的結果都在終端中不好翻閱。接下來說明whatweb將結果導出。
導出
whatweb支持多種方式導出的格式
--log-brief=FILE 簡單的記錄,每個網站只記錄一條返回信息
--log-verbose=FILE 詳細輸出
--log-xml=FILE 返回xml格式的日志
--log-json=FILE 以json格式記錄日志
--log-json-verbose=FILE 記錄詳細的json日志
--log-magictree=FILE xml的樹形結構
--log-object=FILE ruby對象格式
--log-mongo-database mongo數據庫格式
json格式需要安裝json依賴sudo gem install json
Mongo格式需要安裝mongo依賴sudo gem install mongo
具體選取哪種導出格式根據自己需求選擇
插件
whatweb擁有1700多個插件,所以它的拓展性還是比較強的,可以根據自己的需求使用特定的插件。
這里我是直接把whatweb的倉庫git下來了
可以將插件更新一下
這里使用php這個插件,這個插件可以看目標是否有使用PHP,并且還可以將PHP的版本掃描出來。如果有需要的插件,可以先去查找一下有沒有這個插件后再去使用。
whatweb -v -p php http://www.xiaodi8.com/
這里使用-v參數可以詳細列出掃描結果
也可以不使用-v參數直接一行出結果,如果目標使用PHP的話掃描結果就會有PHP的顯示,沒有的話就不顯示
而如果目標沒有使用PHP的話,那就沒有PHP的顯示,但也可能是whatweb沒有掃描出來