0

我正在尝试让 Twilio 与我的 express/node.js 安装一起使用。当 Twilio 收到一条短信时,它正在与我的服务器建立传入连接。然后我用短信回复这个。

这是第一次。然后第二次,我的服务器阻止了 Twilio,因为它说这是一个伪造的请求。

有没有合适的方法来解决这个问题?

4

1 回答 1

2

您应该为该 URL 禁用 CSRF。请参阅有关如何执行此操作的问题:Disable csrf validation for some requests on Express

CSRF 是一个仅与需要 cookie 形式的会话信息的请求相关的漏洞(这就是 CSRF 有时也称为“会话骑行”的原因)。简而言之,CSRF 是指恶意网站所有者可以使用<form>他们控制的页面上的标签将表单发布到您的网站,从而在用户不知情的情况下将经过身份验证的请求发送到您的服务器。例如,假设 Facebook 有一个 /delete_user.php 删除当前经过身份验证的用户。对该 URL 的 CSRF 攻击将采用<form action="http://facebook.com/delete_user.php">恶意站点所有者站点上的标记形式(没有双关语),该标记在用户不知情的情况下被提交。/delete_user.php 的非 CSRF 安全实现将看到用户的 auth cookie 并删除用户——这让用户非常沮丧。

无论如何,长话短说,您的 Twilio 处理程序不需要用户的浏览器 cookie,因此不会受到 CSRF 攻击。只需禁用 Twilio 回调 URL 的 CSRF 检查。

于 2013-02-10T18:56:36.413 回答