代码审计--web安全之文件上传

过完年回来第一博,之前看到公众号“信安之路”(非常棒的讲安全的公众号)发了一篇文章
审计某开源商城中的漏洞大礼包
说的是文件上传的安全漏洞,想到自己之前也做过文件上传模块 自己审计下自己的垃圾代码。

文章中的删除模块
文章中的php代码直接删除imgsrc对应的文件,没有做校验,那么可以指定任意路径删除
我的删除模块

    String eid = req.getParameter("eid");
    this.enclosureService.deleteResources(eid, LoginCtrlSession.getLoginVO(new ServletRequest[0]));
    res.addMessage("删除成功");

其中Id使用的时间戳,偷懒没有使用uuid,碰到暴力的话往前推几百个id可以把文件全部删除,不过外网看不到id,而且是逻辑删除,不是物理删除。或者爬虫可以全部爬下来。不过应该没什么关系,全是开放给外网下载的。

这里写图片描述
此处这种验证询问了相关的可以通过burp 改包修改content-type 最有效我觉得还是后缀白名单验证
我的上传模块

  byte[] datas = IOUtils.toByteArray(in);
        if (size > 8388608L) {

          FileOutputStream fos= new FileOutputStream(uploadPath+filename);
          fos.write(datas);
          File file= new File(uploadPath+filename);
          fos.close();
        }

上传模块中没有做文件类型白名单处理和验证,如果能够渗透到内网,则可以直接通过应用上传脚本,导致获取到数据库等信息。

web安全可以参考web安全-文件上传漏洞解决

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值