飞牛私有云 fnOS 是一款基于 Debian Linux 内核深度开发的国产 NAS 操作系统,因其免费正版和丰富的应用生态,吸引了大量用户关注。然而,近期曝出其存在一个严重的 0day 漏洞,攻击者可以利用此漏洞访问 NAS 设备上的任意文件,包括系统关键配置和用户的私人存储文件。本文将带你逐步复现该漏洞,并探讨其影响。
免责声明:本文所有测试均在授权的虚拟机环境中进行,内容仅供安全研究与学习之用,请勿用于任何非法目的。我们坚决反对一切危害网络安全的行为。
本次测试环境搭建在虚拟机中,使用的飞牛 fnOS 版本为 0.9.9。
漏洞复现:路径遍历读取任意文件
首先,我们从 Kali Linux 系统访问飞牛 NAS 的 Web 管理界面(IP: 192.168.50.88:5666),并使用 Burp Suite 拦截浏览器流量。

在 Burp Suite 的 Repeater 模块中,我们可以构造并发送测试 payload。漏洞点位于 /app-center-static/serviceicon/myapp/{0}/?size= 这个路径,其 size 参数存在路径遍历问题。
1. 遍历系统根目录
我们构造第一个 PoC,尝试跳出目录访问根路径:
/app-center-static/serviceicon/myapp/%7B0%7D/?size=../../../../../
发送请求后,服务器响应中直接列出了根目录下的文件和文件夹列表,如 bin、boot、etc、home 等,证明目录穿越成功。

2. 读取 /etc/passwd 文件
既然可以访问任意路径,读取系统敏感配置文件便成为可能。我们尝试获取 /etc/passwd 文件:
/app-center-static/serviceicon/myapp/%7B0%7D/?size=../../../../../etc/passwd
发送请求后,服务器返回了 /etc/passwd 文件的完整内容,其中包含了系统所有用户账户信息。

3. 读取 /etc/shadow 文件
/etc/shadow 文件存储了用户的加密密码哈希,是更核心的敏感文件。使用同样的方法构造 payload:
/app-center-static/serviceicon/myapp/%7B0%7D/?size=../../../../../etc/shadow
如图所示,攻击者成功获取到了 shadow 文件的内容,这为后续的密码破解和权限提升打开了大门。

4. 浏览器直接访问
该漏洞甚至无需专业工具,直接在浏览器地址栏中输入构造好的 URL 即可触发,降低了攻击门槛。访问后,页面会以目录列表或文件内容的形式展示结果。

深度利用:WebSocket 认证绕过
除了文件读取,研究中还发现前端通过 WebSocket 协议通信时,存在可生成有效 secret 和 token 的缺陷,从而实现完全的认证绕过,获取管理员权限。这意味着攻击者无需密码即可登录系统后台,危害性极大。

安全建议与总结
此次飞牛 fnOS 的漏洞组合(路径遍历 + 认证绕过)危害等级极高,可导致设备被完全控制。对于此类涉及 安全/渗透/逆向 领域的基础性漏洞,开发团队应在设计之初就予以充分考虑。
给用户的建议:
- 立即更新:请密切关注飞牛官方公告,第一时间将系统升级到已修复漏洞的最新版本。
- 网络隔离:如非必要,切勿将 NAS 设备的 Web 管理端口直接暴露在公网。建议通过 VPN 或内网穿透等安全方式访问。
- 最小权限:定期审计账户权限,遵循最小权限原则。
- 关注动态:多关注 云栈社区 等技术论坛的安全板块,及时了解主流软硬件的安全通告。
安全是一个持续的过程,无论是开发者还是用户,都需要保持警惕。希望本文的复现与分析能帮助大家更好地理解此类漏洞的风险,并采取有效措施加固自己的系统。