Kọ ẹkọ Iṣatunwo Eto Linux pẹlu Ọpa Auditd lori CentOS/RHEL


Ṣiṣayẹwo eto nirọrun tọka si onínọmbà jinlẹ ti eto ìfọkànsí kan pato: ayewo jẹ ti idanwo ti awọn oriṣiriṣi awọn ẹya eyiti o ni eto yẹn, pẹlu igbelewọn to ṣe pataki (ati idanwo ti o ba nilo) ni awọn agbegbe oriṣiriṣi ti iwulo.

Ọkan ninu awọn eto isomọ pataki lori RHEL/CentOS eto iṣatunwo Linux ti a mọ julọ bi auditd. O ṣe awọn ọna lati tọpinpin alaye ti o ni ibatan aabo lori eto kan: o lo awọn ofin ti a tunto tẹlẹ lati gba oye pupọ ti alaye nipa awọn iṣẹlẹ ti n ṣẹlẹ lori eto, ati ṣe igbasilẹ wọn ni faili log, nitorinaa ṣiṣẹda idanwo idanwo kan.

O le ṣe igbasilẹ alaye gẹgẹbi ọjọ ati akoko, iru, ati abajade iṣẹlẹ kan; awọn olumulo ti o fa iṣẹlẹ naa, eyikeyi awọn iyipada ti a ṣe si awọn faili/apoti isura data; awọn lilo ti awọn ilana idanimọ eto, gẹgẹbi PAM, LDAP, SSH, ati awọn omiiran.

Auditd tun forukọsilẹ eyikeyi awọn ayipada ti a ṣe si awọn faili iṣeto iṣatunwo tabi eyikeyi awọn igbiyanju lati wọle si awọn faili log ayewo, ati eyikeyi awọn igbiyanju lati gbe wọle tabi gbejade alaye sinu tabi lati inu eto pẹlu ọpọlọpọ alaye ti o ni ibatan aabo miiran.

  1. Ko nilo eyikeyi awọn eto itagbangba tabi awọn ilana lati ṣiṣẹ lori eto ṣiṣe igbẹkẹle ara ẹni.
  2. O jẹ atunto giga nitorina o fun ọ laaye lati wo eyikeyi iṣẹ (s) eto ti o fẹ.
  3. O ṣe iranlọwọ ninu wiwa tabi itupalẹ awọn ibajẹ agbara ti eto kan.
  4. O lagbara lati ṣiṣẹ bi eto wiwa ominira.
  5. O le ṣiṣẹ pẹlu Awọn Ẹrọ Iwari Intrusion lati jẹki wiwa ifọle.
  6. O jẹ ohun elo pataki fun ṣiṣayẹwo awọn iwadii oniwadi oniwadi.

Eto ayewo ni awọn paati akọkọ meji, eyun:

  • awọn ohun elo aaye aaye olumulo ati awọn ohun elo elo/irinṣẹ, ati
  • ṣiṣe ipe eto ekuro-ẹgbẹ - eyi gba awọn ipe eto lati awọn ohun elo aaye aaye olumulo ati kọja wọn nipasẹ awọn iru awọn asẹ mẹta, eyun: olumulo, iṣẹ-ṣiṣe, ijade, tabi yọkuro.

Apakan ti o ṣe pataki julọ ni daemon ti aye-olumulo (auditd) eyiti o ṣajọ alaye ti o da lori awọn ofin ti a tunto tẹlẹ, lati inu ekuro ati gbogbo awọn titẹ sii ni faili akọọlẹ kan: iwe aiyipada ni /var/log/audit/audit.log.

Ni afikun, audispd (audit dispatcher daemon) jẹ multiplexor iṣẹlẹ ti o ṣepọ pẹlu auditd ati firanṣẹ awọn iṣẹlẹ si awọn eto miiran ti o fẹ ṣe ṣiṣe iṣẹlẹ iṣẹlẹ gidi.

Nọmba awọn irinṣẹ aaye aaye olumulo wa fun ṣiṣakoso ati gbigba alaye lati eto iṣayẹwo:

  • auditctl - ohun elo kan fun ṣiṣakoso eto iṣayẹwo ekuro naa.
  • ausearch - ohun elo kan fun wiwa awọn faili akọọlẹ ayewo fun awọn iṣẹlẹ kan pato.
  • aureport - ohun elo kan fun ṣiṣẹda awọn iroyin ti awọn iṣẹlẹ ti o gbasilẹ.

Bii o ṣe le Fi sori ẹrọ ati Tunto Ọpa Iṣatunwo ni RHEL/CentOS/Fedora

