Articles - Tools |
WordPress Security Scannerとは?
WordPress Security Scanner(以下WPScan)は、Ryan Dewhurst氏(AKA ethicalhack3r)によるrubyで書かれたオープンソースのWordPressの情報採取~脆弱性踏査までを行うセキュリティスキャナである(ブラックボックスアプローチ)。2011/7/18にバージョン1.0がリリースされた。
wpscan - WordPress Security Scanner - Google Project Hosting
WPScanで調査やスキャンできる内容は以下のようなものだ。
インストール
WPScanのインストール方法に難しい点は無く、また、READMEにも記載されているので、ここでは、今回テストしたBacktrack 5でのインストール方法のみ簡単に記載しておく。
以下がREADMEに記載されているBacktrack 5へのインストール方法である。それぞれのインストールが完了した後に、WPScanをダウンロードして、展開すればよい。
sudo apt-get install libcurl4-gnutls-dev sudo gem install --user-install mime-types sudo gem install --user-install typhoeus sudo gem install --user-install xml-simple
Backtrack 5の場合、/pentest以下にweb/scannersというディレクトリがあるので、ここに置くこととした。
root@bt:~#cd /pentest/web/scanners root@bt:/pentest/web/scanners#ls joomscan plecost sqlmap wpscan
コマンド
WPScanのコマンドオプションは以下である。
--url スキャンするWordPressのURL/ドメイン名指定 --enumerate 列挙の指定(u:ユーザ名/v:バージョン/p:プラグイン) --wordlist パスワードクラックの辞書指定 --threads マルチスレッド指定 --username パスワードクラックのユーザー名を指定 --generate_plugin_list 新しいdata/plugins.txtファイルを生成する -v 冗長出力 -h ヘルプ
ターゲットの調査
WPScanの作者であるethicalhack3rは、テスト用にこれまでリリースされたすべてのWordPressを導入済みのVirtualBoxイメージ(OVAファイル)も配布しているので、今回はこれをターゲット用のベースに利用している。WordPress CD | ethicalhack3r
さて、WPScanを単純にURLのみを指定して実行した例が以下である。ターゲットは、上記のVirtualBoxの仮想サーバーに設置されたWordPressである。
root@bt:/pentest/web/scanners/wpscan#./wpscan.rb --url lamp/wordpress-3.1.3/ ____________________________________________________ __ _______ _____ \ \ / / __ \ / ____| \ \ /\ / /| |__) | (___ ___ __ _ _ __ \ \/ \/ / | ___/ \___ \ / __|/ _` | '_ \ \ /\ / | | ____) | (__| (_| | | | | \/ \/ |_| |_____/ \___|\__,_|_| |_| v1.0 WordPress Security Scanner by ethicalhack3r.co.uk Sponsored by the RandomStorm Open Source Initiative _____________________________________________________ # Copyright (C) 2011 Ryan Dewhurst # This program comes with ABSOLUTELY NO WARRANTY. # This is free software, and you are welcome to redistribute it # under certain conditions. See GNU GPLv3. | URL: http://lamp/wordpress-3.1.3/ | Started on Fri Jul 22 22:38:54 2011 [+] The WordPress theme in use is called twentyten [+] The WordPress http://lamp/wordpress-3.1.3/readme.html file exists. [+] WordPress version 3.1.3 identified from meta generator. [+] We have identified 1 vulnerabilities from the version number: * Title: Multiple SQL Injection Vulnerabilities * Reference: http://www.exploit-db.com/exploits/17465/ [+] Finished at Fri Jul 22 22:38:56 2011
ターゲットのWordPressテーマの名前、readme.htmlが存在すること、また、バージョンが3.1.3で脆弱性のあるバージョンであることが表示されている。
次に、プラグインに脆弱性がないかを調査してみよう。これは、--enumerateオプションで実行すればよい。--enumerateオプションで指定できるのは、ユーザー名(u)、プラグイン(p)、バージョン(v)の3つで、プラグインを調査する際には、pを付加すればよい。
root@bt:/pentest/web/scanners/wpscan# ./wpscan.rb --url lamp/wordpress-3.2.1/ --enumerate p ____________________________________________________ __ _______ _____ \ \ / / __ \ / ____| \ \ /\ / /| |__) | (___ ___ __ _ _ __ \ \/ \/ / | ___/ \___ \ / __|/ _` | '_ \ \ /\ / | | ____) | (__| (_| | | | | \/ \/ |_| |_____/ \___|\__,_|_| |_| v1.0 WordPress Security Scanner by ethicalhack3r.co.uk Sponsored by the RandomStorm Open Source Initiative _____________________________________________________ # Copyright (C) 2011 Ryan Dewhurst # This program comes with ABSOLUTELY NO WARRANTY. # This is free software, and you are welcome to redistribute it # under certain conditions. See GNU GPLv3. | URL: http://lamp/wordpress-3.2.1/ | Started on Sat Jul 23 01:52:21 2011 [+] The WordPress theme in use is called twentyeleven [+] The WordPress http://lamp/wordpress-3.2.1/readme.html file exists. [+] WordPress version 3.2.1 identified from meta generator. [+] Enumerating installed plugins... Checking for 2127 plugins... We found 1 plugins: php_speedy_wp [+] There were 1 vulnerabilities identified from the plugin names: * Title: PHP Speedy <= 0.5.2 Wordpress Plugin (admin_container.php) Remote Code Exec Exploit * Reference: http://www.exploit-db.com/exploits/16273/ Directory listing enabled: http://lamp/wordpress-3.2.1/wp-content/plugins/php_speedy_wp/ [+] Finished at Sat Jul 23 01:52:40 2011 root@bt:/pentest/web/scanners/wpscan#
プラグインであるphp_speedy_wpが検出され、脆弱性があるバージョンであるということが結果としてわかる。