Linux

天網入侵後如何發現安全漏洞?

  • November 21, 2010

前幾天,朋友的伺服器被入侵了。該攻擊安裝了一個新的 SSH 守護程序,該守護程序允許任何有效帳戶進入,而無需提供有效密碼。登錄後,每個賬號自動獲得root權限,伺服器打招呼如下:

天網登錄

攻擊還刪除了顯示入侵的 syslog 條目(我們通過 syslog 的日誌發現了這一點)並更改了/etc/apt/sources.list.

伺服器在 Debian Etch 下執行,並且在攻擊期間不是最新的:Apache/PHP 沒有安裝所有安全更新。我們認為入侵可能是由於這些缺失的更新而發生的,但我們實際上並不確定。在攻擊前一天,我們安裝了 Wordpress 3.0.1;但我們不知道 Wordpress 的安裝是否是一個開門器。

有沒有辦法找出伺服器上的哪個安全漏洞允許入侵?

一旦攻擊者獲得 root 權限,通常很難判斷他們是如何進入的,因為他們可以修改包括日誌在內的系統。除非您通過網路將日誌發送到另一個系統,否則您可能會不走運——尤其是當您提到正在修改的日誌時。

顯然,吸取的教訓是您需要及時了解更新檔。我們通常在通過 yum/apt-get 發布更新檔的一天內應用更新檔。

請注意,針對 PHP、Apache 或 Wordpress 的攻擊可能只會賦予攻擊者 Web 伺服器權限。但從你的描述看來,他們肯定已經紮根了。因此,如果他們確實通過 Web 應用程序進入,還有另一個折衷方案允許他們從 Apache 進入 root。但我也想知道他們是否通過 SSH 上的弱根密碼等進入…

然而,知道攻擊它的方法可能不會讓你清理它。根據您的描述,這台機器此時受到了非常嚴重的損害,最好的辦法是從頭開始安裝新的作業系統並設置系統備份。審核您從舊盒子帶來的所有數據和軟體。修復受損的盒子非常困難。

無論如何,要回答您是否有任何方法可以找出問題,這裡有一些常見的地方可以查找發生了什麼:

  • /var/log/syslog 或 /var/log/messages - 查找攻擊可能發生的時間,可能是日誌中的空白,或者您無法解釋的活動。
  • 其他日誌可能沒有像 /var/log/security 那樣被清除
  • 各種帳戶的 .bash_history,包括 root 和 Web 伺服器。這可能會提供他們執行的命令或有關已完成操作的資訊。
  • 查找您不認識的正在執行的程序,或者您認識但可能從不尋常的目錄或名稱執行的程序。查看 /proc/ $ PID and /proc/ $ 您看到的正在執行的程序的各種程序 ID ($PID) 的 PID/fd。
  • 也許“最後”會告訴你一些事情,但他們可能把它消滅了。
  • rkhunter 可以幫助您告訴您系統上存在哪些問題,並幫助您找到可以查找更多資訊的位置。
  • Apache 日誌可能會顯示一些異常活動的跡象,但通常很難從實際破壞系統打開的攻擊中過濾掉您一直受到的攻擊。

這項工作的大部分是不同日誌文件之間的嚴重互相關,以找出什麼是有趣的,什麼只是噪音。

進行這種調查並不是一件容易的事。這可能需要 4 小時或更長時間,特別是如果這是您第一次這樣做。

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