0

Twilioをexpress/node.jsインストールで動作させようとしています。Twilioは、テキストメッセージを受信したときに、サーバーへの着信接続を確立しています。それから私はSMS応答でこれに返信しています。

これは初めて動作します。次に、2回目は、偽造されたリクエストであると表示されたため、サーバーがTwilioをブロックします。

これを回避する適切な方法はありますか?

4

1 に答える 1

2

そのURLのCSRFを無効にする必要があります。これを行う方法については、次の質問を参照してください。Expressでの一部のリクエストのcsrf検証を無効にする

CSRFは、Cookieの形式のセッション情報を必要とするリクエストにのみ関係する脆弱性です(これが、CSRFが「セッションライディング」と呼ばれることもある理由です)。つまり、CSRFとは、悪意のあるサイト所有者が<form>制御するページのタグを使用してフォームをサイトに投稿し、ユーザーが知らないうちに認証されたリクエストをサーバーに送信できる場合です。たとえば、Facebookに現在の認証済みユーザーを削除する/delete_user.phpがあるとします。そのURLに対するCSRF攻撃は<form action="http://facebook.com/delete_user.php">、悪意のあるサイト所有者のサイトのタグの形式(しゃれは意図されていません)であり、ユーザーの知らないうちに送信されます。/delete_user.phpのCSRFセーフではない実装は、ユーザーの認証Cookieを確認し、ユーザーを削除します。これは、ユーザーの失望につながります。

とにかく、簡単に言えば、TwilioハンドラーはユーザーのブラウザーCookieを必要としないため、CSRF攻撃の対象にはなりません。TwilioコールバックURLのCSRFチェックを無効にするだけです。

于 2013-02-10T18:56:36.413 に答える