PHPでfile_get_contentsを使用してCSRFトークンの検証を破ることは可能ですか?

行きます

各セッションのフォームでトークンを使用するCSRF防止方法が一般的な方法です。ただし、file_get_contentsPHPがクロスドメインファイルフォームのコンテンツを取得できる場合、このトークンウェイがどのように保護できるかわかりません->フォームでトークンを取得して使用することもできます。

では、このトークンウェイはどのように機能しますか?

rineez

私があなたの質問をよく理解しているなら、あなたはこのような悪用の可能性を想像しています:

  1. 攻撃者は、ターゲットユーザーに偽のフォームを提示するPHPページを作成します
  2. 攻撃者のPHPスクリプトは、file_get_contents悪用しようとしているターゲットサイトからフォーム(HTML)をダウンロードし、ダウンロードしたHTMLからCSRFトークンを取り出し、ユーザーに提示された偽のフォーム内にこのCSRFトークンを追加します。

  3. 疑いを持たないユーザーがフォームを送信すると、このユーザーのセッションのコンテキストで、ターゲットサイトで意図しない要求が実行されます

  4. リクエストに有効なCSRFトークンがあるため、ターゲットサイトのCSRFチェックはOKに合格します

しかし、待ってください..有効なトークンがありますか?私たちは本当にしますか!ターゲットサイトがCSRFを実装している場合は、正しい方法を確認してください。

ここで重要なのはセッションです。file_get_contentsターゲットサイトからフォームをダウンロードするために実行すると、リクエストはそれ自体のセッションのコンテキストで実行され、file_get_contentsプロセスはそこでのクライアントであり、そのリクエストに対して生成されたCSRFトークンは、その特定のセッション。後で、ターゲットユーザーが偽のフォームを送信すると、そのリクエストはセッションとは異なるユーザーのセッションのコンテキストで実行されます。file_get_contentsしたがって、CSRFチェックがターゲットサイトによって実装されている場合、CSRKトークンは拒否されます。適切な方法。

これは、CSRFの防止に推奨されるシンクロナイザートークンパターンについて詳しく理解するためのOWASPからの良い記事です。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

file_get_contents()を使用して複数のファイルを検索することは可能ですか?

分類Dev

変数検証を使用してifステートメントを生成することは可能ですか?

分類Dev

file_get_contentsを使用してPHPでデータをPOSTする方法は?

分類Dev

ダウンロードクライアントに組み込まれたチェックサム検証を使用しても、破損したトレントファイルをダウンロードすることは可能ですか?

分類Dev

PHPでfile_get_contentsを使用する場合のセッション認証

分類Dev

Hibernate検証を使用して1つの具体的な検証を実行することは可能ですか?

分類Dev

破壊を使用して追加することは可能ですか?

分類Dev

基本認証とSSLでfile_get_contentsを使用する

分類Dev

PHP:クラス__constructorでfile_get_contents()を使用するのは悪い習慣ですか?

分類Dev

タイプヒント検証を直接使用することは可能ですか?

分類Dev

Firebaseセキュリティルールを使用してキーを検証することは可能ですか?

分類Dev

サーバー(Java)からFirebaseトークン(JWT)を検証することは可能ですか?

分類Dev

Firebase 3でトークンのサーバー側検証を行うことはまだ可能ですか?

分類Dev

Firebase 3でトークンのサーバー側検証を行うことはまだ可能ですか?

分類Dev

Firebase 3でトークンのサーバー側検証を行うことはまだ可能ですか?

分類Dev

RailsはRestKitPOSTから「警告:CSRFトークンの信頼性を検証できません」と表示します

分類Dev

file_get_contentsを使用してデータを取得するphp

分類Dev

Hostingerホストでfile_get_contentsを実行しているPHPエラー:ストリームを開くことができませんでした

分類Dev

PHPでfile_get_contentsを使用して404エラーを修正するにはどうすればよいですか?

