admin管理员组文章数量:1558696
文章目录
- 前言
- path_traversal
- @RestController
- 路径穿越
- 修复方法
前言
期末考试周了,学了一天密码学,累死了,我的Java也要开始一点
本文章代码来源于Java-sec-code项目
path_traversal
首先我们在org/joychou/controller/PathTraversal.java
路径下面,首先最上方有一个大大的@RestController
@RestController
这是在Spring4
之后新加入的注解,原来返回json
需要@ResponseBody
和@Controller
配合。
即@RestController
是@ResponseBody
和@Controller
的组合注解。
@RestController
public class HelloController {
@RequestMapping(value="/hello",method= RequestMethod.GET)
public String sayHello(){
return "hello";
}
}
等价于
@Controller
@ResponseBody
public class HelloController {
@RequestMapping(value="/hello",method= RequestMethod.GET)
public String sayHello(){
return "hello";
}
}
路径穿越
首先这里告诉我们利用方法,打过CTF的也知道是啥东西
将filepath
参数传入getImgBase64
这里验证其文件存在并且不是目录,之后通过文件流的形式读取并返回到网页
修复方法
这里给了我们一个修复的方法
我们来看看这个SecurityUtil.pathFilter(filepath)
函数,
逻辑很简单,首先是判断有无%
,有则执行url解码,之后常规的防止路径穿越的方式过滤..
与/
即可
本文标签: 路径SecJavapathtraversalCode
版权声明:本文标题:[Java-sec-code学习]path_traversal路径穿越 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1725281320a1016539.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论