2011-11-22 9 views
8

私はw3afで私のウェブサイトを監査しています。私のサイトを保護する

私のサイトにはいくつかの問題があると言われていますが、実際はそれが疑わしいです。

問題の一つは次のとおりです。

URL:http://localhost/en/loginは、クロスサイトリクエストフォージェリの脆弱性です。攻撃者は、サーバーにデータを送信するときにPOSTからGETにメソッドを交換することができます。

私は自分のフォーム(チェックされたトークンを持つフィールド)でcrsf保護を使用しているので、それはcsrf攻撃に対して脆弱ではないと確信しています。

だから私はこのメッセージが何であるか疑問に思って:

それは、攻撃者がサーバーにデータを送信するときにGETするPOSTからのメソッドを交換することができます。

攻撃者がPOSTからGETに切り替えることはできますか?

もし私ができれば、なぜ私が説明できるのでしょうか?どのように悪用することができますか?

+0

あなたは_POSTではなくそのフォームで$ _REQUESTを使用していますか? –

+0

@MarcB:そうです。しかし、私はそれがどのように悪用されるのか見ていない(csrf予防分野を考慮して)。 – PeeHaa

+0

@Macmade:どうして私がそれを気にしているのか説明できますか? – PeeHaa

答えて

3

w3afの経験がないという観点から、かなり基本的なルールが書かれていて、それらのルールをチェックして報告していると思います。

この場合、$_POSTまたは$_GETの代わりに$_REQUESTを使用したかどうかを確認し、見つかった場合はエラーを報告します。

誰もが違うようにコードを作成して、コードのコンテキストを理解することは素晴らしい業績になるでしょうし、おそらくこれの知性を超えていることでしょう。これはソフトウェアに対する攻撃ではありませんが、他の人のコードのコンテキストや意図を理解できるプログラムを思いついた場合、私はsourceforgeでそれをあきらめません:p

それは問題ですか?たぶんあなたがサイトをどのようにうまく確保しているかによるかもしれません(上記のMarc B(+1)のコメントを参照)。

- EDIT - あなたは簡単に閉じられている攻撃の面積に開いた自分を残した$_REQUESTを使用しての代わりに、$_POSTまたは$_GETを指定すること

。これだけでなく、$_REQUESTにも$_COOKIEが含まれています。これは、他人の回答を複製するのではなく、hereでカバーされています。

+0

なぜ私はcsrf保護が組み込まれているので+1してください...私はそれを取得しません。また、Marc Bのコメントに対する私のコメントも見てください。 csrfの保護が適切に行われている場合、どのように悪用されることがありますか?または、私はここに何か巨大なものを紛失しています(場合によっては起こることもあります)。 – PeeHaa

+0

私は返信で私の​​投稿を更新しました;) –

+0

ああ@PeeHaaはw3afの+1です。ちょうど見ていて、それはかなり素晴らしいように見えます。 –

関連する問題