1. 程式人生 > >WPScan使用完整教程之記一次對WordPress的滲透過程

WPScan使用完整教程之記一次對WordPress的滲透過程

WPScan使用完整教程之記一次對WordPress的滲透過程

渣渣一枚,萌新一個,會划水,會喊六六

本次簡單的記錄優下自己關於WPScan滲透實戰的案例,以及對於WPScan的一些使用方法,有什麼錯誤的地方希望各位大佬指正(Orz)

一:什麼是WPScan

WPScan是一個掃描 WordPress 漏洞的黑盒子掃描器,它可以為所有 Web 開發人員掃描 WordPress 漏洞並在他們開發前找到並解決問題。

我們還使用了 Nikto ,它是一款非常棒的Web 伺服器評估工具,我們認為這個工具應該成為所有針對 WordPress網站進行的滲透測試的一部分。

Wordpress作為三大建站模板之一,在全世界範圍內有大量的使用者,這也導致白帽子都會去跟蹤 WordPress

的安全漏洞,Wordpress自誕生起

也出現了很多漏洞.Wordpress還可以使用外掛、主題。於是Wordpress本身很難挖掘什麼安全問題的時候,安全研究者開始研究其外掛、主題的

漏洞。通過外掛,主題的漏洞去滲透Wordpress站點,於是WPScan應運而生,收集 Wordpress的各種漏洞,形成一個Wordpress專用掃描器。

該掃描器可以實現獲取站點使用者名稱,獲取安裝的所有外掛、主題,以及存在漏洞的外掛、主題,並提供漏洞資訊。同時還可以實現對未加防護的

Wordpress站點暴力破解使用者名稱密碼。

WPScan已經被預安裝在以下Linux系統中:

1: BackBox Linux

2: Kali Linux

3: Pentoo

4: SamuraiWTF

5:BlackArch

二:預備知識之WPscan安裝與使用

由於Windows不支援WPScan。最新版本的WPScan可以在LinuxMac上下載使用:

在Ubuntu上安裝

sudo apt-get install libcurl4-openssl-dev libxml2 libxml2-dev libxslt1-dev ruby-dev build-essential libgmp-dev zlib1g-dev

在Debian上安裝

sudo apt-get install gcc git ruby ruby-dev libcurl4-openssl-dev make zlib1g-dev

在Fedora上安裝

sudo dnf install gcc ruby-devel libxml2 libxml2-devel libxslt libxslt-devel libcurl-devel patch rpm-build

在Arch Linux上安裝

pacman -Syu ruby
pacman -Syu libyaml

在macOS上安裝

