このサイトについて
WordPressの既知脆弱性を毎日集計して公開し、 自分のサイトが該当するかを確認できるようにしているサイトです。 運営しているのは、WordPressの制作・保守を本業にしている mgn です。
何のために作っているか
WordPressサイトの被害の大半は、未知の攻撃(ゼロデイ)ではなく 「修正版がすでに公開されているのに、更新されていないプラグイン」から起きています。 技術的には「更新するだけ」で防げるものが大半です。
それでも更新されない理由のひとつが、情報の追いにくさです。 脆弱性情報は英語で、複数のデータベースに分散していて、 「自分が使っているあのプラグインが該当するのか」を判断するには手間がかかります。
そこで、公的データベースを取り込んで 「どのプラグインの、どのバージョンが危なくて、どれに上げれば直るのか」が 日本語で引ける形に整理しています。
深刻度ではなく「狙われやすさ」で並べています
脆弱性の一覧はふつう CVSS(深刻度スコア)順に並びます。 しかし CVSS が表すのは「もし攻撃されたら、どれだけ深刻か」であって、 「実際に攻撃される見込みがあるか」ではありません。
CVSS 9.8 でも誰にも狙われていない脆弱性はありますし、 CVSS 6.1 でも世界中で悪用されているものがあります。 限られた時間で対応する以上、後者から手をつけるべきです。
そこで当サイトでは、次の順で優先度を判定しています。
- 実際に悪用が確認されているか(CISA KEV に掲載されているか)— 事実
- 悪用される確率(EPSS スコア)— 推定値
- 深刻度(CVSS)— 単独では順序を決めない
誰が作っているか
| 運営 | 株式会社mgn (https://www.m-g-n.me/) |
|---|---|
| 事業内容 | WordPressサイトの制作・保守 |
| 連絡先 | https://www.m-g-n.me/contact/ |
どのデータを参照しているか
| データ元 | 用途 | 更新 |
|---|---|---|
| NVD(NIST National Vulnerability Database) | 脆弱性情報の本体。CVE番号、深刻度(CVSS)、影響を受けるバージョン、修正版 | 毎日、前回以降の差分を取り込み |
| WordPress.org 公式API | プラグイン・テーマの実在確認、最新バージョン、利用サイト数、最終更新日 | 毎日 |
| WPVulnerability | WordPress本体(コア)の脆弱性情報 | 診断のたびに参照 |
| CISA KEV(悪用が確認された脆弱性カタログ) | 「実際に攻撃に使われた」と公的機関が認定した脆弱性の一覧 | 毎日 |
| EPSS(Exploit Prediction Scoring System) | 今後30日以内に悪用される確率の推定値 | 毎日 |
掲載していないもの
取り込んだ脆弱性のうち、ページとして公開しているのは一部です。 次のいずれかに当てはまるものは、意図的に掲載していません。
- 対象のプラグイン・テーマが WordPress.org に実在しない(データ側の誤りである可能性が高い)
- 影響を受けるバージョンが特定できていない
- 修正版もCVSSスコアも無く、読んだ人が取れる行動が無い
件数を増やすだけなら全件を機械的にページ化できますが、 中身の薄いページを量産すると、必要な情報を探している人の邪魔になります。
診断に弊害はないのか
診断がしていること
公開ページに対する通常のアクセス(HTTPのGET)だけを行っています。 ブラウザでサイトを数回閲覧するのと、サーバから見て同じことです。
- トップページのHTMLを取得し、読み込まれているプラグイン・テーマを調べる
- 各プラグインの
readme.txtを読み、バージョンを確認する /xmlrpc.php、/wp-content/debug.log、/wp-content/uploads/、/wp-config.php.bakが外部から見える状態かを確認する
診断がしていないこと
- ログインの試行(総当たり攻撃を含め、一切行いません)
- 脆弱性を実際に突く行為(検出は「バージョンの照合」のみで判断しています)
- データの書き込み・変更・削除
- 管理画面への接続、非公開ページへのアクセス
起こりうること
正直に書いておきます。
- アクセスログに記録が残ります。
- セキュリティプラグインやWAFが反応する可能性があります。 短時間に複数のパスへアクセスするため、警告メールが飛んだり、 一時的にIPが遮断されたりすることがあります。攻撃と判定されても実害はありませんが、 驚かせてしまう可能性はあります
- ごく小規模なサーバでは、瞬間的にわずかな負荷がかかります
ご自身が管理しているサイトに対してのみ実行してください。 第三者のサイトを許可なく調査する目的での利用はお断りします。
入力した情報の取り扱い
| 保存するもの | 診断したサイトのホスト名、検出結果、スコア |
|---|---|
| 保存しないもの | アクセス元のIPアドレス、URLのパス以下の情報 |
| メールアドレス | 入力された場合のみ、レポート送信と、その後のご連絡に使用します。 第三者への提供・販売は行いません |
診断でわからないこと
外部から見える情報だけを使っているため、次のことは検出できません。
- 管理画面でのみ動作するプラグイン — フロント側に出力されないものは検出されません
- バージョンを隠しているプラグイン — この場合は「不明」と表示し、脆弱性の判定は行いません
- サーバ内部の状態 — PHP・データベースのバージョン、ファイルの権限設定など
- すでに侵入されているかどうか — 設置されたバックドアなどは、外からは見えません
網羅的に確認するには、管理画面とサーバ側からの調査が必要です。 この診断は「明らかに危ない状態が残っていないか」の一次チェックとお考えください。
指摘していない項目と、その理由
一般的なセキュリティ診断で指摘されることがあっても、 当サイトではあえて指摘していない項目があります。 ほぼ全てのサイトで該当してしまう項目を並べると、 本当に対応すべき項目が埋もれてしまうためです。
/readme.html の公開 |
現在のWordPressの readme.html にバージョン番号の記載はなく、公開されていても実害がありません |
|---|---|
| ユーザー名が取得できること | REST APIの標準機能です。WordPressはユーザー名を秘密として扱っていません。 重要なのは「ユーザー名を知られてもログインされないこと」(強固なパスワード、二要素認証、 ログイン試行の制限)であって、名前を隠すことではありません |
| セキュリティヘッダの未設定 | 国内の一般的なレンタルサーバでは既定で未設定です。設定されていれば望ましいものですが、 指摘するとほぼ全てのサイトが該当するため、優先順位の情報になりません |
問題が見つかったら、どうしたらいいか
まず、慌てないでください。 「既知の脆弱性に該当している」ことと「すでに攻撃されている」ことは別です。 多くの場合は、順を追って更新すれば解消します。
手順はWordPressを安全に更新する手順にまとめています。 バックアップの取り方、更新の順序、更新後に確認すべき画面、壊れたときの戻し方までを 1ページに置いています。
で、何をすればいいのか
保守として実際にやること(バックアップ、更新の順序、更新後の確認、 使っていないプラグインの削除)をまとめています。自分たちでやる場合も、 いまの制作会社に依頼する場合も、そのまま使える内容です。
WordPressの保守とは まず診断してみるお問い合わせ
掲載内容の誤り、診断結果に関するご指摘、その他のご連絡は 株式会社mgnのお問い合わせフォーム までお願いします。