最初の実験を行う前にについての簡単な紹介をしてください。
A、CSRF(クロスサイトリクエストフォージェリ)概要:
クロスサイトリクエストフォージェリは、「CSRF」、CSRF攻撃のシナリオで、攻撃者の缶偽の要求(この要求は通常のリンクである)と呼ばれ、クリックして、ターゲットユーザーをだましますこのリクエストに応じてユーザーがクリックすると、全体攻撃は完了です。だから、CSRF攻撃は、「ワンクリック」の攻撃になります。多くの人がCSRF、XSSとの概念を知らないと、時にはそれが混同されたり、悪化し、それは越権となり、問題を混同し、これが原則のために明確ではありません。
ここでは、理解するのに役立つことを期待して、説明するシーンです。
シーン需要:
白地に黒のあなたは、会員のショッピングサイトtianxiewww.xx.comアドレスで塗りつぶしを変更したいです。
:白い外観の下に自分のパスワード変更方法である
---ログを会員情報を変更し、正常に変更要求を提出します---。
1、2つの、ログイン権限、変更要求の個人情報を:あなたは情報の黒、白を変更したいので、彼が持っている必要があります。
しかし、それを行うにはどのように黒、黒を伝えるために白のxxxウェブサイトのアカウントのパスワードに自分自身を入れていませんか?
彼は自身のwww.xx.comのアカウントを登録するに行きましたので、その後、ご自身の個人情報を変更する(のような:Eメールアドレス)、彼は変更要求であることがわかった。
[http://www.xxx .COM /个人设定[email protected]&Change=Change]?
彼は、このような操作を行ったので:このリンクで、このリンク迷彩外観を白xxxのサイトにログインした後、彼を欺くクリック白いクリック個人情報が変更され、後に、攻撃の目的は完全に黒です。
なぜ黒アクションはそれを達成することができます。いくつかの重要なポイントがあります。
1.www.xxx.comユーザーが簡単に偽造リクエストにつながる、個人情報を変更すると、このサイトは過大ではありません確認してください。
---そのため、我々は簡単に偽造かどうかの重要な情報(パスワードやその他の機密情報など)(追加と削除)にその動作を判断するために、ウェブサイトのCSRFの脆弱性は、実際には、そこにあるかどうかを判断します。
; 2.ホワイトはちょうどオンラインショッピングでログインして、黒と白、この時間内に送信されたリンクをクリックした
白の安全意識の高いが、未知のリンクをクリックしない場合---、攻撃が成功した、あるいは白ではありませんリンクをクリックして、今回は、白のショッピングサイトに署名しなかった成功しません。
---そのため、成功したCSRF攻撃を実装するために、我々は「気候、地理、および」条件にする必要があります。
もちろんネットワークは、XSSの脆弱性を発見した場合、黒のフロントページのxxx事前場合は、黒を行う可能性があります:小型、ページ、白ストローク(クッキースクリプトを盗むために)ホワイト待ち伏せXSSスクリプトを訪れたカンニング黒と白のクッキーを取得し、その後、成功した、独自の関連情報を修正、白、黒、白の黒の背景にログオンします。
---ので、上記の表情よりも、あなたはCSRFとXSSの違いを見ることができます:CSRFは、ユーザーの権限の攻撃によって完成され、その後、攻撃者はユーザーの許可を取得し、ユーザーの許可に直接XSSを盗む、としませんでした害を行います。
あなたはCSRF攻撃サイトを防ぎたいのであれば、あなたは、CSRFにつながる、偽造されるように見えるこのような状況を防ぐために、機密情報に対応するセキュリティ対策の動作を実装する必要があります。例えば:
-トークンの機密情報は、操作の安全性を高める;
-機密情報コードのセキュリティを向上させる操作を、
- 、パスワードを変更するときのように本実施形態の機密情報の安全な操作の論理フローを、あなたは古いチェックする必要がありますパスワード。
あなたは非常に理解して読んでいない場合は、再読み込みすることを躊躇しないで
、脆弱性のより良い理解に対応することができます「クロスサイトリクエストフォージェリ」テストセクションを。
この時点でデータが変更され、いくつかのリンクをクリックして、あなたを誘惑、単純な自分のログイン時間と同様のサイトで、上の偽物と着陸のログです。
二、CSRF(タイプを取得します)
私たちは、最初の突破口を見つけるために、情報を変更するときに返される情報の一部巻き込まれる、見て行って!
ディスカバリー要求は、背景がget要求が送信されると同時に、あるCSRF対策を行っていないことを示す、トークンパラメータに戻って送信されません。そして、何の心配もありません。
次に、攻撃者はそれにこのリンクを取得するには、自分のアカウント、変更どの電子メールアドレスまたは他の方法を登録する必要があります!
/pikachu-master/vul/csrf/csrfget/csrf_get_edit.php?sex=boy&phonenum=18626545453&add=china&email=vince%40pikachu.com&submit=submit
その後、我々は、この情報が変更され、それが変更されたときにクリックすると、クリック誘惑ヴィンスを、発行変装されます。
成功!
三、CSRF(ポストタイプ)
私たちは下請け:
ディスカバリー要求がフォームを送信体の形で、我々は攻撃、サイトを構築し、サイト上のフォームを作る、時にユーザーがクリックし、このリンクをクリックするようユーザーを誘導することができる、それが自動的にCSRFの存在を修正するためにサーバーにPOSTリクエストを送信します個人情報。
フォームコード:中国(チャイナ)へのアドレス、
1 <HTML> 2 <ヘッド> 3 <スクリプト> 4 window.onload = 関数(){ 5 のdocument.getElementById(" postsubmit " ).click(); 6 } 7 </スクリプト> 8 </ HEAD> 9 <BODY> 10 <フォームメソッド= " ポスト"アクション= " http://192.168.24.140/pikachu/vul/csrf/csrfpost/csrf_post_edit.php " > 11 <入力されたID = 「セックス」タイプ= "" 性別"値= " 女の子" /> 12 <入力されたID = " PHONENUM "タイプ= " テキスト"名前= " PHONENUM "値= " 12345678922 " /> 13 <入力されたID = " 追加"タイプ= " テキスト"名前= " 追加"値= "中国" /> 14 <入力されたID = "メール「タイプ= 」テキスト"名= " メール"値= " [email protected] " /> 15 <入力されたID = " postsubmit "タイプ= " 提出" NAME = " 提出"値= " 送信" /> 16 > </フォーム 17 < / BODY> 18 </ HTML>
良い方向に変更します:
四、トークン防衛
私たちは、jは、私たちは、それぞれの要求は、ランダムなコードを増加している、ランダムなコードが毎回ランダムコードの検証を十分に懸命に十分な、背景を必要とする彼の操作が簡単に偽造されていない参加することを可能にするトークン追加することにより、キャプチャを見ました我々はピカチュウプラットフォームCSRF(トークン)ページおよびログインを入力します。
CPCは、型が隠されているこのファイルはバックエンドが私を送られたトークン、値を生成します、このファイルtoken_get_edit_.phpアクセスに個人情報を変更し、フロントを見ることはできませんが、ソースコード内で見ることができます。提出のすべてのポイントは、トークンが背景に提出され、背景は、トークン検証され、現在のセッションの内部にトークン等しい場合は、あなたが提出できるようになります。
V.その他の注意事項
1、トークン検証を増加させる(一般的な方法)
増加したトークンのキー動作パラメータ、トークン値はランダムにする必要があり、それぞれが異なっています
2、安全なセッション管理に(セッションが使用されないようにします)
(1)(認証情報など)の影響を受けやすいクライアント情報を保存しないでください。
(2)直接オフテスト、セッションが終了するとき機構満了します。
(3)は、数分以内誤用、自動着陸残業としてセッション国有メカニズムを設定します。
3、アクセス制御、セキュリティ管理
ID認証の必要性は、以下のような二次変性(1)機密情報は、とき:あなたがアカウントを変更するときは、古いパスワードを確認する必要があります。
変更は、(2)機密情報がGETではなく、POSTを使用して
(3)リファラでHTTP逃したショットで元のページを制限します。
4、増加コード:
一般的に着陸(抗ブルートフォース)で使用される、それは(可用性を検討する必要がある)の操作に関するその他の重要な情報の形でも使用することができます