WordPressにお問い合わせフォームを実装する!Contact Form 7

セキュリティ

そろそろこのサイトにも新しい機能を実装したいなと思いお問い合わせフォームを実装しようと思います。

なぜ今までなかったの?と言われると言葉に詰まってしまいますが、そこら辺は流してもらえると助かります。

実装する際に私が確認していく点を記載します。
※ただボタンを押して終わりだとつまらないですし、またセキュリティエンジニアとしてそれは基本しません。

皆様が他のプラグインを導入する際の参考になれば幸いです。

なお、内容に関しては個人的な見解になりますので、予めご了承ください。

どのプラグインを使用するか?

お問い合わせのプラグインは「Contact Form 7」としました。

人気もあるようですし、作成者は日本人っぽいです。

さらにサイトを見に行くと、以下のようにちゃんと定期的にバージョンアップされていることがわかり、まだまだ開発者の手が入っていることがわかります。(物凄く大事!)

まずはこのサイトで直近10程度のリリースノートを確認します。

物凄く色々やっていて、感激するくらいです。やっぱり開発者は偉大だなと素直に尊敬します。

脆弱性の確認

続いて、過去にどんな脆弱性が検出されているのか確認します。

私が仕事でもよく使うサイトのうちの一つは以下です。

JVN iPedia

フォームに「Contact Form 7」と入力し検索ボタンを押します。

すると、検索結果が数十件表示されます。

もちろん今回使用するプラグインと関係ないものもありますので、ざっくり見ていきます。

クロスサイトスクリプティング(XSS)等が出ていますが、大丈夫でしょう。
※そもそも今回入れるプラグイン自体には関係ない気がする。

サーバ内に保持している情報の確認

さて次に自分のサイト内の持ち物を確認します。

・記事の情報⇒個人情報は含まれていない
・画像情報⇒個人情報は家族の後ろ姿位、アップロードする前に自宅PCで加工しているので加工前の情報は無い
・DB内の個人情報⇒私のログイン情報位しかない気がする、パスワードは使い回してないし大丈夫

なので、今後OSコマンド等のインジェクションが発生しても(プラグイン自体は大丈夫だと思いますが)、個人情報等は公開している内容以外にここでしか使用していない認証情報しか漏洩しないでしょう!と判断しました。(乗っ取られた場合でもサーバの管理画面の方からサイトを閉鎖できます。)
※仕事だともっとキッチリ調べますが。レンタルサーバだと調べられる範囲が限定されますので・・・

実装したら脆弱性の診断をとかもやりたいのですが、レンタルサーバだと、許可手続きとか色々やらなければならず、今回は調べるだけにしました。

インストール

ではプラグイン画面に行き、以下のように検索を行い、プラグインを確認できたら、「今すぐインストール」ボタンを押してインストールします。

これで新しい機能であるお問い合わせフォームが実装できます。

もちろんプラグインの管理はしっかりやるようにします。

WordPressの脆弱性は本体プラグインどちらも狙われやすいので、アップデートが出たらすぐにあてるようにしています。

特にプラグインはとんでもない脆弱性が出る場合がある(しかも大きなニュースにならない場合もある)ので、一日一回はログインして確かめることが重要です。
※特にマイナーなプラグインを使用している場合は気を付けましょう!

細かい設定等は触れませんが、フッターあたりから遷移できるようにしています。

なぜ今更問い合わせ機能を実装したのか

今まではツイッターやコメントでと言っていましたが、ツイッターであれば友達申請が必要だったかと思います。

また、コメントは公開される可能性もあるので、率先してその二つで質問とかは気軽にできないかと考えましたので、問い合わせ機能を実装することにしました。

実際に勉強会とかで何でも聞いてくださいねと言って質問してくる人は2、3人に居れば多い方です。
※私も質問するの苦手ですし・・・

気軽にお問合せしてきて頂ければ幸いです。

動作確認も行いテスト送信でもちゃんと届くことを確認しています。

なお、返信は日中仕事をしている関係もあり、遅れる可能性もありますが、きちっと対応しますので、どうぞよろしくお願いいたします。

コメント