DAY118代码审计-JAVAEE开发&文件上传&文件读取&文件下载&文件删除
一、indeux(文件上传)
1、环境搭建
数据库导入
配置文件
Maven环境配置
2、Tomcat配置
3、文件上传复现
进入后台
拿用户账号密码
Md5查看密码
4、代码审计&路由分析
提交数据包
http://127.0.0.1:82/image/gok4?¶m=temp&fileType=jpg,gif,png,jpeg
图片地址
http://127.0.0.1:82/images/upload/temp/20241115/1731638381723.png
根据功能点追踪代码
fileType=jpg,gif,png,jpeg
图片处理功能封装到jar包中
获取文件名后缀
黑名单的绕过jspx
二、关键字tmall(过滤器+文件上传)
1、数据库配置
2、关键字法
new File()
3、代码追踪
Extention没有过滤
找到漏洞路由地址
正常图片上传的位置
Bp抓包修改后缀
4、filter越权绕过
//如果是(登录界面,登录态失效界面),直接放行
三、若依-任意文件下载
1、代码审计
OutputStream
关键字寻找功能点文件读取
没有在路由中是配置文件,需要寻找使用该方法的的control文件
2、寻找参数利用链
filePath-》fileName-》downloadPath-》String resource
触发路由@GetMapping("/common/download/resource")
打印路劲
http://127.0.0.1/common/download/resource?resource=/profile/
跳到d盘读取文件
D:\011-代码审计-小迪安全\118-代码审计-JavaEE开发篇&文件操作类安全&环境源码等\RuoYi-v4.5.0\RuoYi-v4.5.0\ruoyi-admin\src\main\resources\application-druid.yml
四、oa_system-master-任意文件读取
1、搜索关键字 FileInputStream
2、利用链分析
文件读取-》读哪个文件-》可控文件-》漏洞触发
Data-》input-》f.getPath()-》-》new File(rootpath, path);-》tartpath.replace("/image", "");-》startpath = new String(URLDecoder.decode(request.getRequestURI()
路由@RequestMapping("image/**")
startpath.replace("/image", "");
/image替换为空
Poc
image//image..//image..//image..//image..//image..//1.txt
D:\011-代码审计-小迪安全\117-代码审计-JavaEE篇&SQL注入&项目源码&IDEA等\oa_system-master/target/classes/
原文地址:https://blog.csdn.net/m0_74402888/article/details/143819075
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!