2017-04-04 325 views
0

我有一个简单的网络应用程序,可以对用户进行身份验证。它正在https下工作,因为它很简单,它需要两个字段usernamepassword + csrf token无CSRF令牌的身份验证

现在我已经实现了一个简单的API,用于验证具有给定用户名和密码的用户是否存在。它使用jquery.post()方法调用,在同一个域上也使用https,但我只提供usernamepassword

假设我的API只有一个函数在“被注册”的时候,我是否需要担心什么?当然蛮力。

回答

1

假设我的API只有一个函数在“is-registered”的时候,我是否需要担心什么?

“有些东西”对我来说太广泛了,无法妥善回答,但只要您保留请求及其结果和原因,您就不需要担心CSRF。让我来告诉你为什么。

CSRF攻击意味着攻击者欺骗或强制用户执行攻击者想要的参数和数据(攻击者需要)的动作(发送请求),但是以用户的名义(使用用户的有效会话和/或其他用户的私人信息)。

如果网站认为用户提出了请求,但它不会对任何人造成任何伤害,则不需要CSRF令牌,尽管他只是被迫这样做。看起来就像你的情况一样,因为如果用户被迫询问是否存在具有攻击者提供的名称和密码的帐户,那么这没有什么害处。

你只需要小心不要改变这种请求的原因及其根据哪个用户发送它的结果。