爆破后首小时如何快速定位关键日志?

1 人参与

服务器被暴力破解后,前六十分钟的响应质量几乎决定了后续调查的走向。这不是危言耸听——攻击者通常会在这个时间窗口内完成权限巩固、痕迹清理和横向移动准备。问题是,面对系统中浩如烟海的日志记录,安全运维人员如何在最短时间内抓住最有价值的信息?

核心原则其实很简单:先看入口,再查行为,最后追痕迹。顺序反了会浪费大量时间在无关数据上。

首先要锁定SSH登录相关的日志。linux系统的/var/log/auth.log(Debian/Ubuntu)或/var/log/secure(RHEL/CentOS)是第一优先级。这些文件会记录所有登录尝试,包括成功和失败的历史。爆破攻击最明显的特征是短时间内大量来自同一IP的失败记录,如果看到某个IP在几分钟内尝试了几十个甚至上百个不同用户名,基本可以确认这就是攻击源。拿到IP后立即丢进威胁情报库查一下归属,很多情况下能发现这是已知的僵尸网络节点。

拿到攻击IP后别急着封禁,先看看这个IP有没有成功登录过。grep命令在这里特别实用,比如用grep "Failed password" /var/log/auth.log | grep "某个IP"可以筛出所有失败尝试,用grep "Accepted password" /var/log/auth.log | grep "某个IP"则能看到有没有成功案例。如果发现已有成功登录,接下来要查的就是这个账号在登录后执行了什么。

这里需要切换到进程审计层面。/var/log/syslog或者systemd的journalctl能提供更细粒度的操作记录。重点关注sudo使用痕迹、crontab任务创建、wget/curl下载操作以及shell脚本执行日志。攻击者一旦拿到有效账号,往往会第一时间部署后门程序或者下载提权工具,这些行为都会在系统日志中留下痕迹。

网络层面的日志同样不可忽视。如果服务器启用了auditd,/var/log/audit/audit.log能记录所有网络连接、文件访问和命令执行。这个日志量很大,但配合ausearch命令可以快速定位可疑会话。比如ausearch -ts recent -k executable可以筛出最近执行的程序,配合时间线能还原攻击路径。

最后别忘了检查定时任务。攻击者经常通过cron或者systemd timer维持持久化,即使当前会话已经断开,下一次定时任务触发时后门还会重新复活。查看/etc/crontab、/var/spool/cron以及systemd timer列表,能发现隐藏很深的定时任务。

说到底,首小时快速定位关键日志的关键不在于工具多先进,而在于排查顺序是否合理。先入口、后行为、再持久化,沿着这个逻辑线往下挖,基本能在时间内锁定问题所在。真正的考验是后面——确认攻击范围、评估数据泄露、制定长期加固方案,这些才是耗时的工作。

参与讨论

1 条评论
  • 冥界仲裁

    入口先看日志是对的,但那个IP我试了真恶心,666

    回复