PrestaShop Facebook モジュールの脆弱性 CVE-2024-36680:SQLi 攻撃が発生

PrestaShop Sites Under Attack via Facebook Module Vulnerability (CVE-2024-36680)

2024/06/20 SecurityOnline — Promokit.eu が提供する、人気モジュール PrestaShop Facebook (pkfacebook) に存在する脆弱性が、サイバー犯罪者たちにより活発に悪用されていることが判明した。この脆弱性 CVE-2024-36680 (CVSS:9.8) の悪用に成功した権限のないユーザーが、悪意の SQL コードを Web サイトのデータベースに注入することで、eコマース・プラットフォームの完全な乗っ取りにいたる可能性があるという。


脆弱性の詳細

この脆弱性は、Facebook モジュール内のスクリプト “facebookConnect.php” に存在する。攻撃者は、特別に細工した HTTP リクエストを送信することで、任意の SQL コマンドの実行を可能にする。それにより、顧客情報/支払い詳細/管理者認証情報などを含む、機密データへのアクセスが実行される可能性が生じる。

影響範囲

この脆弱性の影響を受けるのは、Promokit.eu により開発されたモジュール “PrestaShop Facebook” の全てのバージョンだと考えられる。すでにモジュールの開発者は、この問題を認識しているが、どのバージョンが影響を受けるのかという、具体的な情報は提供していない。

攻撃者による悪用

この脆弱性を積極的に悪用する攻撃者たちが、Web スキマー (会計時にクレジットカード情報を盗むように設計された悪意のスクリプト) を展開している。それにより、e コマース・プラットフォームとユーザーの双方に深刻なリスクがもたらされ、金銭詐欺や個人情報盗難につながる可能性が生じている。

PoC エクスプロイト

脆弱性 CVE-2024-36680 の PoC エクスプロイトには、単純な curl コマンドが含まれる:

curl -v "https://preprod.X/modules/pkfacebook/ajax/facebookConnect.php?id=1";select(0x73656C65637420736C656570283432293B)INTO@a;prepare`b`from@a;execute`b`;--&email=test@test.fr

このコマンドは、攻撃者が SQL インジェクションを偽造し、データベースを操作する方法を示している。

対応方法
  1. 早急なアップデート:このリスクを軽減する最も効果的な方法は、PrestaShop Facebook (pkfacebook) モジュールを、最新バージョンにアップグレードすることだ。しかし、これだけでは、すべての SQLインジェクション攻撃を完全に防ぐことはできないため、注意が必要だ。
  2. マルチクエリー実行の無効化:PrestaShop を最新バージョンにアップグレードすることで、マルチクエリー実行を無効化できる。
  3. Database Prefix の変更:確実ではないが、デフォルトの “Database Prefix” を任意の長いものに変更することで、セキュリティのレイヤーを追加できるという。
  4. WAF ルールの変更:Web Application Firewall (WAF) で、OWASP 942 ルールを有効化することは、SQL インジェクション攻撃からの防御に役立つ。しかし、Web サイトの機能を停止させないためには、正当なトラフィックに対するバイパスを設定することが重要となる。
  5. 不審なアクティビティの監視:Web サイトのログを定期的に確認し、侵害を示す可能性のある、異常なアクティビティを監視する。
考慮すべきこと

これらの緩和策は、リスク軽減に役立つが、完全な保護を保証するものではないことに注意する必要がある。PrestaShop プラットフォーム自体には pSQL と呼ばれる機能があり、特定のタイプの攻撃を防ぐのに役立つ。しかし、脆弱性のリスクを最小化するためには、すべてのセキュリティ機能が適切に適用され、プロジェクト全体で一貫して使用されていることの確認が不可欠である。

これらのセキュリティ対策の適用方法で、不明な点がある場合には、資格のあるサイバー・セキュリティの専門家に支援を求めることを強く推奨する。