Liunx黑客入侵痕迹排查工具

2026-01-29 09:37:32 RAIZ
工具介绍
一个用于快速检查 Linux 系统常见安全与运行情况的脚本:Linux_checklist.sh。

主要检查项

一、检查网卡是否在偷偷抓包(嗅探内网密码)。
二、检查内存中有进程在跑,但对应的磁盘文件已经被删除了(/proc/*/exe -> deleted)。这是挖矿木马和 Rootkit 最爱用的“无文件攻击”手段。
三、通过 rpm -V 检查 ls, ps, netstat 等命令是否被替换了(防止黑客修改命令来隐藏自己)。
四、扫描所有用户的 .ssh/authorized_keys,看有没有被植入未知的免密登录公钥。
五、检查定时任务里有没有 bash -i, nc, curl 等连接外网的恶意命令。

详细检查清单

  1. 系统资源 (是否有挖矿迹象)
    CPU/内存占用:列出 Top 5 进程,判断是否有异常的高资源占用(如挖矿程序)
    磁盘空间:检查磁盘是否被日志或垃圾文件填满

  2. 网络连接 (是否有非法后门)
    混杂模式 (Promiscuous):检测网卡是否处于监听模式
    DNS/Hosts:检查 DNS 是否被劫持,Hosts 文件是否有恶意重定向
    监听端口:列出所有开放的端口,一眼看出有没有不该开的高位端口
    外部连接:统计服务器正在连接哪些外部 IP(Top 10),发现是否有向 C2 服务器回连的数据

  3. 进程分析 (是否有恶意程序)
    内存中已删除文件:(同上文重点项,捕捉无文件落地木马)
    高资源进程:CPU 和内存占用最高的 5 个进程详情

  4. 账号与权限 (是否有未授权账号)
    特权用户:检查除了 root 以外,是否还有 UID=0 的“超级用户”
    影子文件:检查 /etc/shadow,看哪些账户是可以登录的
    Sudo 权限:检查谁拥有 ALL=(ALL) 的超级管理员权限
    SSH 公钥:遍历 /root 和 /home 下所有用户的公钥文件
    SSH 劫持:检查是否存在 sshrc 文件(登录时自动触发恶意脚本)

  5. 持久化与启动项 (病毒是否会重启自启)
    定时任务 (Crontab):
    检查 /etc/crontab 和 /etc/cron.d/
    遍历所有用户的 Crontab 任务
    特征匹配:自动扫描任务中是否包含 wget, curl, nc 等下载或连接命令
    开机启动:
    检查 Systemd 中启用的服务
    检查 /etc/rc.local 中是否藏有恶意启动脚本

  6. 文件完整性 (是否被植入 Rootkit)
    二进制校验:利用包管理器 (RPM) 校验系统核心命令 (ls, ps, top, login, sshd 等) 的哈希值
    SUID 提权文件:扫描具有 SUID 权限的异常文件(普通用户运行即变 Root)
    临时目录扫描:检查 /tmp 和 /var/tmp 下是否有 .sh, .py, .elf 等可执行脚本(黑客常在此存放工具)
    文件属性锁定:检查关键文件是否被 chattr +i 锁定(导致无法修改或删除)

  7. 日志与痕迹 (黑客干了什么)
    暴力破解:统计 /var/log/secure 或 auth.log 中登录失败次数最多的 IP
    成功登录:查看最近谁成功登录了,IP 是哪里的
    账号变动:查看是否有新建用户 (useradd) 或删除用户 (userdel) 的记录
    历史命令:扫描 root 用户的 .bash_history,查找是否有 wget (下载木马)、tar (打包数据)、passwd (改密码) 等敏感操作。

安全与合规

  • 脚本会导出敏感信息,仅在授权环境运行并妥善保管输出文件。

我要咨询