/var/log/auth.log 不完整是否是未经授权访问的症状?

/var/log/auth.log 不完整是否是未经授权访问的症状?

今天我发现该/var/log/auth.log文件只有最近一周的记录,我怀疑我是使用不安全的 SSH 密码被黑客入侵的,攻击者删除了访问日志以避免被发现。

以下是日志中的前几行:

Jun 26 06:44:58 server CRON[14297]: pam_unix(cron:session): session closed for user root Jun 26 06:47:01 server CRON[14484]: pam_unix(cron:session): session opened for user root by (uid=0) Jun 26 06:47:02 server CRON[14484]: pam_unix(cron:session): session closed for user root Jun 26 07:17:01 server CRON[14515]: pam_unix(cron:session): session opened for user root by (uid=0) Jun 26 07:17:01 server CRON[14515]: pam_unix(cron:session): session closed for user root Jun 26 08:17:01 server CRON[14518]: pam_unix(cron:session): session opened for user root by (uid=0) Jun 26 08:17:01 server CRON[14518]: pam_unix(cron:session): session closed for user root Jun 26 09:17:01 server CRON[14521]: pam_unix(cron:session): session opened for user root by (uid=0) Jun 26 09:17:01 server CRON[14521]: pam_unix(cron:session): session closed for user root Jun 26 10:17:01 server CRON[14524]: pam_unix(cron:session): session opened for user root by (uid=0) Jun 26 10:17:01 server CRON[14524]: pam_unix(cron:session): session closed for user root Jun 26 11:17:01 server CRON[14527]: pam_unix(cron:session): session opened for user root by (uid=0) Jun 26 11:17:01 server CRON[14527]: pam_unix(cron:session): session closed for user root Jun 26 12:17:01 server CRON[14530]: pam_unix(cron:session): session opened for user root by (uid=0) Jun 26 12:17:01 server CRON[14530]: pam_unix(cron:session): session closed for user root Jun 26 13:16:29 server login[1022]: pam_unix(login:auth): check pass; user unknown Jun 26 13:16:29 server login[1022]: pam_unix(login:auth): authentication failure; logname=LOGIN uid=0 euid=0 tty=/dev/tty1 ruser= rhost= Jun 26 13:16:32 server login[1022]: FAILED LOGIN (1) on '/dev/tty1' FOR 'UNKNOWN', Authentication failure Jun 26 13:17:01 server CRON[14533]: pam_unix(cron:session): session opened for user root by (uid=0) Jun 26 13:17:01 server CRON[14533]: pam_unix(cron:session): session closed for user root Jun 26 13:17:09 server login[1022]: pam_unix(login:auth): authentication failure; logname=LOGIN uid=0 euid=0 tty=/dev/tty1 ruser= rhost= user=root Jun 26 13:17:13 server login[1022]: FAILED LOGIN (2) on '/dev/tty1' FOR 'root', Authentication failure Jun 26 13:17:18 server login[1022]: FAILED LOGIN (3) on '/dev/tty1' FOR 'root', Authentication failure Jun 26 13:17:23 server login[1022]: pam_unix(login:auth): authentication failure; logname=LOGIN uid=0 euid=0 tty=/dev/tty1 ruser= rhost= user=vagrant Jun 26 13:17:34 server login[14536]: pam_unix(login:auth): authentication failure; logname=LOGIN uid=0 euid=0 tty=/dev/tty1 ruser= rhost= user=vagrant Jun 26 13:17:36 server login[14536]: FAILED LOGIN (1) on '/dev/tty1' FOR 'vagrant', Authentication failure

这正常吗?这应该完成了吗?

答案1

您的问题的答案取决于您配置的日志轮换。默认情况下,Ubuntu 配置为轮换日志文件,因此您应该在 /var/log 中看到类似以下内容的文件

auth.log
auth.log.1
auth.log.2.gz
auth.log.3.gz
auth.log.4.gz

第一个文件 (auth.log) 是当前日志,auth.log.1 是较旧的条目,auth.log.2.gz 是使用 gz 压缩的更旧的条目。数字越大,日志条目越早。

您可以通过查看 /etc/logrotate.d/rsyslog 来检查您的日志轮换设置,在 Ubuntu 14.04 上其中包含如下部分:

/var/log/mail.info
...
/var/log/kern.log
/var/log/auth.log
/var/log/user.log
...
/var/log/messages
{
        rotate 4
        weekly
        missingok
        notifempty
        compress
        delaycompress
        sharedscripts
        postrotate
                reload rsyslog >/dev/null 2>&1 || true
        endscript
}

第一行表示应保留 4 个旧版本,下一行设置每周轮换一次。

如果您的日志轮换相同,您可以预期 auth.log 文件每周都会轮换(重命名为 auth.log.1)。查看 auth.log.1 日志并确保其最新条目位于 auth.log 中最旧条目之后。如果是这种情况,则您似乎拥有连续的日志,并且一切运行正常(日志按预期轮换)。

关于日志的安全性,日志文件的修改日期不应晚于该文件中最新的日志条目或压缩日期。如果您发现几周或几个月前的日志在过去几天被修改,这是一个警告信号。

主要是,日志的内容有意义吗?登录时间是否与管理员或其他有访问权限的用户的登录时间相匹配?对于禁用 root 登录的人来说,您的日志可能非常麻烦 - 但这种活动对您的系统来说可能是正常的。

注意:从 auth.log 到 auth.log.1(等等)有“连续”的日志条目并不意味着您的服务器是安全的。攻击者可能只会删除与其活动相关的条目 - 而不会删除一大段,以免他们的入侵显而易见。如果您担心安全问题,则应检查是否存在 rootkit 和其他恶意软件以及异常活动。

相关内容