java代码审计-某酒店后台管理系统
目录
1、简介
文章只作研究学习,请勿非法渗透测试;
该系统是使用SpringMVC+Mysql搭建开发的一套中小型企业酒店后台管理系统;
这里只对源代码进行审计,第三方依赖中还有很多值得分析的点(如有错误请及时指正);
2、文件上传漏洞
代码如下:
- 利用UUID作为文件随机文件名
- 获取上传文件的ContentType
- 将Content-type:image/png 中的png作为文件后缀,且充分信任
- 输出文件名到客户端(浏览器)
存在的问题:
获取Content-type后并没有做校验,且UUID已知,导致任意文件上传
burp这里获取不到文件名,但是因有为图片显示功能,可以直接看到资源路径:
冰蝎连接成功。
3、CSRF漏洞
系统设置-->修改密码
无Token校验,不限制refer,无原密码校验,存在CSRF漏洞
4、存储型XSS
房间列表->详细信息中,会输出房间号、价格、类型、房间描述等;并且参数值可控;
从输入到输出无任何过滤;
查看源代码:
尝试在价格中插入js代码:
报错,数据库中对长度进行了限制,
那尝试修改房间描述,textarea域长度应该足够了;