Ni akọkọ rii daju lati ṣayẹwo pe a ti fi ohun elo iṣayẹwo sori ẹrọ rẹ nipa lilo iwulo ọra bi atẹle:

# rpm -qa | grep audit

Ti o ko ba ni awọn idii ti o wa loke, ṣiṣe aṣẹ yii bi olumulo olumulo lati fi wọn sii.

# yum install audit

Nigbamii, ṣayẹwo ti iṣayẹwo ba ṣiṣẹ ati ṣiṣe, ṣe agbekalẹ awọn aṣẹ systemctl ni isalẹ lori ebute naa.

--------------- On CentOS/RHEL 7 --------------- 
# systemctl is-enabled auditd
# systemctl status auditd
# systemctl start auditd   [Start]
# systemctl enable auditd  [Enable]

--------------- On CentOS/RHEL 6 --------------- 
# service auditd status
# service auditd start     [Start]
# chkconfig auditd on      [Enable]

Bayi a yoo rii bi a ṣe le tunto auditd nipa lilo faili iṣeto akọkọ /etc/audit/auditd.conf. Awọn ipele nibi gba ọ laaye lati ṣakoso bi iṣẹ ṣe n ṣiṣẹ, gẹgẹ bi asọye ipo ti faili log, nọmba to pọ julọ ti awọn faili log, ọna kika log, bawo ni a ṣe le ba awọn disiki kikun, yiyi iwe wọle ati ọpọlọpọ awọn aṣayan diẹ sii.

# vi /etc/audit/auditd.conf

Lati iṣẹjade ti o wa ni isalẹ, awọn ipilẹ jẹ alaye ti ara ẹni.

Oye Awọn ofin Iṣatunṣe

Gẹgẹbi a ti mẹnuba tẹlẹ lori, auditd nlo awọn ofin lati ṣajọ alaye ni pato lati ekuro. Awọn ofin wọnyi jẹ ipilẹ awọn aṣayan auditctl (wo oju-iwe eniyan) ti o le ṣe atunto awọn ofin tẹlẹ ninu faili /etc/audit/rules.d/audit.rules (Lori CentOS 6, lo faili /etc/audit/audit.rules) , ki wọn kojọpọ ni ibẹrẹ.

Awọn iru awọn ofin iṣayẹwo mẹta ni o le ṣalaye:

  • Awọn ofin iṣakoso - iwọnyi jẹ ki iyipada ti ihuwasi eto iṣayẹwo ati diẹ ninu awọn atunto rẹ.
  • Awọn ofin eto Faili (tun tọka si bi awọn iṣọ faili) - jẹki iṣatunwo ti iraye si faili kan tabi itọsọna kan.
  • Awọn ofin ipe eto - yọọda gedu awọn ipe eto ti eto eyikeyi ṣe.

Bayi ṣii faili iṣeto akọkọ fun ṣiṣatunkọ:

# vi /etc/audit/rules.d/audit.rules

Akiyesi pe apakan akọkọ ti faili yii gbọdọ ni awọn ofin iṣakoso. Lẹhinna ṣafikun awọn ofin iṣayẹwo rẹ (awọn iṣọ faili ati awọn ofin ipe eto) ni apakan aarin, ati nikẹhin apakan ti o kẹhin ni awọn eto ailopin ti o tun jẹ awọn ofin iṣakoso.

-D		#removes all previous rules
-b  3074	#define buffer size
-f 4		#panic on failure 
-r 120		#create at most 120 audit messages per second

O le ṣalaye awọn iṣọ faili ni lilo sintasi yii:

-w /path/to/file/or/directory -p permissions -k key_name

Nibo ni aṣayan:

  • w - ni a lo lati ṣafihan faili kan tabi itọsọna lati ṣetọju.
  • p - awọn igbanilaaye lati wa ni ibuwolu wọle, r - fun iwọle ka, w - fun iraye kikọ, x - fun ṣiṣe iraye ati a - fun iyipada faili tabi aami oludari.
  • -k - ngbanilaaye lati ṣeto okun aṣayan fun idamo iru ofin (tabi ṣeto awọn ofin) ti o ṣẹda titẹsi akọọlẹ kan pato.

Awọn ofin wọnyi gba ayewo laaye lati wo awọn iṣẹlẹ ṣiṣe awọn ayipada si awọn faili eto pataki wọnyi.

-w /etc/passwd -p wa -k passwd_changes
-w /etc/group -p wa -k group_changes
-w /etc/shadow -p wa -k shadow_changes
-w /etc/sudoers -p wa -k sudoers_changes

