首頁 >運維 >linux運維 >Linux-11個步驟教你完美排除伺服器是否被入侵

Linux-11個步驟教你完美排除伺服器是否被入侵

Linux中文社区
Linux中文社区轉載
2023-08-03 14:52:371927瀏覽

Linux-11個步驟教你完美排除伺服器是否被入侵

隨著開源產品的越來越盛行,作為一個Linux運維工程師,能夠清楚地鑑別異常機器是否已經被入侵了顯得至關重要,個人結合自己的工作經歷,整理了幾種常見的機器被黑情況供參考:
背景資訊:以下情況是在CentOS 6.9的系統中查看的,其它Linux發行版類似。

###1######入侵者可能會刪除機器的日誌資訊

#可以查看日誌資訊是否還存在或是否已清空,相關命令範例:

Linux-11個步驟教你完美排除伺服器是否被入侵


2

##入侵者可能會建立一個新的存放使用者名稱及密碼檔案

#可以檢視/etc/passwd及/etc/ shadow文件,相關指令範例:

Linux-11個步驟教你完美排除伺服器是否被入侵


3

入侵者可能修改使用者名稱及密碼檔案

#可以查看/etc/passwd及/etc/shadow文件內容進行鑑別,相關指令範例:

#

Linux-11個步驟教你完美排除伺服器是否被入侵


#4

##以查看

##機器最近成功登陸的事件和最後一次不成功的登陸事件

Linux-11個步驟教你完美排除伺服器是否被入侵


#對應日誌“/var/log/lastlog”,相關命令範例:

#####################

5

檢視機器目前登入的全部使用者

對應日誌檔案“/var/run/utmp”,相關指令範例:

Linux-11個步驟教你完美排除伺服器是否被入侵


#6

檢視器建立以來登陸過的使用者

##對應日誌檔案“/var/log/wtmp”,相關指令範例:

另外,搜尋公眾號Linux就該這樣學後台回覆“git書籍”,取得一份驚喜禮包。

Linux-11個步驟教你完美排除伺服器是否被入侵


#7查看機器所有使用者的連接時間(小時)

#對應日誌檔案“/var/log/wtmp”,相關指令範例:

Linux-11個步驟教你完美排除伺服器是否被入侵


8

#如果發現機器產生了異常流量

#可以使用命令“tcpdump”抓取網路包查看流量情況或使用工具” iperf」查看流量狀況


9

#可以檢視/var/log/secure日誌檔案

嘗試發現入侵者的信息,相關指令範例:

Linux-11個步驟教你完美排除伺服器是否被入侵


#

10

查詢異常進程所對應的執行腳本檔案

a.top命令查看異常進程對應的PID

Linux-11個步驟教你完美排除伺服器是否被入侵

b.在虛擬檔案系統目錄尋找該進程的可執行檔 #關注Linux中文社群

Linux-11個步驟教你完美排除伺服器是否被入侵

#


##11

#如果確認機器已被入侵,重要檔案已被刪除,可以嘗試找回已刪除的檔案Note:
1、當進程開啟了某個檔案時,只要該進程保持打開該文件,即使將其刪除,它仍然存在於磁碟中。這意味著,進程並不知道檔案已經被刪除,它仍然可以向開啟該檔案時提供給它的檔案描述符進行讀取和寫入。除了該進程之外,這個檔案是不可見的,因為已經刪除了其對應的目錄索引節點。
2、在/proc 目錄下,其中包含了反映核心和進程樹的各種檔案。 /proc目錄掛載的是記憶體中所映射的一塊區域,所以這些檔案和目錄並不存在於磁碟中,因此當我們對這些檔案進行讀取和寫入時,實際上是在從記憶體中獲取相關資訊。大多數與 lsof 相關的資訊都儲存在以進程的 PID 命名的目錄中,即 /proc/1234 中包含的是 PID 為 1234 的進程的資訊。每個進程目錄中存在著各種文件,它們可以讓應用程式簡單地了解進程的記憶體空間、文件描述符列表、指向磁碟上的文件的符號連結和其他系統資訊。 lsof 程式使用該資訊和其他關於核心內部狀態的資訊來產生其輸出。所以lsof 可以顯示進程的檔案描述符和相關的檔案名稱等資訊。也就是我們透過存取進程的檔案描述符可以找到該檔案的相關資訊。
3、當系統中的某個文件被意外地刪除了,只要這個時候系統中還有進程正在訪問該文件,那麼我們就可以透過lsof從/proc目錄下恢復該文件的內容。
假設入侵者將/var/log/secure檔案刪除掉了,嘗試將/var/log/secure檔案還原的方法可以參考如下:

a.查看/var/log/secure文件,發現已經沒有該文件

Linux-11個步驟教你完美排除伺服器是否被入侵

#b.使用lsof指令查看目前是否有行程開啟/var/log/secure,

Linux-11個步驟教你完美排除伺服器是否被入侵

c.從上面的資訊可以看到 PID 1264(rsyslogd)開啟檔案的檔案描述符為4。同時也可以看到/var/log/ secure已經標記為被刪除了。因此我們可以在/proc/1264/fd/4(fd下的每個以數字命名的文件表示進程對應的文件描述符)中查看相應的信息,如下:

Linux-11個步驟教你完美排除伺服器是否被入侵

d.從上面的資訊可以看出,查看/proc/1264/fd/4就可以得到所要恢復的資料。如果可以透過檔案描述子查看相應的數據,那麼就可以使用I/O重定向將其重定向到檔案中,如:

Linux-11個步驟教你完美排除伺服器是否被入侵

e.再次檢視/var/log/secure,發現該檔案已經存在。對於許多應用程序,尤其是日誌檔案和資料庫,這種恢復刪除檔案的方法非常有用。

Linux-11個步驟教你完美排除伺服器是否被入侵

#

##############

以上是Linux-11個步驟教你完美排除伺服器是否被入侵的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:Linux中文社区。如有侵權,請聯絡admin@php.cn刪除