Ubuntu

/var/log/auth.log 不完整是未經授權訪問的症狀嗎?

  • October 10, 2017

今天我發現這個/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

這是正常的嗎?這應該是完整的嗎?

您的問題的答案取決於您配置的日誌輪換。預設情況下,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 和其他惡意軟體以及異常活動。

引用自:https://serverfault.com/questions/787516