为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

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

2 回答

?
慕侠2389804

TA贡献1719条经验 获得超6个赞

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

TA贡献1843条经验 获得超7个赞

可以参考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();
}
                            
查看完整回答
反对 回复 2019-04-07
  • 2 回答
  • 0 关注
  • 339 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信