猿问

借助浏览器调试工具可以任意发送 Ajax 请求向服务器疯狂写入数据, 是否视为漏洞?

在想跨域API方面的问题,比如HTML以静态文件方式存储,仅仅通过API和服务器交换数据.
如果还是放在另一个域名上,那么本地就可以通过绑定/etc/hosts来跑本地代码..
进一步,就算不是跨域,本地直接从调试工具大范围修改JS,只要知道API,也容易跑的..
而且比如循环插入大量数据这种事情...算不算个漏洞?
肥皂起泡泡
浏览 340回答 2
2回答

慕侠2389804

楼主所说的其实是个伪命题。浏览器的请求操作都可以通过程序后台来模拟,而且也没有浏览器的安全限制。所以相对浏览器,楼主更加应该担忧这个。之所以说是个伪命题就是:如果真的要单机DOS,靠浏览器是不靠谱的。ajax请求多了在服务器还没挂之前,浏览器自己已经扛不住了(CPU、内存等)。楼主不妨自己动手试试,让浏览器在20秒内完成10万个请求,并保证每个请求正确处理。

蓝山帝景

可以参考discuz的表单里,有个串是用来防止重复提交的。比如你在服务器端生成一个时间相关的串,比如这样以php为例:$time=time();$code=$time.'_'.md5($time.'yourSalt');这个code返给表单,ajax提交是一起提交上来,第一步就检查这个code是否合法,不合法自然抛弃这个请求。收到请求时:$code=$_GET['code'];list($time,$encode)=explode('_',$code);if($encode!=md5($time.'yourSalt')){echo'非法请求';exit();}
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答