仅使用电话号码和短信代码登录的安全性

问题描述 投票:0回答:2

我正在构建一个跨平台的应用程序,并使用PHP和MySQLi。用户使用其Facebook帐户或电话号码进行注册。如果他们选择电话号码,则输入他们的号码,然后将发送包含验证码的SMS。用户输入代码,并发送回API令牌以在API请求中使用。像这样的火种。

我正在考虑Twilio进行验证。

我的问题归结于此登录过程的安全性。恶意用户是否可以一遍又一遍地快速触发创建验证码的登录请求……发送大量SMS并在我的Twilio帐户上花了我一大笔钱?我应该只允许这么多次尝试吗?机器人可以最终猜出代码吗?

Tinder API的安全性是什么?

php security twilio two-factor-authentication
2个回答
0
投票

注意事项:

每个电话号码1个限制请求

2-每个用户的限制请求(通过ip)

3-使用验证码(仅在第二次尝试使您的应用程序保持用户友好性之后)

4-使用蜜罐

“机器人可以猜出代码吗?”验证码应有时间限制。大约2分钟后,它们应该无效。时间限制和请求限制应该使机器人很难猜出代码。

如果您使用的是laravel,它已经具有rate limiting middleware(受ip限制)。


0
投票

Twilio开发人员推广人员在这里。

我同意Shalior在回答中所说的所有内容,因此我不再重复。

我想分享的是falsehoods programmers believe about phone numbers上的这篇文章。很好地提醒您,电话号码不一定是唯一定义用户的,如果您打算使用无密码登录,请记住这一点。

© www.soinside.com 2019 - 2024. All rights reserved.