Linux入侵日誌檢測研究專題
Linux系統中,日誌系統主要分為三類:
● 系統接入日誌: 多個程式會記錄該日誌,記錄到/var/log/wtmp和/var/run/utmp檔案中,telnet、ssh等程式會更新wtmp和utmp檔案,系統管理員可以根據該日誌跟蹤到誰在何時登入到系統。
● 程序統計日誌:Linux核心記錄該日誌,當一個程序終止時,程序統計檔案(pacct或acct)中會進行記錄。程序統計日誌可以供系統管理員分析系統使用者對系統進行的配置,以及對檔案進行的操作。
● 錯誤日誌: Syslog日誌系統已經被許多裝置相容,Linux的syslog可以記錄系統事件,主要由syslogd程式執行,Linux系統下各種程序、使用者程式和核心都可以通過Syslog檔案記錄重要資訊,錯誤日誌記錄在/var/log/messages中。有許多Linux/Unix程式建立日誌。像HTTP和FTP這樣提供網路服務的伺服器也保持詳細的日誌。
1 Linux下日誌的使用
1.1 基本日誌命令的使用
Linux系統中記錄使用者登入登出情況的檔案是wtmp檔案,記錄當前登入使用者情況的檔案是utmp檔案,它們是Linux系統安全的重要檔案。這兩個檔案中所有的日誌都記錄了準確的時間。日誌中記錄的時間是非常重要的,因為很多攻擊行為分析都是與時間有極大關係的。
Utmp以及wtmp檔案都是二進位制檔案,不能通過tail,cat,vi或者重定向進行編輯。系統管理員需要通過命令獲取這兩個檔案中包含的資訊,其中utmp檔案中包含的資訊可以通過who、w、users和finger獲取, wtmp檔案中包含的資訊可以通過last和ac獲取。具體用法如下:
who命令從utmp檔案中查詢當前登入的使用者情況。預設情況下who的輸出包括登入使用使用者名稱、登入日期及登入使用IP。通過該命令,系統管理員可以發現當前系統存在哪些不法使用者,找到非法使用使用者後可以通過多種手段限制該使用者或者該登入IP繼續使用伺服器。下面是who命令執行顯示情況:
[[email protected] ~]# who root tty1 2011-03-21 16:59 root pts/0 2011-06-14 19:06 (10.35.117.80) root pts/2 2011-03-13 14:21 (:1.0) |
在指明wtmp情況下,通過who命令可以查詢到所有以前的記錄。下面是命令who /var/log/wtmp的執行結果,顯示了自從wtmp檔案建立、刪改以來的每一次登入。
[[email protected] ~]# who /var/log/wtmp ntbackup pts/0 2011-06-03 14:18 (10.35.8.242) root pts/3 2011-06-03 15:24 (10.35.117.80) root pts/3 2011-06-03 15:48 (10.35.117.80) ntbackup pts/0 2011-06-03 17:15 (10.35.8.242) ntbackup pts/0 2011-06-07 10:15 (10.35.117.73) ntbackup pts/3 2011-06-07 10:26 (10.35.117.73) ntbackup pts/0 2011-06-07 10:45 (10.35.117.73) ntbackup pts/4 2011-06-07 12:43 (10.35.117.73) ntbackup pts/5 2011-06-07 13:41 (10.35.117.73) ntbackup pts/0 2011-06-07 15:41 (10.35.117.73) root pts/0 2011-06-07 21:12 (10.32.171.146) ntbackup pts/0 2011-06-08 10:39 (10.35.117.73) ntbackup pts/0 2011-06-09 19:43 (10.35.117.73) ntbackup pts/0 2011-06-10 08:24 (10.35.117.73) ntbackup pts/3 2011-06-10 08:34 (10.35.117.73) ntbackup pts/4 2011-06-10 10:25 (10.35.117.73) ntbackup pts/0 2011-06-10 12:34 (10.35.117.73) ntbackup pts/0 2011-06-13 08:34 (10.35.117.73) root pts/0 2011-06-13 15:42 (flashieldsdell.nt.js.cmcc) root pts/0 2011-06-14 14:44 (10.35.117.80) root pts/0 2011-06-14 19:06 (10.35.117.80) |
1.2 日誌使用注意事項
在系統管理工作中,按時以及隨機的檢查系統日誌是非常重要的工作,可以幫助系統管理人員及時發現可疑狀況,需要檢查的系統日誌檔案駐澳包括一般資訊日誌、網路連線日誌、檔案傳輸日誌以及使用者登入日誌等。在檢查這些日誌時,要特別注意時間記載,分析日誌產生的時間是否合理。例如:
■ 非正常時間(凌晨)的使用者登入;
■ 關鍵日誌記錄損壞,尤其是記錄使用者登入登出資訊的wtmp檔案;
■ 非正常IP的使用者登入;
■ 使用者登入失敗,甚至一再嘗試登入並失敗的日誌記錄;
■ 非正常的超級使用者許可權切換su指令;
■ 非正常的控制程序啟動或重啟記錄。
由於Linux伺服器是基於檔案記錄的系統日誌,儘管重要的日誌檔案已經是二進位制的,但是由於Linux是開源的作業系統,所以有些情況下黑客在入侵後經常會打掃戰場。雖然在這種情況下,日誌資訊顯得不是那麼可靠,但是如果能夠綜合運用以上的系統命令,並結合其他系統相關命令,通過系統的、關聯的分析還是能夠找到蛛絲馬跡。
users命令在一行打印出當前登入的使用者資訊,每個使用者名稱代表對應一個登入會話。結合who命令以及程序統計日誌可以分析黑客偽造這兩個命令的情況。執行該命令將如下所示:
[[email protected] ~]# users root root root [[email protected] ~]# who root tty1 2011-03-21 16:59 root pts/0 2011-06-14 19:06 (10.35.117.80) root pts/2 2011-03-13 14:21 (:1.0) [[email protected] ~]# |
last命令與who/var/log/wtmp命令輸出結果相似。通過使用以及對比著兩個輸出,系統管理員可以對使用系統的使用者進行審計和考核,及時發現問題,解決問題。執行該命令,如下所示:
[[email protected] ~]# last root pts/0 10.35.117.80 Tue Jun 14 19:06 still logged in root pts/0 flashieldsdell.n Mon Jun 13 15:42 - 19:21 (03:38) ntbackup pts/0 10.35.117.73 Mon Jun 13 08:34 - 09:11 (00:37) …… ntbackup pts/0 10.35.8.242 Fri Jun 3 14:18 - 16:29 (02:11) |
如果使用上述命令顯示的資訊太多,比較難區分,可以通過grep命令,或者對last命令指明使用者來顯示其登入資訊即可。例如: 只顯示root的歷史登入資訊,則如下所示:
[[email protected] ~]# last root root pts/0 10.35.117.80 Tue Jun 14 19:06 still logged in root pts/0 10.35.117.80 Tue Jun 14 14:44 - 16:58 (02:14) root pts/0 flashieldsdell.n Mon Jun 13 15:42 - 19:21 (03:38) root pts/0 10.32.171.146 Tue Jun 7 21:12 - 23:24 (02:11) root pts/3 10.35.117.80 Fri Jun 3 15:48 - 18:04 (02:16) root pts/3 10.35.117.80 Fri Jun 3 15:24 - 15:24 (00:00) |
ac命令根據系統的wtmp檔案中的登入登出資訊生成使用者連線時間(單位小時)的報告,如下所示。
[[email protected] ~]# ac -d Jun 3 total 6.68 Jun 7 total 18.89 Jun 8 total 9.92 Jun 9 total 11.00 Jun 10 total 9.28 Jun 13 total 4.26 Today total 2.84 [[email protected] ~]# ac -p ntbackup 51.92 root 10.95 total 62.87 |
lastlog命令通過格式化輸出上次登入日誌/var/log/lastlog的內容,可以顯示使用者上次登入的時間。它可以顯示登入使用者名稱、登入使用方式(tty/pts)和上次登入時間。如果一個使用者從未登入過,則顯示 “**Neverlogged**”。。執行該命令如下所示:
[[email protected]]# lastlog Username Port From Latest root pts/1 10.0.2.129 二 5月 10 10:13:26 +0800 2005 opal pts/1 10.0.2.129 二 5月 10 10:13:26 +0800 2005 |
1.3 使用Syslog裝置
Syslog已被許多日誌函式採納,被用在許多保護措施中,任何程式都可以通過syslog 記錄事件。Syslog可以記錄系統事件,可以寫到一個檔案或裝置中,或給使用者傳送一個資訊。它能記錄本地事件或通過網路記錄另一個主機上的事件。
Syslog裝置核心包括一個守護程序(/etc/syslogd守護程序)和一個配置檔案(/etc/syslog.conf配置檔案)。通常情況下,多數syslog資訊被寫到/var/adm或/var/log目錄下的資訊檔案中 (messages.*)。一個典型的syslog記錄包括生成程式的名字和一個文字資訊。它還包括一個裝置和一個優先順序範圍。
系統管理員通過使用syslog.conf檔案,可以對生成的日誌的位置及其相關資訊進行靈活配置,滿足應用的需要。例如,如果想把所有郵件訊息記錄到一個檔案中,則做如下操作:
#Log all the mail messages in one place mail.* /var/log/maillog |
其他裝置也有自己的日誌。UUCP和news裝置能產生許多外部訊息。它把這些訊息存到自己的日誌(/var/log/spooler)中並把級別限為\"err\"或更高。例如:
# Save news errors of level crit and higher in a special file. uucp,news.crit /var/log/spooler |
當一個緊急訊息到來時,可能想讓所有的使用者都得到。也可能想讓自己的日誌接收並儲存。
#Everybody gets emergency messages, plus log them on anther machine *.emerg * *.emerg @linuxaid.com.cn |
使用者可以在一行中指明所有的裝置。下面的例子把info或更高級別的訊息送到/var/log/messages,除了mail以外。級別\"none\"禁止一個裝置:
#Log anything(except mail)of level info or higher #Don\’t log private authentication messages! *.info:mail.none;autHPriv.none /var/log/messages |
在有些情況下,可以把日誌送到印表機,這樣網路入侵者怎麼修改日誌都不能清除入侵的痕跡。因此,syslog裝置是一個攻擊者的顯著目標,破壞了它將會使使用者很難發現入侵以及入侵的痕跡,因此要特別注意保護其守護程序以及配置檔案。
相關推薦
Linux入侵日誌檢測研究專題
Linux日誌系統中記錄了每天發生的各種各樣的事件,包括使用者正常和非正常的登入情況,Linux的日誌系統對於系統安全來說非常重要,通過分析日誌可以瞭解錯誤發生的原因,對於排查系統錯誤有很大的幫助;更重要的是在系統受到黑客攻擊後,日誌中會留下攻擊者的痕跡,通過分析這些痕跡,
Linux入侵分析(二)分析SSH登錄日誌
入侵分析 雲安全 SSH日誌 SSH登錄情況分析 1.wtmp日誌 last last -x -F 2.查看在線用戶情況 (1)w 命令用於顯示已經登陸系統的用戶列表,並顯示用戶正在執行的指令。單獨執行w命令會顯示所有的用戶,您也可指定用戶名稱,僅顯示某位用戶的相關信息。 (2)who am i
Linux入侵檢測基礎
個人認為是一篇很不錯的Linux應急基礎的文章 最近遇到了很多伺服器被入侵的例子,為了方便日後入侵檢測以及排查取證,我查詢了一些linux伺服器入侵取證的相關資料,並在此總結分享,以便日後查詢。 一般伺服器被入侵的跡象,包括但不侷限於:由內向外發送大量資料包(DDOS肉
linux獲取日誌指定行數範圍內的內容
得到 http rep 不想 code 水流 clas -a 技術分享 假如我要獲取“淺淺歲月拂滿愛人袖”到“落入凡塵傷情著我”之間的內容。 1、首先得到他們所在的行號: -n選項顯示行號 但是有時候grep後顯示的是“匹配到二進制文件(標準輸入)”,說明搜索的字
Linux系統日誌
日誌系統日誌默認分類/var/log/messages 系統服務及日誌,包括服務的信息,報錯等等/var/log/secure 系統認證信息日誌/var/log/maillog 系統郵件服務信息/var/log/cron
rsync通過服務同步,Linux系統日誌,screen工具
日誌 哪些 存在 ins ssa 博客 後臺 etc 數據 筆記內容:l 10.32/10.33 rsync通過服務同步l 10.34 linux系統日誌l 10.35 screen工具筆記日期:2017.9.3 10.32/10.33 rsync通過服務同步rsync還可
Linux var 日誌
hcl centos use head smp com uuid rhgb bound /var/log/message :系統日誌信息 [root@xiesongyou log]# tail -1 messagesOct 25 09:18:46 xiesongyou d
Linux系統日誌級別
sys war 日誌級別 文本 打印 個數 優先級 deb 緩沖 /proc/sys/kernel/printk文件定義了4個數字, 查看日誌級別:cat /proc/sys/kernel/printk4 4 1 7①控制臺日誌級別:優先級高於該值的消息將被打印至控制臺。②
搜索引擎算法研究專題四:隨機沖浪模型介紹
互聯 con 技術 說明 lin 進入 title google 這就是 http://www.t086.com/class/seo 搜索引擎算法研究專題四:隨機沖浪模型介紹 2017年12月19日 ? 搜索技術 ? 共 2490字 ? 字號 小 中 大 ? 評論關閉
搜索引擎算法研究專題七:Hilltop算法
打分 nbsp link 字號 算法 原始的 鏈接 專題 wrapper 搜索引擎算法研究專題七:Hilltop算法 2017年12月19日 ? 搜索技術 ? 共 1256字 ? 字號 小 中 大 ? 評論關閉 HillTop也是搜索引擎結果排序的專利,是Go
搜索引擎算法研究專題三:聚集索引與非聚集索引介紹
運算符 sof 節點 信息 ont ros 頁碼 存儲 定位 搜索引擎算法研究專題三:聚集索引與非聚集索引介紹 聚集索引介紹 在聚集索引中,表中各行的物理順序與鍵值的邏輯(索引)順序相同。表只能包含一個聚集索引。 如果不是聚集索引,表中各行的物理順序與鍵值的邏
10.32/10.33 rsync通過服務同步 10.34 linux系統日誌 10.35 screen工具
rec var cti 服務 error ota director com directory [root@lizhipenglinux01 ~]# mkdir /tmp/rsync[root@lizhipenglinux01 ~]# chmod 777 /tmp
八周三次課(1月31日) 10.32/10.33 rsync通過服務同步 10.34 linux系統日誌 10.35 screen工具
腳本 提示 重定向 解鎖 esc 官方 單用戶 情況 packages 八周三次課(1月31日)10.32 rsync通過服務同步10.33 rsync通過服務同步10.34 linux系統日誌10.35 screen工具==========================
10.32/10.33 rsync通過服務同步 10.34 linux系統日誌 10.35 scre
process ext sync 配置文件 ces tle cal com type 八周三次課10.32/10.33 rsync通過服務同步10.34 linux系統日誌10.35 screen工具10.32/10.33 rsync通過服務同步編輯: rsync.conf
rsync通過服務同步/Linux系統日誌/screen工具
進程 incr allow 失敗 置配 配件 ins 二進制文件 auto rsync通過服務同步 這種方式可以理解為在遠程主機上建立一個rsync的服務器,在服務器上配置好rsync的各種應用,然後將本機作為rsync的一個客戶端連接的rsync服務器。下面就介紹一下如何
linux中日誌分析及系統故障的修復
執行 term ima 查詢 mbr sys 是否 mark .com 步驟:1查看及分析/var/log/messsages日誌文件2查看及分析用戶登錄日誌Last:命令用於查詢成功登錄到系統的用戶記錄Lastb命令用於查詢登錄失敗的用戶記錄MBR扇區故障1.備份MBR扇
Linux學習 - 日誌管理
產生 常見 查看 tex 內核 進制 mail 驗證 linu 1 確定啟動rsyslogd服務 ps aux | grep rsyslogd 查看服務是否啟動 chkconfig --list | grep rsyslog 查看服務是否自啟動
八周三課 rsync通過服務同步,linux系統日誌,screen工具
rsync 系統日誌 screen工具 rsync通過服務的方式同步通過服務的方式首先我們要開啟一個服務,它的架構是cs架構。客戶端和服務端。服務端開啟一個服務,rsync服務,並且要監聽一個端口,默認為873,並且這個端口是可以自定義的。開啟服務後,客戶端究竟可以通過873這個端口和服務端進行通
三十六、rsync通過服務同步、Linux系統日誌、screen工具
rsync通過服務同步 Linux系統日誌 screen工具 三十六、rsync通過服務同步、Linux系統日誌、screen工具一、rsync通過服務同步該方式可以理解為:在遠程主機上建立一個rsync的服務器,在服務器上配置好各種應用,然後本機將作為客戶端連接遠程的服務器。啟動服務前要先編輯配