拡張機能とカスタムコードのセキュリティを確保する
Adobe Commerce Marketplace からサードパーティの拡張機能を追加してAdobe Commerceを拡張する場合、またはカスタムコードを追加する場合、次のベストプラクティスを適用して、カスタマイズのセキュリティを確保します。
-
Adobe Commerce Marketplace またはソリューションインテグレーターを通じたソース拡張機能のみ。 拡張機能がインテグレーターを通じて提供されている場合は、インテグレーターが変更した場合に拡張機能ライセンスの所有権が譲渡可能であることを確認します。
-
拡張機能とベンダーの数を制限することで、リスクを軽減します。
-
可能な場合は、Commerce アプリケーションと統合する前に、セキュリティのための拡張機能コードを確認します。
-
PHP Extension Developers が、Adobe Commerceの開発ガイドライン、プロセス、およびセキュリティのベストプラクティスに従っていることを確認してください。 特に、開発者は、リモートコードの実行や暗号化の脆弱性を引き起こす可能性のある PHP の機能を使用しないでください。 拡張機能開発者ガイドのベストプラクティス セキュリティ を参照してください
最新リリースへのアップグレード
Adobeは、セキュリティを強化し、潜在的な侵害からお客様をより適切に保護するために、更新されたソリューションコンポーネントを継続的にリリースしています。 Adobe Commerce アプリケーション、インストール済みサービスおよび拡張機能の最新バージョンにアップグレードし、最新のパッチを適用することは、セキュリティの脅威に対する最初かつ最善の防御策です。
Commerceは通常、セキュリティアップデートを四半期ごとにリリースしますが、優先度などの要因に基づいて、主要なセキュリティ上の脅威に対するホットフィックスをリリースする権利を留保します。
使用可能なAdobe Commerceのバージョン、リリースサイクル、アップグレードおよびパッチプロセスについて詳しくは、次のリソースを参照してください。
- リリース済みバージョン
- 製品の提供(Adobe Commerce サービスおよびAdobeが作成した拡張機能)
- Adobe Commerce ライフサイクルポリシー
- アップグレードガイド
- パッチの適用方法
ディザスタリカバリ計画の作成
Commerce サイトが危険にさらされた場合は、包括的なディザスタリカバリ計画を策定して実装することで、被害を抑制し、通常の業務を迅速に復旧します。
障害が原因でCommerce インスタンスを復元する必要があるお客様には、Adobeからバックアップファイルを提供できます。 お客様とソリューションインテグレーターは、該当する場合、復元を実行できます。
Adobeでは、ディザスタリカバリ計画の一環として、ビジネス継続性の目的で再導入が必要な場合に容易に再導入できるように Adobe Commerce アプリケーション設定をエクスポートすることを強くお勧めします。 設定をファイルシステムにエクスポートする主な理由は、システム設定がデータベース設定よりも優先されるためです。 読み取り専用のファイルシステムでは、アプリケーションを再デプロイして機密性の高い設定を変更し、保護レイヤーを追加する必要があります。
追加情報
クラウドインフラストラクチャにデプロイされたAdobe Commerce
Adobe Commerceがオンプレミスにデプロイされました
安全なサイトとインフラストラクチャの維持
このセクションでは、Adobe Commerce インストールのサイトおよびインフラストラクチャのセキュリティを維持するためのベストプラクティスの概要を説明します。 これらのベストプラクティスの多くは、コンピューターインフラストラクチャの一般的なセキュリティ保護に重点を置いているので、推奨事項の一部は既に実装されている可能性があります。
クラウドインフラストラクチャにデプロイされたAdobe Commerceのインストールでは、Fastly サービス統合で利用可能なビルトイン WAF サービスを使用できます
マルウェアに対するProtect
e コマースサイトを狙ったマルウェア攻撃は非常に一般的であり、脅威アクターはトランザクションからクレジットカードと個人情報を収集する新しい方法を継続的に開発しています。
しかし、Adobeは、ほとんどのサイトの侵害は革新的なハッカーによるものではないことがわかりました。 むしろ、脅威アクターは、多くの場合、既存のパッチが適用されていない脆弱性、パスワードの不備、ファイルシステム内の所有権と権限の設定の脆弱性を利用します。
最も一般的に経験される攻撃では、悪意のあるコードが顧客ストアの絶対ヘッダーまたは絶対フッターに挿入されます。 コードは、顧客のログイン資格情報やチェックアウトフォームデータなど、顧客がストアフロントに入力するフォームデータを収集します。 その後、このデータは、Commerce バックエンドではなく、悪意のある目的で別の場所に送信されます。 また、マルウェアは、元の支払いフォームを支払いプロバイダーが設定した保護を上書きする偽のフォームに置き換えるコードを管理者に実行させる可能性があります。
クライアントサイドのクレジットカードスキマーは、次の図に示すように、マーチャントの web サイトコンテンツにコードを埋め込み、ユーザーのブラウザーで実行できるマルウェアの一種です。
ユーザーによるフォームの送信やフィールド値の変更など、特定のアクションが発生した後、スキマーはデータをシリアル化し、サードパーティのエンドポイントに送信します。 これらのエンドポイントは、通常、最終的な宛先にデータを送信するためのリレーとして機能する、その他の侵害された web サイトです。
最も一般的な攻撃を把握
以下は、Commerceのすべてのユーザーが認識し、対策を講じることをAdobeが推奨する攻撃の一般的なカテゴリのリストです。
-
サイトデファリング – 攻撃者がサイトの外観を変更したり、独自のメッセージを追加したりして、Web サイトに損害を与えます。 サイトやユーザーアカウントへのアクセスは侵害されていますが、多くの場合、支払い情報は安全なままです。
-
ボットネット – 顧客のCommerce サーバーは、スパムメールを送信するボットネットの一部になります。 通常、ユーザーデータは侵害されませんが、顧客のドメイン名がスパムフィルターでブロックリストに加えるされ、ドメインからのメールの配信が妨げられる可能性があります。 または、お客様のサイトがボットネットの一部になり、別のサイトに対して分散型サービス拒否(DDoS)攻撃を引き起こします。ボットネットは、Commerce サーバーへのインバウンド IP トラフィックをブロックし、お客様が買い物できないようにする可能性があります。
-
直接のサーバ攻撃:データが侵害され、バックドアやマルウェアがインストールされ、サイトの運用に影響が及びます。 サーバーに保存されていない支払い情報は、これらの攻撃によって侵害される可能性が低くなります。
-
サイレントカードのキャプチャ – この最も悲惨な攻撃では、侵入者は隠されたマルウェアやカードのキャプチャソフトウェアをインストールするか、さらに悪いことに、クレジットカードデータを収集するためにチェックアウトプロセスを変更します。 その後、データはダークウェブ上の販売のために別のサイトに送信されます。 このような攻撃は、長期間、気付かれず、顧客アカウントや財務情報の大きな漏洩につながる可能性があります。
-
サイレントキーログ – 脅威アクターは、管理者ユーザーの資格情報を収集するためにキーログコードを顧客サーバーにインストールして、検出されることなくログインしたり他の攻撃を開始したりできます。
パスワード推測攻撃に対するProtect
ブルートフォースパスワード推測攻撃により、管理者に不正アクセスが行われる可能性があります。 次のベストプラクティスに従って、これらの攻撃からサイトをProtect化します。
-
Commerceのインストールに外部からアクセスできるすべてのポイントを特定して保護します。
管理者へのアクセスを保護するには、Commerce プロジェクトの設定時にAdobeの 優先度の推奨事項に従うことで、通常は最も保護が必要になります。
-
指定した IP アドレスまたはネットワークからのユーザーのみにアクセスを許可するアクセス制御リストを設定して、Commerce サイトへのアクセスを制御します。
カスタム VCL コードスニペットと共に Fastly Edge ACL を使用して、受信リクエストをフィルタリングし、IP アドレスによるアクセスを許可できます。 リクエストを許可するためのカスタム VCL を参照してください。
TIP
リモートワーカーを採用している場合は、Commerce サイトへのアクセス権を持つアドレスのリストにリモート社員の IP アドレスが含まれていることを確認してください。
クリックジャッキング攻撃の防止
Adobeは、ストアフロントへのリクエストに含めることができる X-Frame-Options
HTTP リクエストヘッダーを提供することで、クリックジャッキング攻撃からストアを保護します。 2}Adobe Commerce設定ガイドの「クリックジャッキングの悪用の防止 を参照してください。