AIDE入侵檢測

AIDE

當一個入侵者進入了你的系統并且種植了木馬,通常會想 辦法來隱蔽這個木馬(除了木馬自身的一些隱蔽特性外, 他會盡量給你檢查系統的過程設置障礙),通常入侵者會 修改一些文件,比如管理員通常用ps -aux來查看系統進 程,那么入侵者很可能用自己經過修改的ps程序來替換掉 你系統上的ps程序,以使用ps命令查不到正在運行的木馬 程序。如果入侵者發現管理員正在運行crontab作業,也 有可能替換掉crontab程序等等。所以由此可以看出對于 系統文件或是關鍵文件的檢查是很必要的。目前就系統完 整性檢查的工具用的比較多的有兩款:Tripwire和AIDE ,前者是一款商業軟件,后者是一款免費的但功能也很強 大的工具

AIDE

 

AIDE

  • AIDE(Advanced Intrusion Detection Environment)
  • (高級入侵檢測環境)是一個入侵檢測工具,主要用途是檢查文件的完整性,審計計算機上的那些文件被更改過了。
  • AIDE能夠構造一個指定文件的數據庫,它使用conf作為其配 置文件。AIDE數據庫能夠保存文件的各種屬性,包括:權限 (permission)、索引節點序號(inode number)、所屬用戶(user)、 所屬用戶組(group)、文件大小、最后修改時間(mtime)、創建時間 (ctime)、最后訪問時間(atime)、增加的大小以及連接數。AIDE還 能夠使用下列算法:sha1、md5、rmd160、tiger,以密文形式建 立每個文件的校驗碼或散列號.
  • 這個數據庫不應該保存那些經常變動的文件信息,例如:日志文件 、郵件、/proc文件系統、用戶起始目錄以及臨時目錄.

 

AIDE

  • 安裝

yum install aide

  • 修改配置文件

vim /etc/aide.conf (指定對哪些文件進行檢測)

/test/chameleon R

/bin/ps R+a

/usr/bin/crontab R+a

/etc?PERMS !/etc/mtab ??#“!”表示忽略這個文件的檢查

R=p+i+n+u+g+s+m+c+md5 權限+索引節點+鏈接數+用 戶+組+大小+最后一次修改時間+創建時間+md5校驗值 ?NORMAL = R+rmd60+sha256

 

安裝aide

[root@localhost ~]# yum install aide

 

安裝包信息

[root@localhost ~]# rpm -qi aide

Name ???????: aide

Version ????: 0.15.1

Release ????: 13.el7

AIDE (Advanced Intrusion Detection Environment) is a file integrity

checker and intrusion detection program.

一個文件完整性檢查和入侵檢測程序。

 

[root@localhost ~]# ?rpm -ql aide

/etc/aide.conf 配置文件

/etc/logrotate.d/aide

/usr/sbin/aide 程序

/var/log/aide 日志文件路徑

 

/var/lib/aide aide數據庫的路徑(會生成一個文件用于保存系統中文件的各種屬性)定期的運行aide程序,去比較當前文件的狀態,和存入數據庫中的狀態是否一致。

 

配置文件

在aide配置文件中定義要關注的文件或目錄是什么

 

# Example configuration file for AIDE.

 

@@define DBDIR?/var/lib/aide 數據庫路徑

@@define LOGDIR /var/log/aide 日志路徑

 

# The location of the database to be read.

database=file:@@{DBDIR}/aide.db.gz 用這個數據庫比較關注文件的狀態

 

# The location of the database to be written.

#database_out=sql:host:port:database:login_name:passwd:table

#database_out=file:aide.db.new

database_out=file:@@{DBDIR}/aide.db.new.gz 生成新的數據庫

有兩個數據庫,一個database_out?存的是現在要關心的具體每一個文件的狀態屬性,收集關心的文件的狀態屬性。在收集的時候就存放在這個數據庫中去。將來比較的時候要把文件名改成aide.db.gz真正比較的時候是使用aide.db.gz文件進行比較的。收集數據庫和比較數據庫是分開的

 

