后台如何防止恶意请求?

sunho89 2016-06-08 05:00:23
请教个问题,如果一个游戏得分活动,游戏结束提交ajax请求http://aaa?score=分值,后台根据用户session保存分值。假如有人恶意请求这个链接,如:get/post这个链接http://aaa?score=10000,那就可以随便上传自己的游戏分值了。我该怎么防止呢?

(页面游戏背景:用户可以玩多次,活动结束取分值最高的发奖品)
...全文
881 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunho89 2016-06-08
  • 打赏
  • 举报
回复
引用 6 楼 starfd 的回复:
另外分数判断的真伪,这个可能需要一些算法来支撑,即多少分,会配套对应的其它参数,两者匹配才代表分数没经过伪造
这个法子不错
sunho89 2016-06-08
  • 打赏
  • 举报
回复
引用 2 楼 sp1234 的回复:
你是担心别人也用 javascript ?还是担心有的人看了某人的 SessionID 之后迅速跑到自己的电脑上把 SessionID 输入到自己的调试程序里?......... 没有什么绝对安全的操作。每一种开发设计方法都是相对的。甚至造成你可能需要放弃web改为桌面程序,都有可能。每一种安全问题背后都是可以用时间成本和金钱成本来衡量的,只要有足够的时间、金钱,就没有什么安全。
引用 7 楼 sp1234 的回复:
比如说你在csdn的评级,是csdn后台的事情。 如果你满脑子只有“前端 javascript 编程”,那么某种担心就可以理解了。同时也就由此知道你这个程序其实后台没内涵、只有前端界面了。
是的,就是一个小游戏,游戏由前端做的,只有开始和结尾与后台有交互,我的任务纪录统计。
引用 7 楼 sp1234 的回复:
比如说你在csdn的评级,是csdn后台的事情。 如果你满脑子只有“前端 javascript 编程”,那么某种担心就可以理解了。同时也就由此知道你这个程序其实后台没内涵、只有前端界面了。
引用 7 楼 sp1234 的回复:
比如说你在csdn的评级,是csdn后台的事情。 如果你满脑子只有“前端 javascript 编程”,那么某种担心就可以理解了。同时也就由此知道你这个程序其实后台没内涵、只有前端界面了。
多谢指教!
  • 打赏
  • 举报
回复
比如说你在csdn的评级,是csdn后台的事情。 如果你满脑子只有“前端 javascript 编程”,那么某种担心就可以理解了。同时也就由此知道你这个程序其实后台没内涵、只有前端界面了。
  • 打赏
  • 举报
回复
另外分数判断的真伪,这个可能需要一些算法来支撑,即多少分,会配套对应的其它参数,两者匹配才代表分数没经过伪造
  • 打赏
  • 举报
回复
http://blog.csdn.net/cpytiger/article/details/8781457 可以参考这个,传值给后台时,还需要传入ForgeryToken,这个是在你打开页面时后台随机生成的值,只能一次你就后台做个判断就行了
sunho89 2016-06-08
  • 打赏
  • 举报
回复
引用 1 楼 sp1234 的回复:
你把“恶意上传”的具体方式说出来,才可能知道你到底想要什么。 当你提供了一个链接,那么你就是提供了这个链接让别人去访问。不要动不动就说别人是恶意访问。只有你明确定义了“恶意”的这个概念,你才能真正提问。
这里的“恶意”指的是非正常流程,一时没想到合适的词 正常流程:游戏结束时,会自动ajax一个请求把得分传到后台保存。 ajax请求的这个链接会暴露,别人就有可能利用这个链接去随意上传游戏得分,如浏览器输入http://aaa?score=10000或模拟一个post请求,都可以传到后台,后台没法判断这个请求是正常流程进来的还是非正常流程进来的。该怎么阻止这种情况发生呢?
拜一刀 2016-06-08
  • 打赏
  • 举报
回复
多上传几个值啊,做下验证,比如游戏为了防止有人修改内存,在某个地方存一下各个重要值(金钱?)的加密后数据,到时候一验证就知道金钱被修改了,可以防住一堆用金山游侠的 说起来大航海时代5刚开服的时候,挖宝结果啊什么的都是明文传到浏览器的,全都能看出来啥是啥....
  • 打赏
  • 举报
回复
你是担心别人也用 javascript ?还是担心有的人看了某人的 SessionID 之后迅速跑到自己的电脑上把 SessionID 输入到自己的调试程序里?......... 没有什么绝对安全的操作。每一种开发设计方法都是相对的。甚至造成你可能需要放弃web改为桌面程序,都有可能。每一种安全问题背后都是可以用时间成本和金钱成本来衡量的,只要有足够的时间、金钱,就没有什么安全。
  • 打赏
  • 举报
回复
你把“恶意上传”的具体方式说出来,才可能知道你到底想要什么。 当你提供了一个链接,那么你就是提供了这个链接让别人去访问。不要动不动就说别人是恶意访问。只有你明确定义了“恶意”的这个概念,你才能真正提问。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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