首页/安全/应急响应速查/检查 /var/spool/cron 原始任务文件

检查 /var/spool/cron 原始任务文件

crontab 命令只列当前活跃用户的任务:被删账号遗留的任务文件仍在 spool 目录里照常执行,直接看文件更完整。

应急响应速查安全更新于 2026-10-13

直接检查任务文件

crontab -l 是按当前存在的用户去查询任务,而任务文件本身保存在 /var/spool/cron 目录里。两者的差异很关键:账号被删除后,它的任务文件可能仍然留在 spool 目录中并照常执行。所以排查定时任务时,直接翻目录比逐个用户查询更完整,也更容易发现「这个任务到底属于谁」——文件名就是用户名,一看便知。

基本信息

Debian 系路径/var/spool/cron/crontabs/ 目录下以用户名命名的文件
RHEL 系路径/var/spool/cron/ 目录下以用户名命名的文件
目录权限目录通常为 700 或 1730,普通用户不可读,需 root 操作
检查内容文件名、文件内容、mtime、属主与权限
与命令的差异crontab -l 看不到无主用户的任务文件
修改方式应通过 crontab 命令而不是手工编辑文件,避免绕过格式校验

典型使用场景

  • 确认是否有已删除账号遗留的任务仍在执行
  • 排查任务表执行的内容与 crontab -l 输出不一致的情况
  • 核对任务文件的修改时间,判断是否在入侵窗口内被写入
  • 清理时保留原文与文件属性作为证据
  • 判断某个可疑任务的执行身份到底是谁

直接翻任务文件

直接翻任务文件
sudo ls -la /var/spool/cron/ /var/spool/cron/crontabs/ 2>/dev/null
sudo cat /var/spool/cron/root 2>/dev/null; sudo cat /var/spool/cron/crontabs/root 2>/dev/null
sudo find /var/spool/cron -type f -exec ls -l --time-style=full-iso {} + 2>/dev/null
sudo awk -F: '{print $1}' /etc/passwd | sort > /tmp/users.txt                       # 现有用户
sudo ls /var/spool/cron /var/spool/cron/crontabs 2>/dev/null | sort -u > /tmp/spool.txt
comm -13 /tmp/users.txt /tmp/spool.txt                                              # 无主任务文件
sudo grep -rEn 'curl|wget|base64|/tmp/' /var/spool/cron/ /var/spool/cron/crontabs/ 2>/dev/null | head

现象与含义

现象含义处理建议
文件名对应的用户已不存在遗留任务,仍会被 cron 执行先备份内容与属性,再决定清理
文件 mtime 落在入侵窗口任务可能刚被写入与进程启动时间、日志对照后处理
内容含下载并执行典型保活任务复制原文留证后整段删除
属主或权限异常可能被手工改写记录原始属性,作为篡改痕迹
目录里出现备份文件名有人尝试隐藏或恢复任务检查同目录其他可疑文件
对比用户列表与目录清单是最快的方法:用 passwd 里的用户列表与 spool 目录下的文件名取差集,只在目录里出现的文件就代表遗留或无主任务,这类条目恰恰最容易被漏掉。
不要手工直接编辑 spool 文件:手工写入绕过 crontab 的格式校验,容易写坏任务表导致 cron 报错或整表失效。清理应通过 crontab -u 用户名 -r 或按行删除后再校验。

易错点

  • 只跑 crontab -l:无主用户的任务文件完全看不到,是最常见的漏项
  • 直接手工修改 spool 文件:绕过格式校验,可能让任务表整体失效
  • 清理前不备份原文:任务内容与文件时间戳都是证据,删掉无法复原
  • 忽略文件属主与权限:异常属主往往说明有人手工改过文件
  • 只看内容不看 mtime:新增与改动时间是判断是否为入侵线索的关键

数据来源与参考

  • cron(8) 手册:spool 目录约定

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