概要
セキュリティ研究者らは、MagentoおよびAdobe Commerceプラットフォームで利用可能な深刻な脆弱性「PolyShell」がハッカーによって悪用されていることを報告しました。この脆弱性により、未認証の攻撃者はプラットフォームのREST APIを介して実行可能ファイルをアップロードすることができます。
PolyShell脆弱性
この脆弱性はMagentoのREST APIに存在し、特にゲストカートルーティングで問題が発生します。カートアイテムにカスタムファイルオプションが含まれている場合、APIはベース64エンコードされたデータ、MIMEタイプ、およびファイル名を含む埋め込みファイルオブジェクトを処理します。
システムはオプションIDの検証を行わず、製品が実際にはファイルアップロードが必要かどうかを確認せず、さらにファイル拡張子制限も欠けています。これにより脅威アクターは基本的な画像ヘッダーチェックを容易にバイパスし、サーバーのアップロードディレクトリに悪意のあるスクリプトを直接アップロードすることができます。
影響範囲
- 無制限のファイルアップロード: Magento Open SourceおよびAdobe Commerceのすべてのバージョン(2.4.9-alpha2まで)に影響があります。
- ストレージ型クロスサイトスクリプティング(XSS): 2.3.5以前のすべてのバージョンに影響があります。
- リモートコード実行(RCE): 特定のWebサーバー構成(例:デフォルトのNginx設定やApacheのPHPエンジン制限がない場合)で発生します。
対策と防御
Adobeが現在のプロダクション環境向けにパッチをリリースするまで、管理者は直ちに対抗措置を講じる必要があります。主な推奨事項は、リアルタイムの攻撃をブロックするために専用のWebアプリケーションファイアウォール(WAF)を展開することです。
- アクセス制限: pub/media/custom_options/ディレクトリへのアクセスを厳しく制限します。
- Nginxサーバーの場合、strict location block rulesとdeny directiveを使用してアクセスを制御します。
- Apaheユーザーは.htaccessアクセスコントロールファイルが存在し有効であることを確認します。
インジケーターオブコムプロイス(IoCs)
- ペイロードファイル名: index.php, json-shell.php, bypass.phtml, c.php, rce.php, ato_poc.htmlなど。
- ハッシュ: a17028468cb2a870d460676d6d6da3ad63706778e3 および 4009d3fa8132195a2dab4dfa3affc8d2。
- IPアドレス: 2.217.245.213, 3.12.250.83, 18.220.50.153, 198.186.130.10。
