2 csdnzlw csdnzlw 于 2016.02.05 15:51 提问

servlet防止IP上传攻击java

同一ip 地址(5分钟内,连续 上传 超过 10 次,就让他 等 5分钟再上传),有朋友能提供下代码,
或者思路吗?

3个回答

rui888
rui888   Ds   Rxr 2016.02.05 17:25
已采纳

servlet 过滤器中做业务处理,判断他上传的次数,你可以做个上传的变量记录ip和对应的上传记录,以及上传的时间。
判断第一次上传后最好一次上传的间隔时间以及次数,如果不满足则调到一个提示页面上传过多。这个代码也没什么的,看看过滤器在这里做处理就好。

beacon_2011
beacon_2011   Rxr 2016.02.05 16:07

一般这样的需求很少,防止上传攻击可以加上传文件限制和验证码
你说的这个,每次上传记一下,然后每次上传检查一下是否超过限制

fanst_
fanst_   2016.02.06 09:40

request里面remoteAddr,但是这个地址可能是不准确的,可能是链路中的设备的地址并非终端的ip,获取终端ip的方式是有几种的(可以百度下),还有读取x-forwarded-for,
但是实际上没有哪种方式能够完全准确得到终端的ip。
遇到过类似的情况,都是在请求中加一个业务相关的标识,例如用户名/会话id之类的,使用这个标识进行判断和次数限制,比ip地址准确。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!