需要Apple Xcode,命令列工具和libffi(能夠安裝FFI gem具體安裝過程請點選這裡

常用引數選項:

--update  更新到最新版本
 
--url   | -u <target url>  要掃描的`WordPress`站點.
 
--force | -f   不檢查網站執行的是不是`WordPress`
 
--enumerate | -e [option(s)]  列舉

option:

u 列舉使用者名稱,預設從1-10

u[10-20] 列舉使用者名稱,配置從10-20

p 列舉外掛

vp 只列舉有漏洞的外掛

ap 列舉所有外掛,時間較長

tt 列舉縮圖相關的檔案

t 列舉主題資訊

vt 只列舉存在漏洞的主題

at 列舉所有主題,時間較長

可以指定多個掃描選項,例:"-e tt,p"

如果沒有指定選項,預設選項為:"vt,tt,u,vp"

--exclude-content-based "<regexp or string>"

當使用列舉選項時,可以使用該引數做一些過濾,基於正則或者字串,可以不寫正則分隔符,但要用單引號或雙引號包裹

--config-file | -c <config file使用指定的配置檔案

--user-agent | -a <User-Agent指定User-Agent

--cookie <String指定cookie

--random-agent | -r 使用隨機User-Agent

--follow-redirection 如果目標包含一個重定向,則直接跟隨跳轉

--batch 無需使用者互動,都使用預設行為

--no-color 不要採用彩色輸出

--wp-content-dir <wp content dirWPScan會去發現wp-content目錄,使用者可手動指定

--wp-plugins-dir <wp plugins dir指定wp外掛目錄,預設是wp-content/plugins

--proxy <[protocol://]host:port設定一個代理,可以使用HTTP、SOCKS4、SOCKS4A、SOCKS5,如果未設定預設是HTTP協議

--proxy-auth <username:password設定代理登陸資訊

--basic-auth <username:password設定基礎認證資訊

--wordlist | -w <wordlist指定密碼字典

--username | -U <username指定爆破的使用者名稱

--usernames <path-to-file指定爆破使用者名稱字典

--threads | -t <number of threads指定多執行緒

--cache-ttl <cache-ttl設定 cache TTL

--request-timeout <request-timeout請求超時時間

--connect-timeout <connect-timeout連線超時時間

--max-threads <max-threads最大執行緒數

--throttle <milliseconds當執行緒數設定為1時,設定兩個請求之間的間隔

--help | -h 輸出幫助資訊

--verbose | -v 輸出Verbose

--version 輸出當前版本

三:滲透站點演示

環境準備

kali linux

Debian 9

WPScan(linux中已經與安裝)

滲透過程

1:安裝及更新資料漏洞庫

你可以使用下列命令在自己的裝置中安裝WPScan

git clone https://github.com/wpscanteam/wpscan.git

更新漏洞庫,使用命令:wpscan --update

2:掃描WordPress漏洞

接下來使用下面的命令來掃描可能存在的漏洞網站:

wpscan --url [wordpress url]

z這裡我直接用一個不認識的人的站點為例子進行演示(是我的好友HHHHH)

wpscan --url https://www.xxxxx.wiki/ 

3:掃描wordpress使用者

我們可以對其使用者進行列舉:

wpscan --url https://www.xxxxxxx.wiki/ --enumerate u

得到的使用者資訊:

4:暴力破解得到密碼

在進行暴力破解攻擊之前,我們需要建立對應的字典檔案

wpscan --url https://www.xxxxx.wiki/ -e u --wordlist /root/桌面/password.txt

效果圖如下:

5:掃描外掛漏洞

外掛可以擴充套件WordPress站點的功能,但很多外掛中都存在安全漏洞,而這也會給攻擊者提供可乘之機。

我們可以使用下列命令掃描WordPress站點中安裝的外掛:

wpscan -u https://www.xxxxx.wiki/ -enumerate p

我們可以看到該網站中安裝了easy-wp-smtp,theme-my-login外掛:

接下來,我們可以使用下列命令來掃描目標外掛中的安全漏洞:

wpscan --url https://www.xxxxx.wiki/ --enumerate vp

效果演示:

6:主題漏洞掃描

使用下列命令對主題進行掃描:

wpscan --url https://www.xxxxx.wiki --enumerate t

發現一個主題:

使用下列命令掃描主題中存在的漏洞:

wpscan --url https://www.xxxxxx.wiki --enumerate vt

7:TimThumbs檔案漏洞掃描

wpscan -u https://www.xxxxxx.wiki/ -enumerate tt

四:WordPress的防護措施

1:關於密碼爆出防護措施

如果你想要避免WordPress使用者列表被列舉,不要把使用者名稱作為暱稱,並且不要使用已經被大眾知道的使用者名稱。最好的方式是選擇一個包含隨機字

符的名字做使用者名稱並且使用其他名字作為暱稱。 WPScan掃描URL來獲取使用者名稱,所以如果你不使用這個使用者名稱,你肯定不會被WPScan搜尋到。

防止暴力破解的最好方式是限制一個IP地址的嘗試登入次數。WordPress有很多外掛可以實現這個功能。列如有一個外掛叫

Brute Force Login Protection(當然你也可以寫一個指令碼防止爆出個人密碼)

2:如何防範掃描外掛、主題、TimThumb檔案

使用Block Bad Queries (BBQ)外掛,就可以遮蔽和禁止這類掃描