文档首页> 技术教程> Linux 下的查杀工具:clamav 与 chkrootkit

Linux 下的查杀工具:clamav 与 chkrootkit

发布时间:2026-06-03 16:32        更新时间:2026-06-04 08:41
怀疑服务器被植入挖矿程序或木马时,需要趁手的扫描工具。ClamAV 负责常规病毒特征扫描,chkrootkit 侧重 rootkit 排查,两个配合着用。 扫描前先看症状 动手扫描前先看一眼 `top`:CPU 被一个不明进程长期吃满、进程名是一串随机字符,这本身就是挖矿的典型特征。记录下进程号和它对应的可执行文件路径,接下来的扫描就有了明确目标,比全盘盲扫效率高得多。 安装与更新特征库 CentOS 7 先装 EPEL 再装本体: ```bash yum install -y epel-release yum install -y clamav clamav-update ``` Ubuntu 直接 `apt install clamav`。首次使用先更新特征库 `freshclam`,首次会下载数百 MB,耐心等它完成,之后每天自动增量更新;特征库不新,扫描等于白扫。 执行扫描 全盘扫描用 `clamscan -r --bell -i /`,慢是它的第一特点,上百 GB 的盘要跑几个小时,而且务必排除虚拟文件系统: ```bash clamscan -r -i --exclude-dir='/proc' --exclude-dir='/sys' -l /var/log/clamscan.log / ``` -i 表示只显示有发现的行,-l 把完整结果落一份日志方便事后翻查。日常更务实的做法是只扫高风险目录:`clamscan -r -i /var/www /tmp /root`。装了 clamd 常驻服务的改用 clamdscan,速度快很多,代价是多占一份内存。chkrootkit 装完直接运行 `chkrootkit`,几分钟出结果,重点看输出里的 INFECTED 字样。还要知道它的局限:chkrootkit 是特征匹配思路,报告阴性不等于系统干净,只能当排查信号之一,要结合登录记录、进程列表综合判断,多信号交叉,结论才站得住。 误报与处置 ClamAV 对编译型程序、加固过的文件偶有误报,判断依据是文件来源:自己部署的安装包报毒,先核对校验值与发布方公布的是否一致。确认真中招时,顺序是先隔离进程与文件、改全部凭据、再查持久化入口(cron、启动项、authorized_keys),最后清理。隔离的第一步是冻结而非删除:`kill -STOP 进程号` 让它停住保留现场,查父进程、找落盘路径都在冻结状态下做。只删样本不查入口,过几天还会再中。 查杀工具是兜底手段,入口堵住、补丁打齐,比扫一百遍都管用。