WP Cerber Security 9.8
English version: WP Cerber Security 9.8
今回のリリースでは、WP Cerber の中でも、日々利用しているものの普段はあまり意識しない部分に焦点を当てています。具体的には、リクエストの背後にいる実際の訪問者をどのように識別するか、アクセス決定がログにどのように記録されるか、そして WordPress 上で整合性スキャナーがどれだけ確実に動作するかといった点です。Cerber.Hub 管理コンソールにおけるクロスサイトスクリプティングの脆弱性を解消し、プロキシおよび IPv6 設定におけるクライアント IP 検出機能を改善しました。また、サーバーログがノイズだらけになったり、アクセスリストのラベルが誤解を招く原因となっていた複数の問題を修正しました。
主なポイント
- Cerber.Hubの更新ダイアログを強化し、侵害された管理サイトから報告されたプラグインメタデータを介したXSS攻撃を防止しました。
- リバースプロキシ環境およびIPv6環境では、クライアントIPアドレスの検出精度と予測可能性が向上します。
- 管理画面全体で、アクセスリストに関する用語をより明確にする。
- ログのノイズを除去し、誤解を招くアクセスリストのラベルを修正し、通常とは異なるテーブルプレフィックスを持つサイトでの整合性スキャンを復元するなど、いくつかのバグ修正を行いました。
Cerber.Hub アップデートダイアログでの防御レンダリング
Cerber.Hubを通じて複数の Web サイト上で WP Cerber を管理している管理者向けに、侵害された管理対象 Web サイトからの XSS 攻撃に対するアップデート ダイアログのセキュリティを強化しました。接続された Web サイトが既に侵害されている場合、安全でないプラグイン メタデータやサイト名がメイン Web サイトに報告され、ダイアログに表示されるアップデート情報に影響を与える可能性がありました。メイン Web サイトのコンソールは、リモート メタデータをより防御的に処理するようになり、管理対象 Web サイトとメイン Web サイト間の信頼境界が強化されました。
プロキシおよびIPv6環境におけるクライアントIPの検出精度向上
クライアントIPアドレスを正しく識別することは、WP Cerberが行うすべてのアクセス判断の基盤となります。今回のリリースでは、そのロジックに2つの独立した改善が加えられています。
- IPv4 にマッピングされた IPv6 アドレスは、標準の IPv4 表記に変換されるようになりました。クライアント IP アドレスが IPv4 にマッピングされた IPv6 形式で受信された場合、WP Cerber はログ記録、アクセス制御、および関連する統合機能全体で、そのアドレスを一貫して表現するようになりました。
- WP Cerber は
X-Forwarded-Forプロキシ ヘッダーが空の場合、または有効なアドレスが含まれていない場合に、HTTP_CLIENT_IPヘッダーにフォールバックしなくなりました。HTTP_CLIENT_IP ヘッダーは偽装される可能性があるため、このHTTP_CLIENT_IPバック機能を削除することで、リバース プロキシの背後で発生するクライアント IP アドレスの曖昧な検出を回避できます。
この変更により、設定に影響が出る可能性があります。IPv4マップドIPv6表記で記述されたACLエントリは、正規化されたIPv4クライアントアドレスと一致しなくなります。また、 fail2banはこの表記のIPアドレスを受信しません。
管理者の理解を深めるための新しいIPアクセスリスト用語
プラグインダッシュボード全体で、以前の標準用語である「ホワイトIPアクセスリスト」と「ブラックIPアクセスリスト」を、より明確な標準用語である「許可されたIPアクセスリスト」と「ブロックされたIPアクセスリスト」に置き換えました。アクセスリストの仕組みについては、こちらをご覧ください。
今回のアップデートでは、UIをより正確なアクセス制御用語に合わせます。新しい用語は、実際のアクセス決定をより直接的に説明し、管理者、ドキュメント、および今後のUI改善において、より明確で分かりやすい用語を提供します。
整合性スキャナの詳細なデータベースエラーログ
設定で診断ログが有効になっている場合、整合性スキャナは詳細なデータベースエラー情報をログに記録するようになりました。スキャナの問題をトリアージする際に、サイレントエラーではなく具体的な診断情報が得られるため、何がどこで発生したのかを容易に把握できます。
バグ修正
IPv6の位置情報データが正しくキャッシュされるようになりました。
バグにより、IPv6 アドレスの位置情報データがキャッシュされないという問題が発生していました。そのため、アクティビティ ログまたはトラフィック ログを表示するたびに、IPv6 アドレスの国情報が位置情報サービスから再度取得される必要があり、不要な AJAX リクエストが発生し、国名が表示されるまでにかなりの遅延が生じる可能性がありました。今回の修正により、IPv6 の国情報が正しくキャッシュされ、以降の表示時にすぐに表示されるようになりました。また、この修正によって、バグが IPv6 のルックアップごとにサーバーのエラー ログに書き込んでいた繰り返し発生するERROR 1062 (「重複エントリ」) メッセージも解消され、管理者にとってログのノイズが軽減されます。
IPv6範囲一致に対する正しいアクセスリストのコメントとラベル
複数の IPv6 範囲または IPv6 ネットワークが IP アクセス リストで定義されているサイトでは、WP Cerber のトラフィック ログとアクティビティ ログに、別の IPv6 アクセス リスト エントリに属するコメントやラベルが表示されることがありました。たとえば、リクエストが拒否されたにもかかわらず、アクティビティ ログのラベルが「IP ホワイトリストに登録済み」と表示されたり、その逆の現象が発生したりすることがありました。これはログの表示上の問題で、実際に関係するアクセス リスト エントリと一致しない詳細情報が表示される可能性がありました。現在は、ログには一致するエントリに対応するコメントとラベルが表示されるようになりました。
数字で始まるテーブル接頭辞の整合性スキャナが復元されました
内部SQL識別子検証において、設定されたテーブルプレフィックスが1_などの数字で始まる場合でも、有効なWordPressデータベーステーブル名が使用されるようになりました。これにより、WP Cerber 9.7.4でデータベース操作検証が厳格化された際に発生した不具合が修正されます。この不具合では、影響を受けるサイトで整合性スキャナークエリの実行に失敗し、スキャンが開始されてすぐに停止する可能性がありました。
破壊的変更
- アクセスリストの用語変更。 「ホワイトIPアクセスリスト」と「ブラックIPアクセスリスト」は、管理画面においてそれぞれ「許可IPアクセスリスト」と「ブロックIPアクセスリスト」に変更されました。設定変更は不要ですが、旧用語を参照しているドキュメントや社内手順書は更新する必要があります。
- アクセスリストにおけるIPv4マップドIPv6のマッチングについて。クライアントIP検出機能がIPv4マップドIPv6アドレスを標準IPv4表記に正規化するようになったため、マップドIPv6表記で記述されたアクセスリストエントリは、正規化されたクライアントIPアドレスに一致しなくなります。そのようなエントリを管理している場合は、内容を見直し、標準IPv4表記を使用するようにしてください。