クロスサイト スクリプティング – 定義

導入

クロスサイト スクリプティング(略称XSS ) は、Web サイトのセキュリティ脆弱性の一種であり、通常は Web アプリケーションに見られ、攻撃者がこれを使用してWeb サイトをページの作成者が望むものとは異なる動作 (サイトへのリダイレクト、情報窃盗など)。 CSS (スタイル シート) と混同しないように XSS と省略されます。X は英語のcrossの一般的な略語です。

クロスサイト スクリプティングという用語は、この種の脆弱性を正確に説明するものではありません。 XSS の先駆者であるマーク・スレムコ氏は次のように述べています。

「問題は「スクリプト」だけではなく、複数のサイト間に必ずしも何かがあるとは限りません。では、なぜこの名前なのでしょうか?実際、この名前は、問題があまり理解されておらず、行き詰まっていたときに付けられました。信じてください、私たちには、より良い名前を考えるよりも、もっと重要なやるべきことがあったのです。 »

原理は、たとえばフォーラムにメッセージを投稿することによって、また URL パラメータなどを通じて任意のデータをWeb サイトに挿入することです。このデータが検証されずにブラウザに送信されたWeb ページ(URL パラメーター、投稿されたメッセージなどによって) としてそのまま到着した場合、欠陥が存在します。スクリプト言語 (ほとんどの場合) で悪意のあるコードを実行するために使用される可能性があります。このページを閲覧しているWeb ブラウザによって、多くの場合JavaScript ) が使用されます。

XSS 脆弱性の存在は、たとえばフォームフィールドまたは URL に Javascript スクリプトを入力することで検出できます。

ダイアログボックスが表示される場合は、 Web アプリケーションが XSS 攻撃の影響を受けやすいと結論付けることができます。

クロスサイト スクリプティング - 定義

リスク

XSS タイプの脆弱性が悪用されると、侵入者は次の操作を実行できるようになります。

  • ユーザーのリダイレクト (場合によっては透過的)。
  • セッションや Cookie などの情報の盗難。
  • 被害者の知らないうちに、被害者の身元を偽って、脆弱なサイトでの行為 (メッセージの送信、データの削除など)
  • ページのクラッシュ(アラートの無限ループなど)、ブラウザのクラッシュもよくあります。

XSS タイプの欠陥は、2005 年のMySpaceでの Samyウイルスや、 Yahoo!でのYamannerウイルスの蔓延の根源となっています。 2006年のメール。

クロスサイト スクリプティング - 定義

抜け穴を避ける

XSS を回避するには、いくつかの手法があります。

  • アプリケーションによって生成された HTML コードをブラウザに送信する前に体系的に再処理します。
  • 「<」および「>」文字を使用して表示または保存されるフィルター変数 (CGI では PHP と同様)。より一般的には、外部からの文字列を含む変数には、たとえば「us」(ユーザー文字列) というプレフィックスを付けた名前を付けて、他の変数と区別し、対応する値を実行可能文字列(特に SQL!) 内で使用しないでください。事前のフィルタリング。
  • PHP の場合:
    • 「<」と「>」をフィルタリングするhtmlspecialchars() 関数を使用します (上記を参照)。
    • タグを削除するstrip_tags()を使用します。
  • HTMLタグを正しく使用する(不十分)。

ユーザー (発行システム) からのタグ付きコンテンツを効率的にフィルターできるライブラリがあります。

さらに、アプリケーションファイアウォールなどの専用ネットワーク機器を利用してXSS型脆弱性を防御することも可能です。これらにより、疑わしいリクエストを検出するためにすべてのHTTPフローをフィルタリングできます。

クロスサイト スクリプティング - 定義
  1. برمجة عابرة للمواقع – arabe
  2. Saytlararası skript – azerbaïdjanais
  3. Cross Site Scripting – catalan
  4. Cross-site scripting – tchèque
  5. Cross-site scripting – danois
  6. Cross-Site-Scripting – allemand

クロスサイト スクリプティング – 定義・関連動画

サイエンス・ハブ

知識の扉を開け、世界を変える。