用友 NC 反序列化与接口 RCE 利用

用友 NC/NCC 系列常见问题:反序列化、BeanShell、文件上传与接口未授权导致的 RCE,完整讲解原理、影响、利用、检测、防御与修复。

写在前面:合法学习边界

本文利用只允许在授权环境进行。用友 NC 多用于企业财务系统,入侵真实系统可能触犯法律。

一、漏洞原理

用友 NC/NCC 是国内企业常用的 ERP 系统,历史漏洞多且影响大。常见问题集中在:

1
2
3
4
1. 反序列化:接口对不可信对象反序列化 → RCE
2. BeanShell:部分版本存在 BeanShell 接口可直接执行
3. 文件上传:任意文件上传 → WebShell
4. 接口未授权:敏感接口可匿名访问

本质:ERP 系统功能多、历史包袱重,接口安全跟不上

二、影响与危害

1
2
3
直接 RCE / GetShell
财务数据、数据库密码泄露
内网横向移动

风险等级:严重。

三、利用 / 复现

1. 反序列化

1
2
3
用友 NC 多个 Servlet/接口存在反序列化
配合 ysoserial(CommonsCollections 等)gadget 发送恶意序列化对象 → RCE
常见入口:/servlet/...、/NCFindWeb/...、NCCloud 相关接口

2. BeanShell

1
2
部分版本可访问 BeanShell 控制台/接口
通过 bsh 脚本执行命令

3. 文件上传

1
2
部分上传接口未校验类型
上传 JSP/WebShell 后访问执行

4. 工具化利用

1
2
网上有成熟的 NC 检测/利用脚本
先指纹识别版本,再对号入座打对应漏洞

四、检测

1
2
3
4
指纹:识别用友 NC 版本(登录页/特征路径)
探测反序列化接口与上传接口
版本核对已知 CVE 与公开 PoC
日志中异常序列化请求/上传文件

五、防御

1
2
3
4
升级到官方安全补丁版本
限制 ERP 系统公网暴露,走内网+VPN
对反序列化/上传接口做 WAF 防护
最小化开放端口

六、修复

1
2
3
4
及时打厂商补丁
清理已上传 WebShell 与后门
禁用不必要的接口与服务
修复后复测:反序列化与上传均被拒

七、小结

用友 NC 代表国内“老牌 ERP + 安全欠账”的典型场景。它的价值在于财务与内网数据,漏洞利用往往直通 GetShell。防护上“打补丁 + 收敛暴露面 + WAF”三件套缺一不可。