web-dev-qa-db-ja.com

AntiForgeryTokenとCaptcha

captchaAntiForgeryTokenについて質問があります

  1. MVCアプリケーションでcaptchaを使用している場合、AntiForgeryTokenを使用する必要がありますか?.
  2. AntiForgeryTokenは自動フォーム送信を妨げますか?
  3. AntiForgeryTokenの代わりにcaptchaを使用できますか?
10
Twix

もう少し明確に答えるには:

MVCアプリケーションでAntiForgeryTokenを使用している場合、CAPTCHAを使用する必要がありますか?.

自動提出が問題である場合は、はい。

AntiForgeryTokenは自動フォーム送信を防ぎますか?

いいえ。CSRFトークンは基本的に、別のアクション(たとえば、フォームが送信された)が発生する前に、ユーザーがページ(たとえば、フォームを含むページ)にアクセスすることを保証します。ボットは、フォームを送信するための有効なトークンを簡単に取得できます。

Captchaの代わりにAntiForgeryTokenを使用できますか?

間違いなく、CAPTCHAはCSRFトークンを置き換えることができる可能性がありますが、CAPTCHAは、CSRF保護を必要とするすべてのフォーム(たとえば、管理パネルの1つ)ではおそらく実用的ではありません。

13
thexacre

MVCアプリケーションでAntiForgeryTokenを使用している場合、キャプチャを使用する必要がありますか?

CAPTCHAは、ユーザーが人間であるかどうかを判断するためにコンピューティングで使用される一種のチャレンジ/レスポンステストです。 (...)CAPTCHAは、ボットがさまざまな種類のコンピューティングサービスを使用したり、特定の種類の機密情報を収集したりするのを防ぐために使用されます。 - ウィキペディア

クロスサイトリクエストフォージェリ(CSRF)は、悪意のあるWebサイト、電子メール、ブログ、インスタントメッセージ、またはプログラムによって、ユーザーが現在信頼しているサイトでユーザーのWebブラウザーが不要なアクションを実行したときに発生する攻撃の一種です。認証済み。 - [〜#〜] owasp [〜#〜]

あなたが読んだように、どちらもセキュリティの完全に異なる側面です。また、CAPTCHAとCSRF防止canが正しく実装されていないと、ユーザーエクスペリエンスに悪影響を及ぼします(ブラウザーのユーザビリティの問題、CAPTCHAの解決が難しいなど)。

それが言われて、私はこれであなたのすべての質問に答えたと思います。私がリンクしたソースをチェックすることをお勧めします。そうでない場合でも、このトピックに関するすべての(さらに)質問が排除されます。

5
Kid Diamond

答えは次のとおりです。1.はい2.いいえ3.いいえ

Captchaは欠落しているcsrfトークンをカバーしますが、逆に機能しないため、自動化から保護する必要がある場合はcaptchaを使用します。

0
Shpend