O le ṣeto ofin ipe eto nipa lilo fọọmu ni isalẹ:

-a action,filter -S system_call -F field=value -k key_name

ibo:

  • iṣe - ni awọn iye ti o ṣeeṣe meji: nigbagbogbo tabi rara.
  • àlẹmọ - ṣe afihan àlẹmọ ti o baamu ofin ekuro (iṣẹ-ṣiṣe, ijade, olumulo ati ifesi) ti lo si iṣẹlẹ naa.
  • ipe eto - orukọ ipe eto.
  • aaye
  • - ṣalaye awọn aṣayan afikun gẹgẹbi faaji, PID, GID ati be be lo lati yipada ofin.

Eyi ni diẹ ninu awọn ofin ti o le ṣalaye.

-a always,exit -F arch=b64 -S adjtimex -S settimeofday -k time_change
-a always,exit -S sethostname -S setdomainname -k system_locale

Lẹhinna fi awọn eto ailopin kun ni ipari faili naa, fun apẹẹrẹ:

-e 1	#enable auditing
-e 2	#make the configuration immutable -- reboot is required to change audit rules

Bii o ṣe le Ṣeto Awọn ofin Iṣayẹwo Lilo IwUlO auditctl

Ni omiiran, firanṣẹ awọn aṣayan lati ṣayẹwo lakoko ti o nṣiṣẹ, ni lilo auditctl bi ninu awọn apẹẹrẹ atẹle. Awọn ofin wọnyi le fagile awọn ofin ninu faili iṣeto.

Lati ṣe atokọ gbogbo awọn ofin iṣatunṣe ti o rù lọwọlọwọ, kọja Flag -l :

# auditctl -l

Nigbamii, gbiyanju lati ṣafikun awọn ofin diẹ:

# auditctl -w /etc/passwd -p wa -k passwd_changes
# auditctl -w /etc/group -p wa -k group_changes
# auditctl -w /etc/sudoers -p wa -k sudoers_changes
# auditctl -l

Gbogbo awọn ifiranṣẹ iṣatunwo ni a gbasilẹ ni /var/log/audit/audit.log faili nipasẹ aiyipada. Lati ni oye ọna kika titẹsi wọle, a yoo ṣajọ ofin kan ati ṣayẹwo titẹsi log ti o ṣẹda lẹhin iṣẹlẹ ti o baamu ofin naa.

A ro pe a ni itọsọna ifipamọ aṣiri, ofin iṣayẹwo yii yoo buwolu wọle eyikeyi awọn igbiyanju lati wọle si tabi yipada itọsọna yii:

# auditctl -w /backups/secret_files/ -p rwa -k secret_backup

Nisisiyi, ni lilo akọọlẹ eto miiran, gbiyanju lati gbe sinu itọsọna loke ati ṣiṣe aṣẹ ls:

$ cd /backups/secret_files/
$ ls

Wiwọle log yoo dabi bẹ.

Iṣẹlẹ ti o wa loke jẹ awọn oriṣi mẹta ti awọn igbasilẹ ayewo. Ni igba akọkọ ti o jẹ iru = SYSCALL:

type=SYSCALL msg=audit(1505784331.849:444): arch=c000003e syscall=257 success=yes exit=3 a0=ffffffffffffff9c a1=8ad5c0 a2=90800 a3=0 items=1 ppid=2191 pid=2680 auid=1000 uid=1000 gid=1000 euid=1000 suid=1000 fsuid=1000 egid=1000 sgid=1000 fsgid=1000 tty=pts1 ses=3 comm="ls" exe="/usr/bin/ls" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key="secret_backup"

Ekeji ni iru = CWD.

type=CWD msg=audit(1505784331.849:444):  cwd="/backups/secret_files"

Ati ikẹhin ni iru = PATH:

type=PATH msg=audit(1505784331.849:444): item=0 name="." inode=261635 dev=08:01 mode=040755 ouid=0 ogid=0 rdev=00:00 obj=unconfined_u:object_r:default_t:s0 objtype=NORMAL

O le wa atokọ pipe ti gbogbo awọn aaye iṣẹlẹ (bii msg, arch, ses etc..) Ati awọn itumọ wọn ninu Itọkasi Audit System.

Iyẹn ni gbogbo fun bayi. Ninu nkan ti nbọ, a yoo wo bi a ṣe le lo ausearch si ibeere awọn faili log audit: a yoo ṣalaye bi a ṣe le wa alaye kan pato lati awọn iwe igbasilẹ. Ti o ba ni awọn ibeere eyikeyi, jọwọ de ọdọ wa nipasẹ apakan asọye ni isalẹ.