方法一: web 信息收集 –> 猜测用户凭证 –> Monstra CMS 后台权限 –> 源码写入一句话木马 –> 系统 Mike 用户权限 –> 用户旗帜
方法二: web 信息收集 –> 猜测用户凭证 –> Monstra CMS 后台权限 –> 源码备份 –> 得到 Mike 用户加密 hash –> 检索 Monstra CMS 加密方式,hashcat 破解密码,RDP 远程登录 –> 系统 Mike 用户权限 –> 用户旗帜
权限提升:
xampp 本地提权漏洞 –> 系统 administrator 用户权限 –> 管理员旗帜
三、靶场攻击演示
3.1 靶场信息收集
TCP 端口扫描:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
sudo nmap -p- 192.168.134.180 --min-rate=2000
PORT STATE SERVICE 80/tcp open http 135/tcp open msrpc 139/tcp open netbios-ssn 443/tcp open https 445/tcp open microsoft-ds 3389/tcp open ms-wbt-server 5040/tcp open unknown 7680/tcp open pando-pub 49664/tcp open unknown 49665/tcp open unknown 49666/tcp open unknown 49667/tcp open unknown 49668/tcp open unknown 49669/tcp open unknown
PORT STATE SERVICE VERSION 80/tcp open http Apache httpd 2.4.41 ((Win64) OpenSSL/1.1.1c PHP/7.3.10) |_http-title: Mike Wazowski | http-methods: |_ Potentially risky methods: TRACE |_http-server-header: Apache/2.4.41 (Win64) OpenSSL/1.1.1c PHP/7.3.10 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn Microsoft Windows netbios-ssn 443/tcp open ssl/http Apache httpd 2.4.41 ((Win64) OpenSSL/1.1.1c PHP/7.3.10) |_http-server-header: Apache/2.4.41 (Win64) OpenSSL/1.1.1c PHP/7.3.10 |_ssl-date: TLS randomness does not represent time | http-methods: |_ Potentially risky methods: TRACE | tls-alpn: |_ http/1.1 |_http-title: Mike Wazowski | ssl-cert: Subject: commonName=localhost | Not valid before: 2009-11-10T23:48:47 |_Not valid after: 2019-11-08T23:48:47 445/tcp open microsoft-ds? 3389/tcp open ms-wbt-server Microsoft Terminal Services | ssl-cert: Subject: commonName=Mike-PC | Not valid before: 2025-09-18T07:42:42 |_Not valid after: 2026-03-20T07:42:42 | rdp-ntlm-info: | Target_Name: MIKE-PC | NetBIOS_Domain_Name: MIKE-PC | NetBIOS_Computer_Name: MIKE-PC | DNS_Domain_Name: Mike-PC | DNS_Computer_Name: Mike-PC | Product_Version: 10.0.19041 |_ System_Time: 2025-09-19T07:48:46+00:00 |_ssl-date: 2025-09-19T07:49:01+00:00; -1s from scanner time. 5040/tcp open unknown 7680/tcp open pando-pub? 49664/tcp open msrpc Microsoft Windows RPC 49665/tcp open msrpc Microsoft Windows RPC 49666/tcp open msrpc Microsoft Windows RPC 49667/tcp open msrpc Microsoft Windows RPC 49668/tcp open msrpc Microsoft Windows RPC 49669/tcp open msrpc Microsoft Windows RPC Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows
系统为 Windows 环境,开放有 HTTP、RDP 和一些 windows 默认服务。
3.2 渗透测试突破边界
3.2.1 Monstra CMS 后台 Get Shell(方法一)
靶机 HTTP 80 和 443 页面相同,猜测属于同一个 web 应用,目录枚举过程中发现了 blog 目录。
初次访问 blog 目录会出现大量无法加载的资源,点击页面源码发现 URL 资源使用了域名访问,需要将源码中的域名添加至 kali hosts 文件。
1
echo"192.168.134.180\tmonster.pg" | sudotee -a /etc/hosts
3.2.2 Monstra CMS 后台备份源码,破解用户 hash 得到 Mike 用户权限(方法二)
如果尝试修改源码时提示没有权限或修改后不能按照预期执行系统命令,此时就需要调整攻击思路。在 Linux 靶机中,我们突破边界的第一步就是搜集系统可能存在的口令,然后尝试密码复用,对于 windows 靶机仍需要这个过程,我们知道网站后台除了 admin 还存在 Mike 用户,Monstra CMS 后台存在备份功能,我们在后台执行源码备份,然后下载至本地分析,寻找可能存在的用户口令。
点击 System -Backups 创建备份,然后将其下载至 kali。
使用 sublime text 打开源码所在路径,检索 admin 字段,在 blog/storage/database/users.table.xml 发现 admin 和 Mike 用户 hash。