比如,同一个 ip 地址,不停的使用不同的 ua 不断的产生新的 session,尝试去重置一批密码,或者探测邮箱是否注册。
像这样的情况,一个 ip,一般情况下,多少个 client 可以算是恶意攻击?
1
lecher 2015-05-16 12:47:25 +08:00
做为服务器,应对着这种正常业务接口的请求,不应该做限制.在服务器能够处理的负载内,都不算攻击.
因为很多地区的小通信运营商是只有一个出口的,还有某些单位,只有同一个外网出口,高校校园网也是类似的只有少数几个外网出口. 服务器要做的是,保证正常业务没有漏洞可以钻,对可能带来高负载的接口做好缓存策略.比如重置密码业务必须有登录校验去约束,检测邮箱注册这种接口做好缓存策略即可. 要做限制次数的反而应该是业务上必须要限制的功能: 比如请求必须要带什么标识才会处理 比如限制一个ip单位时间内发送多少消息则触发请求内容检测,检测核实为垃圾内容则封禁帐号 比如敏感的登录功能多少次密码校验错误则锁定ip禁止登录一个帐号 比如找回密码功能一个ip只能申请多少次这类的 |
3
ryd994 2015-05-16 12:51:14 +08:00
未必啊……
考虑大内网NAT…… 你想拦的话自己分析一下log就好,正常用户和恶意用户请求数至少差10倍 对重置密码的页面要单独用更严的限制 搜索这类消耗大的也是 |
4
lecher 2015-05-16 13:39:26 +08:00
对外的接口就两种
无状态,无论如何都会返回相同结果。 有状态,根据用户请求提交的参数,返回不同的结果。 无状态的请求,不需要做任何限制,做好缓存策略 有状态的请求,做用户校验,只有符合校验的用户才返回正确的结果,有状态请求中的敏感操作,要做更严格的校验和约束。 |
5
scys 2015-05-16 15:09:54 +08:00 via Android 1
做过小isp 技术主管…能说三千个在同一个IP~~~~~~~~~~~~~哈!
|
6
wy315700 2015-05-16 15:14:18 +08:00
做一个统计吧 保证99%的正常请求不会被过滤就行了
|