偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

系統(tǒng) Linux
運維服務器比較頭疼的一個問題是系統(tǒng)被黑,淪為肉雞或者礦機。除了加強安全基線配置,加強網(wǎng)絡和端口加固,系統(tǒng)和應用bug修復,上IDS/IPS(入侵檢測/防御系統(tǒng))之外,另一個方面就是系統(tǒng)監(jiān)控,一個完善準確的安全監(jiān)控可以在主機層面及時發(fā)現(xiàn)入侵活動、予以告警以備及時處理。

 運維服務器比較頭疼的一個問題是系統(tǒng)被黑,淪為肉雞或者礦機。除了加強安全基線配置,加強網(wǎng)絡和端口加固,系統(tǒng)和應用bug修復,上IDS/IPS(入侵檢測/防御系統(tǒng))之外,另一個方面就是系統(tǒng)監(jiān)控,一個完善準確的安全監(jiān)控可以在主機層面及時發(fā)現(xiàn)入侵活動、予以告警以備及時處理。本文蟲蟲就給大家來說說系統(tǒng)文件變化的監(jiān)控。

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

概述

在*nix體系一切皆文件,系統(tǒng)文件的變化往往反應著系統(tǒng)的變化,比如系統(tǒng)應用的更新、系統(tǒng)的操作活動(可以用安全審計來確定)或系統(tǒng)被黑。根據(jù)蟲蟲多年來維護經(jīng)驗系統(tǒng)被黑最明顯之一的特征就是系統(tǒng)文件變化,包括不限于:

/bin (替換基本工具為惡意木馬等,比如netstat,ps等)

/sbin (替換基本工具為惡意木馬等,比如sshd,lsof,ss等)

/usr/bin(替換基本工具為惡意木馬等,比如sshd,lsof,ss等)

/usr/sbin (替換基本工具為惡意木馬等,比如sshd,lsof,ss等)

/etc/init.d (修改開機啟動任務,添加惡意腳本開機啟動)

/etc/

/etc/cront.d (修改計劃任務,添加惡意腳本定時執(zhí)行)

/etc/crontab (修改計劃任務,添加惡意腳本定時執(zhí)行)

~/.ssh/目錄 (注入公鑰)

/etc/sysconfig (修改iptables配置等,開放網(wǎng)絡限制)

/etc/ssh/ (修改ssh配置)

web目錄 (修改網(wǎng)站)

等目錄下文件被替換或者添加非法文件。

加強對這些目錄和文件的監(jiān)控,就可以在一定程度上防止系統(tǒng)被黑,以及系統(tǒng)被黑,而無法發(fā)現(xiàn)的問題。

find –mtime目錄文件變化

監(jiān)控系統(tǒng)變化的最簡單,最常用的方法是使用find命令,其-mtime表示最近有過變動的文件。

比如要查看一天內(nèi)/usr/bin目錄下變化過的文件可以使用

 

  1. find /usr/bin -m -1 

要看詳細這些文件詳細信息,可以用xargs或者-exec把這些變化文件在用ls -al顯示出來,比如:

 

  1. find /var -type f -mtime -1 -exec ls -al {} \; 

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

 

RPM監(jiān)控系統(tǒng)文件的變化

RPM是Linux一種應用包,利用RPM安裝應用大家可能都熟悉。實際上RPM還是一個系統(tǒng)包數(shù)據(jù)庫,并提供包驗證功能,可以用來發(fā)現(xiàn)原始安裝包變化情況。RPM應用包文件驗證的基本命令是rpm -V。比如查詢驗證nginx包可以用rpm -V nginx:

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

該命令結(jié)果的前幾位屬性驗證,.表示屬性正常,其他標志表示屬性有變化,如果文件被刪除,則會提示"missing …"。具體屬性的含義如下:

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

結(jié)果表示: nginx包中default.conf文件的大小,md5哈希值,文件修改時間都改變了。

注意:上圖中中間位還有個字母c標志,該標表示文件的屬性,c表示文件為配置文件。其他標志有: d %doc 說明文檔;g %ghost 不應包含的文檔,有可能有問題;l %license 授權文件;r %readme readme說明文件。

-V選項增加-a就可以列出當前系統(tǒng)中安裝后,所有變化過的包文件,可以以此來檢查文件包的完整性,安全性等。我們對結(jié)果使用grep進一步檢查就得到具體的文件,比如要獲取bin目錄系統(tǒng)文件變化過的文件:

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

Inotify監(jiān)控文件變化

另一個比較常用的方法是用Inotify來監(jiān)控文件變化。Inotify是Linux內(nèi)核自帶(2.6.13)的系統(tǒng)事件監(jiān)控機制。Inotify優(yōu)點之一是基于內(nèi)核事件通知機制,無需定時主動探測文件狀態(tài),簡單可靠。另一個好處是有文件變化時通知時候,可以記錄當時的用戶和事件進程?;贗notify的工具有inotify-tools、sersync和lsyncd等,我們此處簡單介紹inotify-tools使用。

