如何确保机器人不会在我的应用程序上创建许多用户?

时间:2015-03-29 05:48:25

标签: android security

我有一个与服务器通信的Android应用程序。该应用程序首次运行时会向/user/register_device发送一个帖子请求,然后服务器将创建一个具有随机ID和随机密钥的新用户并返回响应

{
  "status": "success", 
  "data": {
    "uid": "sfasdfas2487329rhsdifasor092u403p8412jelfjsakl;dfajs09204u12341", 
    "ukey": "fs04932u401923u4jweofksa;ldfajs9-24-341243fasdfasdffdsafasfasfsafrweqrqgq4234fdsfasdfa34123"
  }
}

但是现在如果攻击者创建的脚本只是在循环中向/user/register_device发送帖子请求,他就可以在服务器中创建许多用户。这将很快用无效用户填满表格。那么如何制止这个呢?

我应该限制来自IP的请求数量吗?或者我应该在android应用程序中添加一个secret_key并让app在registering_device时发送此密钥?还有其他方法可以阻止这种情况吗?

1 个答案:

答案 0 :(得分:0)

受IP地址限制可能会影响功能,因为许多组织使用NAT方案来隐藏内部IP地址。

我的建议 1.使用Captcha 2.双重选择。当有人通过订阅表格注册时,会立即将电子邮件发送到他们提供的地址。 3.如果密钥再次出现,则根据MAC地址为每个用户创建一个唯一密钥,您应该忽略它。 4.勾选“我是人”复选框 http://uxmovement.com/forms/captchas-vs-spambots-why-the-slider-captcha-wins/ 5.使用SMS进行验证