最近发现莫名断网,我还以为是路由器问题,重装了问题依旧,高强度冲浪发现飞牛0day漏洞,全网都被劫持了
fnos 恶意程序分析
飞牛0day后门?,一直中木马
群内作者 @Lany 搞了个专杀脚本,分享给大家,实测有效
#!/bin/bash
# ==========================================================
# FnOS 安全应急处置工具(交互式 · **版)
# 适用于:gots / trim / snd_pcap 入侵场景
# ==========================================================
LOG_FILE="/var/log/fnos_security_fix.log"
BACKUP_DIR="/root/fnos_quarantine_$(date +%F_%H%M%S)"
MALICIOUS_REGEX="45\.95\.212\.102|151\.240\.13\.91|turmp|gots|trim_https_cgi|snd_pcap|57132"
MALICIOUS_IPS=("45.95.212.102" "151.240.13.91")
# ---------- 基础函数 ----------
pause() {
read -rp "👉 按回车继续..."
}
confirm() {
read -rp "⚠️ $1 (y/N): " ans
[[ "$ans" == "y" || "$ans" == "Y" ]]
}
need_root() {
if [ "$EUID" -ne 0 ]; then
echo "❌ 请使用 root 权限运行(sudo -i)"
exit 1
fi
}
log_init() {
exec > >(tee -a "$LOG_FILE") 2>&1
mkdir -p "$BACKUP_DIR"
}
banner() {
clear
cat <<'EOF'
====================================================
FnOS 安全应急处置工具(交互式**版)
====================================================
⚠️ 适用于疑似被 gots / trim / snd_pcap 入侵的系统
📌 所有可疑文件将【隔离】而不是直接删除
====================================================
EOF
}
# ---------- 功能模块 ----------
path_traversal_check() {
echo "🔍 正在检测是否存在路径穿越漏洞..."
URL="http://127.0.0.1:5666/app-center-static/serviceicon/test/%7B0%7D?size=../../../../etc/passwd"
if curl -s --max-time 3 "$URL" | grep -q "root:x:0:0"; then
echo "❌ 发现路径穿越漏洞(强烈建议升级系统)"
else
echo "✅ 未检测到路径穿越漏洞"
fi
}
block_c2() {
echo "🛑 正在封禁已知恶意 IP..."
if command -v nft >/dev/null; then
nft list table inet fnos_guard >/dev/null 2>&1 || nft add table inet fnos_guard
nft list chain inet fnos_guard output >/dev/null 2>&1 || \
nft add chain inet fnos_guard output { type filter hook output priority 0 \; }
for ip in "${MALICIOUS_IPS[@]}"; do
nft add rule inet fnos_guard output ip daddr "$ip" drop 2>/dev/null
done
echo "✅ 已使用 nftables 封禁"
elif command -v iptables >/dev/null; then
for ip in "${MALICIOUS_IPS[@]}"; do
iptables -C OUTPUT -d "$ip" -j DROP 2>/dev/null || \
iptables -I OUTPUT -d "$ip" -j DROP
done
echo "✅ 已使用 iptables 封禁"
fi
}
scan_and_quarantine() {
echo "🔎 正在扫描常见恶意文件..."
TARGETS=("/usr/bin" "/usr/sbin" "/usr/trim" "/tmp" "/var/tmp")
for dir in "${TARGETS[@]}"; do
[ ! -d "$dir" ] && continue
find "$dir" -maxdepth 3 -type f -executable -size -10M 2>/dev/null | while read -r f; do
if strings "$f" 2>/dev/null | grep -Eq "$MALICIOUS_REGEX"; then
echo "🚨 发现可疑文件: $f"
chattr -i "$f" 2>/dev/null
fuser -k "$f" 2>/dev/null
mv "$f" "$BACKUP_DIR/$(basename "$f")_$(date +%s)"
fi
done
done
}
remove_kernel_module() {
echo "🧠 正在检查内核模块 snd_pcap..."
if lsmod | grep -q snd_pcap; then
modprobe -r snd_pcap 2>/dev/null || rmmod -f snd_pcap 2>/dev/null
echo "✅ 已卸载内核模块"
else
echo "ℹ️ 未发现已加载的 snd_pcap"
fi
}
fix_persistence() {
echo "🔧 正在修复系统启动与劫持点..."
# ld.so.preload
if [ -f /etc/ld.so.preload ]; then
chattr -i /etc/ld.so.preload 2>/dev/null
sed -i "/$MALICIOUS_REGEX/d" /etc/ld.so.preload
[ ! -s /etc/ld.so.preload ] && rm -f /etc/ld.so.preload
echo "✅ 已处理 ld.so.preload"
fi
# rc.local
if [ -f /etc/rc.local ]; then
chattr -i /etc/rc.local 2>/dev/null
sed -i "/$MALICIOUS_REGEX/d" /etc/rc.local
echo "✅ 已清理 rc.local"
fi
}
# ---------- 主流程 ----------
need_root
log_init
banner
echo "请选择操作模式:"
echo " 1) 仅检测(不修改系统)【推荐】"
echo " 2) 自动修复(隔离可疑内容)"
echo " 3) 只封禁恶意 IP"
echo " 4) 退出"
echo
read -rp "请输入选项 [1-4]: " MODE
case "$MODE" in
1)
path_traversal_check
;;
2)
if ! confirm "此操作会修改系统并隔离文件,是否继续?"; then exit 0; fi
if ! confirm "你是否已经备份重要数据?"; then exit 0; fi
block_c2
scan_and_quarantine
remove_kernel_module
fix_persistence
;;
3)
block_c2
;;
*)
echo "👋 已退出"
exit 0
esac
echo
echo "✅ 操作完成"
echo "📁 隔离目录: $BACKUP_DIR"
echo "📄 日志文件: $LOG_FILE"
echo "⚠️ 强烈建议:修改密码并重启系统"
运行结果良好
root@TAD:/home/asura# ./clear.sh
--- [1/6] 封禁恶意 IP 访问 (预防逃逸) ---
--- [2/6] 强制停止恶意进程 ---
--- [3/6] 解锁并删除恶意文件 ---
清理文件: /usr/trim/bin/trim_https_cgi
清理文件: /etc/systemd/system/trim_https_cgi.service
清理文件: /lib/modules/6.12.18-trim/snd_pcap.ko
--- [4/6] 卸载恶意内核模块 ---
内核模块 snd_pcap 已卸载
--- [5/6] 修复系统核心组件 ---
已清理 /etc/rc.local
已修复 /usr/trim/bin/system_startup.sh
--- [6/6] 刷新配置并重启服务 ---
清理完成!
------------------------------------------------
建议后续操作:
1. 立即修改 FnOS 管理界面密码及 SSH 密码。
2. 在飞牛安全设置中,开启防火墙并限制仅内网访问。
3. 检查 /var/log/auth.log 观察是否有异常登录。
4. 重启 NAS 以确保内存中无残留。
------------------------------------------------