分類Dev

AngularJSを使用して、名前を含むテキストフィールドをobjectVO.fieldnameとして検証することは可能ですか?

分類Dev

PHPでfopenを使用して404ページのコンテンツを取得することは可能ですか?

分類Dev

whatsappを使用して認証することは可能ですか?

分類Dev

PHPを使用してログイン認証情報を維持することは可能ですか?

分類Dev

AWSLambdaを使用してoauth2.0トークンをリクエストすることは可能ですか?

分類Dev

Alpacajs検証:ボタンが検証をスキップしてフォームを送信できるようにすることは可能ですか?

分類Dev

phpを使用してCodeIgniterのコントローラーを呼び出すことは可能ですか?

分類Dev

USBトークンをファイルストレージとして使用することは可能ですか?

分類Dev

echo $ _GETを使用してフォームアクションを作成することは可能ですか?

分類Dev

フォーム(検証)の機能を使用して、代わりにonclickでデータを送信することは可能ですか?

Related 関連記事

  1. 1

    file_get_contents()を使用して複数のファイルを検索することは可能ですか?

  2. 2

    変数検証を使用してifステートメントを生成することは可能ですか?

  3. 3

    file_get_contentsを使用してPHPでデータをPOSTする方法は?

  4. 4

    ダウンロードクライアントに組み込まれたチェックサム検証を使用しても、破損したトレントファイルをダウンロードすることは可能ですか?

  5. 5

    PHPでfile_get_contentsを使用する場合のセッション認証

  6. 6

    Hibernate検証を使用して1つの具体的な検証を実行することは可能ですか?

  7. 7

    破壊を使用して追加することは可能ですか?

  8. 8

    基本認証とSSLでfile_get_contentsを使用する

  9. 9

    PHP:クラス__constructorでfile_get_contents()を使用するのは悪い習慣ですか?

  10. 10

    タイプヒント検証を直接使用することは可能ですか?

  11. 11

    Firebaseセキュリティルールを使用してキーを検証することは可能ですか?

  12. 12

    サーバー(Java)からFirebaseトークン(JWT)を検証することは可能ですか?

  13. 13

    Firebase 3でトークンのサーバー側検証を行うことはまだ可能ですか?

  14. 14

    Firebase 3でトークンのサーバー側検証を行うことはまだ可能ですか?

  15. 15

    Firebase 3でトークンのサーバー側検証を行うことはまだ可能ですか?

  16. 16

    RailsはRestKitPOSTから「警告:CSRFトークンの信頼性を検証できません」と表示します

  17. 17

    file_get_contentsを使用してデータを取得するphp

  18. 18

    Hostingerホストでfile_get_contentsを実行しているPHPエラー:ストリームを開くことができませんでした

  19. 19

    PHPでfile_get_contentsを使用して404エラーを修正するにはどうすればよいですか?

  20. 20

    AngularJSを使用して、名前を含むテキストフィールドをobjectVO.fieldnameとして検証することは可能ですか?

  21. 21

    PHPでfopenを使用して404ページのコンテンツを取得することは可能ですか?

  22. 22

    whatsappを使用して認証することは可能ですか?

  23. 23

    PHPを使用してログイン認証情報を維持することは可能ですか?

  24. 24

    AWSLambdaを使用してoauth2.0トークンをリクエストすることは可能ですか?

  25. 25

    Alpacajs検証:ボタンが検証をスキップしてフォームを送信できるようにすることは可能ですか?

  26. 26

    phpを使用してCodeIgniterのコントローラーを呼び出すことは可能ですか?

  27. 27

    USBトークンをファイルストレージとして使用することは可能ですか?

  28. 28

    echo $ _GETを使用してフォームアクションを作成することは可能ですか?

  29. 29

    フォーム(検証)の機能を使用して、代わりにonclickでデータを送信することは可能ですか?

ホットタグ

アーカイブ