【生产环境事故】求个解决JSP页面form的恶意请求提交提交?

BankingRegulatorLLM 2012-04-10 11:04:21
问题是这样的:

我做了一个投票的应用系统,上线好几天了,今天客户正式使用,
统计了下,客户的并发使用系统投票的人也就几十个,但是只要应用启动,后台CPU资源就占用到90%多,
一停止就好了,刚开始我们以为SQL没有优化或者SQL访问数太大,后来我们就做了缓存发现应用一启动CPU还是占用90%,
组后我们就分析投票进来的数据,就发现每秒钟大概有20条数据被插入到数据库当中,也就是投票的那个action被非法提交的N次,因为我前台做了严格的JS验证,只要任何一个输入项(如身份证、手机号)为空或者不正确都无法提交action的,

所以现在来求请求有什么好的屏蔽恶意提交action办法吗 ?
...全文
143 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
singlesteven 2012-04-11
  • 打赏
  • 举报
回复
(1)获取来源地址,如果不是你页面提交的地址,拒绝执行!
(2)随机验证码,判断输入验证码是否你系统产生的随机码,否则拒绝执行!
(3)同一个IP时间间距控制,可以设置半小时内才能投票一次!或者直接做的狠点,一个IP只能投票一次。

上述三点只能解决一般入侵,如果要做到更好,就必须在硬件方面做点功夫了。
昨日凡阳 2012-04-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

引用 3 楼 的回复:

有人他直接找到我的action提交地址了,然后直接弄个刷票的程序自动的投票。
引用 2 楼 的回复:

既然你客户端做了校验,可以正常提交action的又如何成为“恶意”呢?

对呀,这个就是权限问题了。

你要先知道,什么人,什么情况下可以访问这个投票action。按照你的意思,登录进来的人,不一定都可以访问action。是否需要相应权限?
[/Quote]
否则的话,任何登陆进来的人(甚至不登陆的人),只要可以看到你的action地址,就直接在浏览器访问了,这杨肯定不行。这就不是恶意提交的问题了,是权限问题。
所谓恶意提交,一般都是通过软件来自动注册或者访问固定地址的那种,所以才加验证码,防止有人通过软件或者机器自动的进行恶意攻击。
昨日凡阳 2012-04-10
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

有人他直接找到我的action提交地址了,然后直接弄个刷票的程序自动的投票。
引用 2 楼 的回复:

既然你客户端做了校验,可以正常提交action的又如何成为“恶意”呢?
[/Quote]
对呀,这个就是权限问题了。

你要先知道,什么人,什么情况下可以访问这个投票action。按照你的意思,登录进来的人,不一定都可以访问action。是否需要相应权限?
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

验证码,呵呵
[/Quote]
验证码完全安全吗 ???

即使这样做安全好像还有一点不好,你无法防止你继续恶意刷票啊,虽然提交不成功,但是那些恶意请求还是不停地会过来。
  • 打赏
  • 举报
回复
有人他直接找到我的action提交地址了,然后直接弄个刷票的程序自动的投票。
[Quote=引用 2 楼 的回复:]

既然你客户端做了校验,可以正常提交action的又如何成为“恶意”呢?
[/Quote]
昨日凡阳 2012-04-10
  • 打赏
  • 举报
回复
既然你客户端做了校验,可以正常提交action的又如何成为“恶意”呢?
  • 打赏
  • 举报
回复
验证码,呵呵

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