Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails 4重复HTTP POST请求垃圾邮件_Ruby On Rails_Ruby_Post_Ruby On Rails 4_Spam - Fatal编程技术网

Ruby on rails Rails 4重复HTTP POST请求垃圾邮件

Ruby on rails Rails 4重复HTTP POST请求垃圾邮件,ruby-on-rails,ruby,post,ruby-on-rails-4,spam,Ruby On Rails,Ruby,Post,Ruby On Rails 4,Spam,我一直在开发RubyonRails4应用程序。大多数情况下,该站点已经完成,但是我发现了一个“安全缺陷”,它允许我通过拦截代理工具(Burp套件)捕获HTTP POST请求。然后,我可以将此POST请求发送到中继器,并一次又一次地重新提交请求。这可以有效地用来滥用我的应用程序和垃圾邮件的人。在发布此产品之前,我需要解决此问题。这就是我需要帮助的地方。我真的希望避免使用CAPTCHA,并且我希望尽可能无缝地保持应用程序的用户流。那么,有哪些好方法可以防止HTTP POST请求垃圾邮件呢 谢谢您ge

我一直在开发RubyonRails4应用程序。大多数情况下,该站点已经完成,但是我发现了一个“安全缺陷”,它允许我通过拦截代理工具(Burp套件)捕获HTTP POST请求。然后,我可以将此POST请求发送到中继器,并一次又一次地重新提交请求。这可以有效地用来滥用我的应用程序和垃圾邮件的人。在发布此产品之前,我需要解决此问题。这就是我需要帮助的地方。我真的希望避免使用CAPTCHA,并且我希望尽可能无缝地保持应用程序的用户流。那么,有哪些好方法可以防止HTTP POST请求垃圾邮件呢

谢谢您

gem允许您根据机架环境中的任何内容阻止或限制请求

一个典型的例子是限制用户名的登录尝试次数,您可以使用它

Rack::Attack.throttle('logins/email', :limit => 6, :period => 60.seconds) do |req|
  req.params['email']} if req.path == '/login' && req.post?
end

您可以定义任意数量的这些限制(显然是合理的)

您可以在表单发布时对当前时间的MD5校验和实施某种类型的黑客攻击。如果帖子超过X秒,请拒绝帖子。