セキュリティの問題:
当社のマネージド ホスティング サービス (https://bnshosting.net) では、クライアントがクリックジャッキング攻撃の被害に遭っています。 Sucuri.net の定義 クリックジャッキングは、「UI Straighten」とも呼ばれ、クリックするつもりのない Web ページ上のボタンやリンクをクリックするようにユーザーをだます攻撃の一種です。
通常、クリックジャッキングは、ユーザーに表示されるページの上に、iframe 内の非表示のページまたは HTML 要素を表示することによって実行されます。 ユーザーは、表示されているページをクリックしていると思い込んでいますが、実際には、その上に転置された追加ページの表示されていない要素をクリックしています。
目に見えないページは、悪意のあるページ、またはユーザーがアクセスするつもりのない正当なページ (たとえば、送金を承認するユーザーのバンキング サイトのページ) である可能性があります。 — (出典: https://www.imperva.com/learn/application-security/clickjacking/)
Imperva が引用した例では、クリックジャッキングによって、銀行の Web サイトにそっくりな偽のログイン ページに誘導されます。 偽の Web サイトに資格情報を入力すると、ハッカーは盗んだ資格情報を取得して使用し、アカウントからお金を引き出します。
悪意のあるクリックジャッキングを無効にするためのいくつかのオプション
Sucurri (https://blog.sucuri.net/2022/09/what-is-clickjacking-and-how-do-i-prevent-it.html) は、クリックジャッキングを無効にするためのいくつかの手順を特定しています。 クリックジャッキングを防止する最も効果的な方法の 1 つは、「X フレーム オプション「HTTP 応答ヘッダー。
X-Frame-Options ヘッダーは、Web サイトをフレームまたは iframe に埋め込むことができるかどうかを制御します。 ヘッダーを「同じ起源、Web サイトは同じドメインのフレームまたは iframe にのみ埋め込むことができます。 これは、攻撃者が悪意のある Web ページに Web サイトを埋め込んで、ユーザーをだましてクリックさせることができないことを意味します。
OWASP.org によって概説されているその他の X-Frame オプションには、次のものがあります。 拒否 これにより、ドメインがコンテンツをフレーミングするのを防ぎ、 URI からの許可 指定された「URI」がページをフレーム化することを許可します。
の設定に加えて、 X フレーム オプション ヘッダーに加えて、着信リクエストの発信元を検証することも重要です。 これは、 「Origin」ヘッダーと「Referer」ヘッダー リクエストで、予想されるオリジンと一致することを確認します。
クリックジャッキングを防止する別のオプションは、 コンテンツ セキュリティ ポリシー (CSP) ヘッダー. CSP を使用すると、Web サイトにロードできるコンテンツのソースを指定できます。 これには、スクリプト、画像、iframe を含めることができます。 これにより、攻撃者が悪意のあるコンテンツを Web サイトに挿入することが難しくなります。
X-Frame-Options ヘッダーと CSP はどちらもクリックジャッキングの防止に効果的ですが、 他のセキュリティ対策の代わりとして使用しないでください 入力の検証、認証、アクセス制御など。 これらの対策は、クリックジャッキングやその他の Web ベースの攻撃に対して可能な限り最善の保護を提供するために、常に相互に組み合わせて使用する必要があります。
X-Frame-Options を有効にする方法
Web 開発者は、X-Frame-Options ヘッダーを指定して、Web ページの HTTP 応答で「SAMEORIGIN」に設定できます。 ヘッダーを設定する正確な場所と方法は、使用されている Web 開発フレームワークとサーバー側プログラミング言語によって異なります。
Apache Web サーバーの場合、mod_headers モジュールを使用して X-Frame-Options ヘッダーを設定できます。 開発者は、サーバーの構成ファイル (通常は /etc/httpd/conf/httpd.conf にあります) に次の行を追加します。
NGINX の場合、X-Frame-Options ヘッダーは構成ファイルのサーバー ブロックに設定できます (通常は /etc/nginx/nginx.conf にあります)。 開発者は、サーバー ブロックに次の行を追加します。

PHP などのサーバー側プログラミング言語の場合、PHP スクリプトに次のコード行を追加することで、X-Frame-Options ヘッダーを設定できます。

Node.js で Express.js などのフレームワークを使用する場合、次のように X-Frame-Options ヘッダーを設定できます。

要約すると、 X フレーム オプション ヘッダーは、クリックジャッキング攻撃を防ぎ、悪意のある攻撃者から Web サイトを保護するための重要なステップです。 セキュリティを強化するために、着信要求の発信元を常に検証し、X-Frame-Options に加えて CSP ヘッダーを使用することが重要です。
いつものように、この件に関するあなたの考えを聞き、これに関するあなたの経験を共有したいと思います.
毎日のニュースレターにサインアップする
ここをクリックしてサインアップ