inotify-tools安裝

安裝比較簡單,以centos為例,先添加epel源,然后

 

  1. yum install inotify-tools 

inotify-tools使用

inotify-tools安裝后會附帶兩個工具即inotifywait和inotifywatch。inotifywait工具用來添加文件或目錄監(jiān)控,支持對文件的一些操作事件,比如open、close、delete等,運行后系統(tǒng)處于阻塞狀態(tài)。inotifywait的參數(shù)和對應事件列表如下圖所示:

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

做為安全方面考慮,重點關注文件文件變化和創(chuàng)建時間,即modify和create事件。

inotifywatch工具用來查看所監(jiān)視的文件發(fā)生事件的數(shù)據(jù)統(tǒng)計。

下面舉一個實例來說明,我們用inotifywait來監(jiān)控/var目錄下文件的變化:

 

  1. inotifywait -mre modify /var 

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

 

為了便于閱讀,我們添加一些日志和時間格式參數(shù):

 

  1. inotifywait -mrq --timefmt '%d%m%y %H:%M' --format '%T %w%f' -e modify -e create /var 

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

 

要統(tǒng)計系統(tǒng)內(nèi)30秒內(nèi)的變化數(shù)據(jù),可以用inotifywatch:

 

  1. inotifywatch -v -t 30 -r /proc 

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

 

inotifywatch 的使用此處不在詳細介紹。

自建編寫腳本進行文件Md5監(jiān)控

還有一個方法就是對特定目錄(比如Web目錄)開始時候?qū)ζ溆嬎鉳d5 哈希,以后定時計算md5然后比對,發(fā)現(xiàn)md5 哈希不一致了,說明文件已經(jīng)被篡改了。對此,蟲蟲之前基于這個原理用Perl寫了一個腳本MD5Check(github: /bollwarm/MD5Check),可以直接用來使用或者做參考。

MD5Check安裝很簡單,有Perl的環(huán)境下(依賴Digest::MD5)直接下直接clone文件就可以使用,或者使用cpanm安裝

cpanm MD5Check

使用:

使用方法,執(zhí)行 perl bin/init.pl web目錄(自定義),初始化MD5值。

然后使用perl bin/check.pl前一部保存的md5哈希的文件檢查。

詳細實例,見bin目錄下的 init.pl 和 check.pl

cpanm安裝后,可以直接用perl單行程序檢查使用

初始化:

 

  1. perl -MMD5Check -e 'init("/web")' >file 

檢查:

 

  1. perl -MMD5Check -e 'print md5check(file)' 

實例:我們舉一個wordexpree網(wǎng)站為例子:

 

  1. perl init.pl /web >webmd5.20161027 

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

 

檢查:

 

  1. perl check.pl webmd5.20161027   

 

監(jiān)控Linux文件變化,防止系統(tǒng)被黑

 

 

總結(jié)

本文我們講述了通過監(jiān)控linux文件變化方式防止系統(tǒng)被黑。講述了常見的幾種監(jiān)控linux系統(tǒng)下文件監(jiān)控的方法:find、rpm,Inodify以及自編寫腳本的方法。當然這些方法需要配合監(jiān)控系統(tǒng)(比如zabbix)才能實現(xiàn)及時全面的系統(tǒng),可以將其做為系統(tǒng)安全監(jiān)控部分(其他部分包括進程監(jiān)控、防火墻變化監(jiān)控、流量變化)來配置和告警。關于這些部分,以后有機會再給大家介紹。

責任編輯:華軒 來源: 今日頭條
相關推薦

2019-12-31 21:26:54

系統(tǒng)安全網(wǎng)絡攻擊Linux

2024-04-26 13:02:29

Linuxinotifywai

2023-06-26 08:22:00

2020-12-02 13:19:47

Shell監(jiān)控文件Linux

2009-04-28 00:44:03

2009-06-05 11:11:11

2014-03-10 09:43:31

2021-03-11 10:21:55

特斯拉黑客網(wǎng)絡攻擊

2010-05-26 12:57:59

linux 系統(tǒng)監(jiān)控

2014-12-22 09:51:06

Linuxlogwatch

2011-03-22 13:50:53

2023-03-24 10:28:27

2010-05-10 15:14:13

inotifyLinux文件系統(tǒng)

2010-05-07 15:40:18

ibmdwLinux

2016-02-22 17:31:04

2011-01-05 15:39:44

2010-03-10 10:55:14

2017-04-20 14:55:36

LinuxPyinotifyPython

2011-01-05 16:19:34

2014-04-11 11:13:15

CollectlLinux系統(tǒng)監(jiān)控
點贊
收藏

51CTO技術棧公眾號