report_url=file:@@{LOGDIR}/aide.log 日志文件路徑

report_url=stdout

 

# These are the default rules.

#

#p: ?????permissions 權限

#i: ?????inode: iNode節點數

#n: ?????number of links 文件鏈接數

#u: ?????user 文件所有者

#g: ?????group 所屬組

#s: ?????size 大小

#b: ?????block count 數據塊

#m: ?????mtime

#a: ?????atime

#c: ?????ctime

#S: ?????check for growing size

#acl: ??????????Access Control Lists

#selinux ???????SELinux security context

#xattrs: ???????Extended file attributes

#md5: ???md5 checksum hash值

#sha1: ??sha1 checksum

#sha256: ???????sha256 checksum

#sha512: ???????sha512 checksum

#rmd160: rmd160 checksum

#tiger: ?tiger checksum

 

#haval: ?haval checksum (MHASH only)

#gost: ??gost checksum (MHASH only)

#crc32: ?crc32 checksum (MHASH only)

#whirlpool: ????whirlpool checksum (MHASH only)

 

FIPSR = p+i+n+u+g+s+m+c+acl+selinux+xattrs+sha256表示關心的各種屬性的集合

 

對于/boot文件夾

# Extended content + file type + access.

CONTENT_EX = sha256+ftype+p+u+g+n+acl+selinux+xattrs

 

/boot/ ??CONTENT_EX CONTENT_EX表示各種屬性的集合

/bin/ ???CONTENT_EX

/sbin/ ??CONTENT_EX

/lib/ ???CONTENT_EX

/lib64/ ?CONTENT_EX

/opt/ ???CONTENT

 

!/usr/src/ 排除,不關心的文件夾

 

/root/\..* PERMS 支持正則表達式

 

示例:

CUSTOM = p+u+g+s+sha256+m+acl

/app CUSTOM

!/app/f3

 

使用aide工具生成要監控文件的數據庫

[root@localhost ~]# aide –init

 

AIDE, version 0.15.1

 

### AIDE database at /var/lib/aide/aide.db.new.gz?initialized.

 

創建數據庫,根據 寫的配置文件,要監控的馬哥目錄下馬偕文件的屬性,把數據收集起來,生成數據庫文件

 

生成的數據庫文件,監控文件的各種屬性

[root@localhost ~]# ls /var/lib/aide/

aide.db.new.gz

 

比對文件的屬性,需要修改數據庫文件名,改成對比數據庫

[root@localhost /var/lib/aide]# mv ./aide.db.new.gz ./aide.db.gz

 

進行比對

[root@localhost /var/lib/aide]# aide –check

AIDE, version 0.15.1

### All files match AIDE database. Looks okay!

表示文件沒有被修改過

修改要對比的文件重新檢測

[root@localhost ~]# echo >> /app/f1

[root@localhost ~]# aide –check

AIDE 0.15.1 found differences between database and filesystem!!

Start timestamp: 2018-01-08 05:01:40

 

Summary:

Total number of files: 4 文件數量

Added files: 0

Removed files: 0

Changed files: 1 變化的文件

 

—————————————————

Changed files:

—————————————————

changed: /app/f1

—————————————————

Detailed information about changes:

—————————————————

 

 

File: /app/f1

Size ????: 595 ?????????????????????????????, 596 文件大小

Mtime ???: 2018-01-08 04:31:50 ?????????????, 2018-01-08 05:01:33 時間

SHA256 ??: 9HopzA3ByKba0gHU5rhIO5GCu5uzjYYF , gsv7p84621V4spFVvVOANE+Gcno/sd4U hash值

[root@localhost ~]#

所有者的改變

[root@localhost /app]# chown ding f1

[root@localhost /app]# vim f1

[root@localhost /app]# cd

[root@localhost ~]# aide –check

AIDE 0.15.1 found differences between database and filesystem!!

Start timestamp: 2018-01-08 05:03:30

 

Summary:

Total number of files: 4

Added files: 0

Removed files: 0

Changed files: 2

—————————————————

Changed files:

—————————————————

 

changed: /app

changed: /app/f1

 

—————————————————

