12.3K Views
February 05, 24
スライド概要
静岡 WordPress Meetup で使用したWordPressのセキュリティの話をまとめたスライドです。
Meetupで利用したときから少し手直しを加えてあります。
主にWordPressでの開発やサーバーの構築や管理・WordPressコンサルティングをしているフリーランサー。 「静岡 WordPress Meetup」の共同オーガナイザーや「WordCamp Tokyo」「WordCamp Japan」のスタッフ・登壇などWordPressのコミュニティ活動も行なっています。 アイコンはたぬき。
セキュリティの基本と WordPress 〜 WordPressを利用するときに気をつけるセキュリティ 〜
Hello!! Name : 遠藤 進悟(たぬき) フリーランサー(たぬきのWeb万屋) フルリモートワーク(静岡県富士宮市在住) contact me at URL: https://wp-t.net/ SNS(X): @TanukiCTO
Community!! ● ● ● ● ● ● WordCamp Tokyo 2013 - 2019 ・ 2023 スタッフ WordCamp Tokyo 2015,2023 スピーカー WordPress Mega Meetup 2022 Fall スピーカー Shizuoka WordPress Meetup 共同オーガナイザー OSC浜名湖出展 WordPress Contribution History ○ ○ ○ ○ Meetup Organizer WordCamp Organizer WordCamp Speaker Plugin Developer
Works!! ● WordPressの設計・構築・保守・コンサルティング ● VPS/クラウドの設計・構築・保守 ● WordPressのスポットカスタマイズ ● 制作者・制作会社メンター、サポート etc...
WordPressのセキュリティ 対策してますか? どんな対策をしているか、思い出してみましょう・・・
1. セキュリティの基本を知る 2. WordPressでの対策を知る 3. まとめ
1 セキュリティの基本を知る WordPressへの攻撃の種類をざっくりと知っておこう
ざっくりとした攻撃の分類① 特定標的型 明確な意思と目的を持った攻撃者が特定の組織に対して情報の窃取や 削除のために行う攻撃。 価値の高い個人情報を管理している組織が狙われることが多い。 よくニュースになる一般的なサイバー攻撃のイメージはこっち!
ざっくりとした攻撃の分類② 無差別型 不特定多数の対象に対して、機械的に攻撃を行い、ランサムウェアやマル ウェアの埋め込みやフィッシング誘導などの改ざん、乗っ取りなどを行 う。 WordPressでまず気をつけなければならないのはこっち!
ざっくりとした攻撃の種類① ログイン総当たり攻撃 ブルートフォースアタックとも呼ばれる。 機械的にパスワードを片っ端から試していく方法。 ログイン試行をそれだけ試されるので、負荷も大きくなる。
ざっくりとした攻撃の種類② ログインリスト型攻撃 他のサービスや別サイトから流出した情報を利用したり、 辞書に載って いる単語やよくあるパスワードのリストを利用したりすることで、ログイ ンを試みる方法。
ざっくりとした攻撃の種類③ 脆弱性を攻撃 WordPress(本体・プラグイン・テーマ)やミドルウェア (PHP・Apache)などの脆弱性を利用し、侵入や改ざんなどを試みる方 法。 XSSやSQLインジェクションなど。
サンプルケース ● WordPressでWebサイトを作って公開していた ● Webサイトが改ざんされる ● 海外のサイトにリダイレクトされてしまう わりとよくある事例 だいたい最初に出てくる情報はこのくらいで、どこから操作されたのか 不明 何が問題だったのか推測してみよう
考えられる原因の例 ● 管理画面にログインされて書き換えられた? ● プラグインの脆弱性を利用された? ● 別の箇所からファイルを書き換えられた? 情報が少なすぎてどんな可能性も考えられる状態 考えられる攻撃パターンへの対策をしておく必要がある みんな「自分が狙われると思っていなかった」と言う
攻撃者は 「あなた」のWebサイトを狙ってい るのではなく、 「すべて」のWebサイトを狙ってい るのです
2 WordPressでの対策を知る WordPressでの具体的な対策を知っておこう
ログイン総当たり攻撃 ● ● ● ● ● ● ユーザー名 admin を使用しない 複雑なパスワードを使用する ログイン試行回数を制限する xmlrpc.phpを無効化する ログインページ(wp-login.php,wp-admin)をアクセス制限する ログインURLを変更する ログインURLからのログイン試行だけではないため、ログインページを制 限したり隠すことで安心してはいけない
ログインリスト型攻撃 ● ● ● ● ● ● 総当たり攻撃の対策全部 他のサイトで使ったIDとパスワードを再利用しない パスワードは意味のない大文字小文字数字を含んだ文字列で 利用していないアカウントの削除 利用者ごとにユーザーを発行(権限を分ける) ログを取り、ブラックリスト(IP、ユーザIDなど)で対策 組織で運用する場合、担当が外れるなどした場合、そこからIDやパス ワードが漏れるケースもある
脆弱性を攻撃 ● ● ● ● ● ● ● WordPressは常に最新版に プラグインやテーマも常に最新版に PHPやその他サーバー環境もできる限りアップデートを行う カスタマイズをするときはWordPressの仕組みを利用する 更新のなくなったプラグインやテーマは利用しない 定期的にプラグインやテーマを見直す プラグインをやみくもに増やさない 最新の環境に保つことができるような運用体制を整える必要がある
セキュリティ対策に 便利なプラグインの紹介
XO Security ● ● ● ログイン試行制限 2要素認証 ログ取得 etc... ログイン周りのセキュリティ対策はこれ一つで十分 作者も日本の方なので、日本語のドキュメントもしっかりあります https://ja.wordpress.org/plugins/xo-security/ https://xakuro.com/wordpress/xo-security/
SiteGuard WP Plugin ● ● ● 管理画面アクセス制限 ログインページ変更 画像認証 etc... 基本的に必要な対策はこれを入れて設定すれば網羅できる。 ドキュメントも日本語なので、安心。 https://www.jp-secure.com/siteguard_wp_plugin/ https://ja.wordpress.org/plugins/siteguard/
Wordfence Security ● ● ● 管理画面アクセス制限 2要素認証 ログ取得・ブラックリスト管理 etc... 中級者〜上級者向け できることも多くログ取得で制限をかけたり、セキュリティスキャンをか けるともできる。 https://ja.wordpress.org/plugins/wordfence/
他にも… ● ● ● WP Limit Login Attempts (ログイン試行制限) Google Authenticator (2要素認証) WPScan (脆弱性チェック) サーバーやネットワーク側で対応できる対策もあるため、機能ごとにプラ グインを導入すると、必要ないリソースを読み込むことがなくなる。
修復への道 改ざんされたWordPressサイトを修復するまでの 流れをみてみよう
Step 1. 隔離環境を作る Step 2. すべてのデータのチェック・修正 Step 3. 元データを削除し、修正データで再公開
隔離された環境の構築 ➔ ➔ ➔ ➔ Webサイトの公開を停止する データはすでに改ざんされたものを利用するため、外への通信がさ れないように隔離されている環境を構築する ローカル環境で行う場合、バックドアにより外部への通信がされてし まう可能性があるので、意図的にネットワークを遮断する 仮想環境で行う場合、ローカルのみと通信が可能なように設定を行 う
データのチェック・修正① データベース WordPressの投稿・設定・カスタマイザーのデータはデータベースで管 理されているため、不明なURLや画像の読み込みを一括で削除する必 要がある 目視確認も必要
データのチェック・修正② テーマ・プラグイン テーマやプラグインが書き換えられている可能性もあるため、すべて最 新の公開版に変更する オリジナルのものに関しては、目視やツールで不明なプログラムや読み 込みが行われていないかのチェックを行う
データのチェック・修正③ その他のプログラム WordPress本体や、別途プログラムがある場合もチェックを行う WordPressの場合は、最新版に置き換えることで対応可能だが、オリ ジナルプログラムの場合は、別途ツールや目視での確認・修正が必要 よくわからないPHPファイルが設置されているような場合は要注意
再公開 公開環境にあるデータの全削除をおこない、修正したもので再構築す る。 すべての環境を新しいものに刷新する必要あり。 パスワードやIDの変更はもちろんのこと、運営計画の見直しや、保守管 理の導入など、運用面での変更も必要。 これだけやっても、元に戻らないこともある。 何より、ユーザーの信用・信頼は戻らない
何かが起こってしまってからでは 遅い! 起こる前の予防策が大事!
3 まとめ 大事なこと、要点のまとめ
まとめ ● まずは知る ● すべてのWebサイトが機械的に狙われている ● 常に攻撃されているという意識で運用・対策する ● 改ざんからの修正は容易ではない ● 信用・信頼の喪失はそのまま自分に降りかかる ● 運用者も制作者もセキュリティの意識をもっと持つ
所感 ● Web制作会社やWeb制作者のWordPressのスキルの差が開い ていっている ● 定期メンテナンスはしてもらったほうがいい ● バックアップはとっておきましょう ● Webサイトが見れなくなるより改ざんのほうが怖い ● 改ざんからの修正は工数がすっごいので、リニューアルしたほうが 安くなる場合のほうが多い
Thanks!! contact me at @TanukiCTO