天天看點

記一次用WPScan輔助滲透WordPress站點

記一次用WPScan輔助滲透WordPress站點

一、什麼是WPScan?

WPScan

是一個掃描

WordPress

漏洞的黑盒子掃描器,它可以為所有

Web

開發人員掃描

WordPress

漏洞并在他們開發前找到并解決問題。我們還使用了

Nikto

,它是一款非常棒的

Web

伺服器評估工具,我們認為這個工具應該成為所有針對

WordPress

網站進行的滲透測試的一部分。

Wordpress

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

WordPress

的安全漏洞,

Wordpress

自誕生起也出現了很多漏洞。

Wordpress

還可以使用插件、主題。于是

Wordpress

本身很難挖掘什麼安全問題的時候,安全研究者開始研究其插件、主題的漏洞。通過插件、主題的漏洞去滲透

Wordpress

站點,于是

WPScan

應運而生,收集

Wordpress

的各種漏洞,形成一個

Wordpress

專用掃描器。該掃描器可以實作擷取站點使用者名,擷取安裝的所有插件、主題,以及存在漏洞的插件、主題,并提供漏洞資訊。同時還可以實作對未加防護的

Wordpress

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

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

二、WPScan的安裝和使用

由于

Windows

不支援

WPScan

。最新版本的

WPScan

可以在

Linux

Mac

上下載下傳使用:

Debian/Ubuntu下安裝:

sudo apt-get install libcurl4-gnutls-dev libopenssl-ruby libxml2 libxml2-dev libxslt1-dev ruby-dev
 
git clone https://github.com/wpscanteam/wpscan.git
 
cd wpscan
 
sudo gem install bundler && bundle install --without test development           

Fedora下安裝:

sudo yum install gcc ruby-devel libxml2 libxml2-devel libxslt libxslt-devel libcurl-devel
 
git clone https://github.com/wpscanteam/wpscan.git
 
cd wpscan
 
sudo gem install bundler && bundle install --without test development           

Archlinux下安裝:

pacman -Syu ruby
 
pacman -Syu libyaml
 
git clone https://github.com/wpscanteam/wpscan.git
 
cd wpscan
 
sudo gem install bundler && bundle install --without test development
 
gem install typhoeus
 
gem install nokogiri           

MAC OSX下安裝:

git clone https://github.com/wpscanteam/wpscan.git
 
cd wpscan
 
sudo gem install bundler && bundle install --without test development           

具體參考:

https://wpscan.org/

常見參數選項:

--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 dir> WPScan會去發現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 輸出目前版本           

三、WPScan的輔助滲透WordPress站點示範

環境準備

  • WPScan工具(Kali Linux裡面已經預裝好了)
  • CentOS 7
  • WordPress環境(預先在CentOS 7裡面搭建好了環境)

滲透過程

1、更新漏洞資料庫

在使用WPScan之前,先更新它的漏洞資料庫:

wpscan --update           
記一次用WPScan輔助滲透WordPress站點

我們直接檢視下目前版本:

記一次用WPScan輔助滲透WordPress站點
2、掃描WordPress漏洞

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

wpscan ––url [wordpress url]           

這裡我直接用我自己的站點為例子進行示範

wpscan --url http://angelkitty.xin/           

效果如下:

記一次用WPScan輔助滲透WordPress站點
3、掃描wordpress使用者

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

wpscan ––url [wordpress url] –-enumerate u           
記一次用WPScan輔助滲透WordPress站點
4、暴力破解
wpscan ––url [wordpress url] ––wordlist [path to wordlist] ––username [username to brute force] ––threads [number of threads to use]           

既然目前有兩個使用者

angel_kitty

test

,我們直接把兩個均枚舉出來

wpscan -u 119.23.243.4 -e u --wordlist /root/桌面/password.txt           

這裡我也有個問題一直沒解決,就是用

url

去指定域名和用

username

去指定使用者均不太好使,直接就

302

調整爆出了

password

,連字典都沒去查,也不知道咋回事,查了

wpscan

Issue

,可能是

wpscan

更新了以後,新版本和老版本指令上有所差異,具體以後分析一下

wpscan

的源碼,是以示範出這個效果弄了整整一天。

記一次用WPScan輔助滲透WordPress站點

示範效果如下:

記一次用WPScan輔助滲透WordPress站點

視訊示範

也歡迎大家關注我的bilibili賬号:Angel_Kitty,不定期發送一些示範視訊教程

四、WordPress的防護措施

如果你想要避免WordPress使用者清單被列舉,不要把使用者名作為昵稱,并且不要使用已經被大衆知道的使用者名。最好的方式是選擇一個包含随機字元的名字做使用者名并且使用其他名字作為昵稱。

WPScan

掃描

URL

來擷取使用者名,是以如果你不使用這個使用者名,你肯定不會被

WPScan

搜尋到。

防止暴力破解的最好方式是限制一個

IP

位址的嘗試登入次數。

WordPress

有很多插件可以實作這個功能。我使用的一個插件叫:

Brute Force Login Protection

您可以考慮給部落客來個小小的打賞以資鼓勵,您的肯定将是我最大的動力。thx.

微信打賞

記一次用WPScan輔助滲透WordPress站點

支付寶打賞

記一次用WPScan輔助滲透WordPress站點

作  者:

Angel_Kitty

出  處:

http://www.cnblogs.com/ECJTUACM-873284962/

關于作者:潛心機器學習以及資訊安全的綜合研究。如有問題或建議,請多多賜教!

版權聲明:本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連結。

特此聲明:所有評論和私信都會在第一時間回複。也歡迎園子的大大們指正錯誤,共同進步。或者

直接私信

聲援部落客:如果您覺得文章對您有幫助,可以點選右下角【

推薦

】推薦一下該博文。您的鼓勵是作者堅持原創和持續寫作的最大動力!

繼續閱讀