WordPressの脆弱性診断ツールといえばRubyで実装された「wpscan」が有名だが、今回はpython3で作られた「plecost」を使って脆弱性の有無を確認してみよう。
当たり前の話だが、自分の管理しているサイト以外に実行するのはアタックになるのでやらないように。
1.インストール
まずインストールだが、以下のコマンドで行える。
Python3用のpipをインストールしていないと「No module named pip」というエラーが出るので、事前にインストールしておくといいだろう。
sudo python3 -m pip install plecost
これでインストール完了。
2.スキャンを行う
さて、それでは実際にWordPressへのスキャンを行ってみよう。
オプションをつけずにURLを引数に指定することで、シンプルスキャンを実行できる。
plecost http://ドメイン
「-v」オプションを付与し、「-o」オプションで出力先のPATHを指定することで、その拡張子に応じた形式で出力してくれるようだ。
plecost -v http://ドメイン -o XXX.json # JSON形式
plecost -v http://ドメイン -o XXX.xml # XML形式
実際にスキャンを実施する前は、CVEファイルやPluginのリストファイルをアップデートするといいだろう。
以下のコマンドでアップデートできる。
plecost --update-cve
plecost --update-plugins
で、触った感じなのだが…
いろいろとメンテが追い付いてないのか、wpscanに比べるとちょっと落ちる気がする。
悪くはないと思うのだが…とりあえず、状況に応じて使い分けてみるといった使い方をお勧めしたい。