0. はじめに
こんにちはワラゴンです。
先日、Wordpressを安全に運用するために、簡単で効果が高いと思われる
セキュリティ対策についての記事を書きました。
(参考:エンジニアが選ぶWordPressのセキュリティ対策6選(基本編))
この記事を書く時に、ワラゴンも色々と調査をしたわけですが、
中には「ん?」と思うような対策もあったので、ここで少し触れたいと思います。
具体的には、「少しくらいは効果があるかもしれないけど、ほとんど意味なさそうだなあ」
という対策を4つ集めてみました。
1. wp-config.phpをアクセスできなくする
wp-config.phpには、データベースへの接続情報が含まれています。
当然、これらの情報が第三者に知れるのは好ましくありません。
そのため、このファイルを.htaccess等でアクセス不可にするという対策をよく見かけます。
しかし、実際にこのファイルにアクセスしてみると分かるのですが、
このファイルではWordpressの各種設定が並んでいるだけで、ブラウザには真っ白で表示されます。
仮にソースコードが表示される場合は、サーバの設定に何かの問題がある場合です。
例えば、apacheはインストールしたが、PHPはインストールしていないような場合です。
このような場合、apache(や他のWebサーバ)はphpファイルをphpとして認識できないため、
ブラウザ上にソースコードを晒してしまいます。
ただ、普通にWordpressをインストールする場合、
PHPが入っていることが前提(*1)となっているため、
PHPがインストールされていない状況というのもかなり考えにくいでしょう。
*1:ファイルを配置した後、wp-admin/install.phpにアクセスするため
というわけで、全くムダ、というわけではないのですが、
この対策の優先度はかなり低く設定しても大丈夫と考えています。
2. データベースのプレフィックスをデフォルトのwp_から変更する
これも結構有名な対策なのではないでしょうか。
ただ、Webサイトを攻撃する側からすると、SQLインジェクションが成功するような状況があれば、
「show tables」などでテーブル名の一覧を取得することができてしまいます。
なので、いくらプレフィックスが変更されていても、
彼らにはあまり関係ないと言えます。
まぁ、これからインストールするWordpressなら、
インストール時にプレフィックスを指定できるので、
やっておいても損も害もないとは思います。
ただ、既存のサイトのプレフィックスが既にwp_である場合、
これは無理して変更する必要はないでしょう。
そもそも、プレフィックスの変更はかなりのリスクを伴う作業です。
十分にテストができる環境と時間があるのなら、やってみても良いかもしれません。
しかし、それをやったからといてセキュリティが格段に上がる、
というわけではないということを覚えておきましょう。
それよりも、SQLインジェクションに対する脆弱性を全力で抑えるようにしましょう。
具体的には、Wordpress本体、プラグイン、
テーマを最新のバージョンに更新しておくことです。
3. 管理画面内での操作を制限
これもたまに見かけますね。
そういった機能を提供するプラグインもあるようです。
テーマなどの編集機能を制限するというものです。
しかし、管理画面に入られた時点で記事の削除や新規投稿はできてしまいます。
記事の削除についての被害は、それだけに限定されるので、まあ目をつぶるとしましょう。
しかし、記事を投稿できるというのは少し問題です。
WordPressでは、記事内にJavascriptを埋め込むこともできるようなので、
悪意のあるコードを埋め放題になってしまいます。
というわけで、管理画面内での操作を制限するよりは、
まずはパスワードを見直しましょう、ということになります。
その上で、管理画面内の操作を制限したいのなら、運用に支障がでない範囲で
やっておいても損はないのかな、程度です。
4. WordPressのバージョンを隠す
一昔前のTipsだとよく言われていた対策のような気がします。
WordPressのバージョンが割れると、そのバージョンに残っている脆弱性を突かれるから、
というのがその根拠のようです。
私も、ずっと前はそんな情報を信じていた人間のうちの一人です。
ただ、Wordpressにおいては、バージョン情報は結構いろんな方法で
露出してしまうという問題があります。
それらを全て隠すことができるのなら、確かに意味はありそうですが、
それはそれほど簡単な事ではありません。
ですので、バージョン情報を必死に隠すより、
やはりソフトウェアを最新の状態に保つことが大前提なのです。
5. まとめ
エンジニアのワラゴンの独断と偏見で書いてみました。
どの対策も、もっともらしいのですが、
効果が高いかどうかを考えると?がついてしまいます。
けれども、まあ、世の中とは世知辛いもので。
たとえ効果がないことを説明しても、技術的な素養がない
「うえのひとたち」には分かってもらえない場面が多いのも事実です。
彼らにとっては「それでもやらないよりやった方がいいんでしょ?」という問いに
「ええ、まぁ。」と返ってくれば、「じゃあやろうよ」となってしまうわけです。
そんな時は、面倒ですが彼らの要望に応えてあげるのも必要なのかな、と思います。
もちろん、運用に支障が出ない範囲でですが。
それでは、みなさんの健闘を祈ります。