Detailed information about changes:

—————————————————

Directory: /app

Mtime ???: 2018-01-08 04:31:52 ?????????????, 2018-01-08 05:03:21

File: /app/f1

Uid ?????: 0 ???????????????????????????????, 1000

Mtime ???: 2018-01-08 04:31:50 ?????????????, 2018-01-08 05:03:21

[root@localhost ~]#

 

當文件是自己修改的,需要把文件的新屬性重新寫入到aide的屬性數據庫文件中去,可以重新創建文件屬性的數據庫,也可以更新文件屬性數據庫

[root@localhost ~]# aide –update

AIDE 0.15.1 found differences between database and filesystem!!

Start timestamp: 2018-01-08 05:06:02

 

Summary:

Total number of files: 4

Added files: 0

Removed files: 0

Changed files: 2

—————————————————

Changed files:

—————————————————

changed: /app

changed: /app/f1

 

—————————————————

Detailed information about changes:

—————————————————

Directory: /app

Mtime ???: 2018-01-08 04:31:52 ?????????????, 2018-01-08 05:03:21

File: /app/f1

Uid ?????: 0 ???????????????????????????????, 1000

Mtime ???: 2018-01-08 04:31:50 ?????????????, 2018-01-08 05:03:21

[root@localhost ~]#

更新之后生成的文件還是一個屬性數據庫文件,而不是對比數據庫文件,要重新對比的時候還需要改名

[root@localhost ~]# ll /var/lib/aide

total 8

-rw——- 1 root root 342 Jan ?8 04:57 aide.db.gz

-rw——- 1 root root 350 Jan ?8 05:06 aide.db.new.gz

覆蓋之前的比對數據庫文件,重新進行文件屬性的檢查,應該是沒有文件發生變化

[root@localhost ~]# cd /var/lib/aide/

[root@localhost /var/lib/aide]# mv ./aide.db.new.gz ./aide.db.gz

mv: overwrite ‘./aide.db.gz’? y

[root@localhost /var/lib/aide]# aide –check

AIDE, version 0.15.1

### All files match AIDE database. Looks okay!

[root@localhost /var/lib/aide]#

AIDE

  • 初始化默認的AIDE的庫:

/usr/local/bin/aide –init

  • 生成檢查數據庫(建議初始數據庫存放到安全的地方)

cd /var/lib/aide ?mv aide.db.new.gz aide.db.gz

  • 檢測:

/usr/local/bin/aide –check

  • 更新數據庫 ?aide –update

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/90924

(1)
無言勝千言無言勝千言
上一篇 2018-01-08 08:34
下一篇 2018-01-08 13:31

相關推薦

  • CentOS系統啟動流程與grub

    本文主要講述CenOS系統啟動的整個流程。 對于CentOS系統來說,整個啟動過程可分為4個階段,分別是:加點自檢,加載MBR,加載內核并執行初始化信息,初始化用戶空間。下面就具體來描述每個過程都做了什么。 一.加點自檢(power on system test,POST) 任何一種操作系統的啟動,第一步必定是加點自檢,主要功能是裝載在硬件芯片CMOS之上的…

    Linux干貨 2016-11-29
  • CentOS 5,6 系統啟動流程詳解

        一、linux 組成介紹          1.linux 組成:             ? Lin…

    Linux干貨 2016-09-11
  • http://www.jianshu.com/p/f1d0739b141f

    Linux干貨 2017-07-30
  • 網絡班N22期第七周博客作業

    1、創建一個10G分區,并格式為ext4文件系統;    (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl;     [root@bogon ~]# fdisk /dev/sde   &nb…

    Linux干貨 2016-10-17
  • 學習伊始宣言

    學習后的狀態 以人事相宜為追求,優化職業資質 以勝任愉快為目標,保持職業體能 以創造績效為主導,開發職業意識 以適應市場為基點,修養職業道德 學習宣言 如果不踏出第一步就永遠也不可能到達目的地,讓我們從此刻出發

    Linux干貨 2016-11-28
  • 第一周 N28

    作業一

    2017-12-03
欧美性久久久久