Web サイトが自己ホスト型で実行されている場合ワードプレスインストールまたは Drupal で、今すぐソフトウェアを更新してください。
ニル・ゴールドシュレーガーSalesforce.com の製品セキュリティ チームのセキュリティ研究者である 氏は、人気のある Web サイト プラットフォームである WordPress と Drupal に影響を与える XML の脆弱性を発見しました。
この脆弱性はよく知られた XML Quadratic Blowup 攻撃を利用しており、実行されると Web サイト全体またはサーバー全体がほぼ瞬時にダウンする可能性があります。
WordPress と Drupal は何百万もの Web サイトで使用されているため、これは大きな問題です。 W3Techs の最新の統計によると、WordPress だけでウェブの 23% 近くを支えています。
Goldshlager が発見した XML 脆弱性は、WordPress バージョン 3.5 ~ 3.9 (現行バージョン) に影響を及ぼし、デフォルトのインストールで動作します。これは Drupal バージョン 6.x から 7.x (最新バージョン) に影響し、デフォルトのインストールでも機能します。
の良いニュースWordPress と Drupal の両方がアプリケーションのパッチをリリースしているということです。ユーザーと Web ホストは、脆弱性から保護するために最新バージョンにアップグレードするだけで済みます。
この脆弱性が悪用されると、基本的に Web サイトまたは Web サーバーが使用できなくなる可能性があります。この脆弱性により、CPU と RAM の使用率が 100% になり、サーバーが使用できなくなるだけでなく、MySQL データベース プログラムに対してサービス拒否攻撃が発生する可能性があります。
つまり、Web サイトと Web サーバーが完全にアクセスできなくなる可能性があります。
攻撃の仕組み
この脆弱性は、いわゆる XML Quadratic Blowup Attack を利用します。これ攻撃の種類に似ています億笑い攻撃これにより、非常に小さな XML ドキュメントによって、数秒のうちにマシン上のサービスが完全に中断される可能性があります。
Quadratic Blowup Attack も同様です。ただし、XML ドキュメント内でネストされたエンティティを使用する代わりに、数万文字を含む 1 つの大きなエンティティを何度も繰り返すだけです。
このタイプの攻撃では、サイズが数百キロバイトの XML ドキュメントでも、最終的には数百メガバイト、さらにはギガバイトのメモリが必要になる可能性があります。これにより、Web サイト全体または Web サーバーが簡単にダウンしてしまいます。
ゴールドシュレーガー氏の言葉では次のようになります。
「攻撃者がエンティティ "&x;" を 55,000 文字の長さと定義し、そのエンティティを "DoS" 要素内で 55,000 回参照すると、パーサーは最終的に 200 KB をわずかに超えるサイズの XML Quadratic Blowup 攻撃ペイロードを生成し、解析すると 2.5 GB になり、解析プロセスを停止するには十分です。」
攻撃の悪用方法
PHP (WordPress と Drupal が書かれている言語) のデフォルトのメモリ割り当て制限は、プロセスごとに 128MB です。理論的には、これは、XML ボム リクエストでは 128MB の制限を超えることができないことを意味します。ここまでは順調ですよね?
ここに問題があります。世界で最も人気のある Web サーバーである Apache の「最大クライアント数」プロパティは 256 に設定されています。デフォルトでは。一方、WordPress と Drupal が使用するデータベースである MySQL のデフォルトの「最大接続数」値は 151 に設定されています。
これらの接続を相互に乗算すると (128x151)、19328MB になり、使用可能なメモリをすべて消費します。
サーバーへの攻撃を成功させるには、攻撃者は被害者のサーバーで利用可能なメモリ制限をフィンガープリントする必要があります。攻撃によって PHP 制限が上書きされた場合、サーバーは上書きを拒否し、攻撃は失敗します。
ただし、攻撃が成功すると、結果として注入されたペイロードが返されます。これによりシステムがダウンします。
WordPress のサービス拒否 PoC ビデオからニルの上ヴィメオ。
修正
ワードプレスそしてドルパル両方とも、この脆弱性から保護するためにソフトウェアを更新しました。アップデート手順は設定によって異なります。
WordPress 3.7の導入自動更新マイナーリリースの場合はまさにこの理由からです。これにより、このようなセキュリティ パッチをユーザーに自動的に展開できるようになります。
自動更新は Web ホストの裁量でオンまたはオフにできるため、設定を確認し、自動更新が有効になっていない場合は手動で更新することをお勧めします。
開示に関するコメント
この脆弱性のベクトルサイズは潜在的に大きいため、Goldshlager は結果を一般に公開する前に、責任を持ってこの脆弱性を WordPress チームと Drupal チームに明らかにしました。
これにより、チームは脆弱性が大規模に悪用される前に、それぞれのソフトウェアにパッチを適用する時間を確保できました。
この種の攻撃の性質、および悪用が比較的容易であることを考えると、多くの Web サイト所有者や Web ホストへの影響は計り知れないものになっていた可能性があります。 WordPress だけでも、何百万人もの一般ユーザーや中小企業は言うまでもなく、ウェブ上の多くの大手パブリッシャーによって使用されています。
責任ある情報開示が問題を公にする最良の方法であり、解決されました。
特に、WordPress チームと Drupal チームは、一緒に働きましたはこのソリューションを導入し、セキュリティ リリースのタイミングを互いに一致させるようにしました。
この脆弱性は WordPress の XML-RPC ライブラリ ファイル (Drupal がその派生ファイルを使用するファイル) をターゲットにしているため、チームがパッチとリリースに協力するのは理にかなっています。