ലിനക്സിൽ AIDE ഉപയോഗിച്ച് ഫയലിന്റെയും ഡയറക്ടറിയുടെയും സമഗ്രത എങ്ങനെ പരിശോധിക്കാം


CentOS 7 കാഠിന്യപ്പെടുത്തുന്നതിനും സുരക്ഷിതമാക്കുന്നതിനുമുള്ള ഞങ്ങളുടെ മെഗാ ഗൈഡിൽ, \സംവിധാനത്തെ ആന്തരികമായി സംരക്ഷിക്കുക എന്ന വിഭാഗത്തിന് കീഴിൽ, വൈറസുകൾ, റൂട്ട്കിറ്റുകൾ, ക്ഷുദ്രവെയർ, അനധികൃത പ്രവർത്തനങ്ങൾ എന്നിവയ്uക്കെതിരായ ആന്തരിക സിസ്റ്റം പരിരക്ഷണത്തിനായി ഞങ്ങൾ ലിസ്uറ്റ് ചെയ്uത ഉപയോഗപ്രദമായ സുരക്ഷാ ഉപകരണങ്ങളിലൊന്നാണ് AIDE.

AIDE (Advanced Intrusion Detection Environment) എന്നത് ലിനക്സ് പോലെയുള്ള Unix പോലുള്ള ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിൽ ഫയലിന്റെയും ഡയറക്ടറിയുടെയും സമഗ്രത പരിശോധിക്കുന്നതിന് മുൻകൂട്ടി നിശ്ചയിച്ചിട്ടുള്ള നിയമങ്ങൾ ഉപയോഗിക്കുന്ന ചെറുതും എന്നാൽ ശക്തവും സ്വതന്ത്രവുമായ ഓപ്പൺ സോഴ്uസ് നുഴഞ്ഞുകയറ്റ കണ്ടെത്തൽ ഉപകരണമാണ്. ലളിതമാക്കിയ ക്ലയന്റ്/സെർവർ മോണിറ്ററിംഗ് കോൺഫിഗറേഷനുകൾക്കായുള്ള ഒരു സ്വതന്ത്ര സ്റ്റാറ്റിക് ബൈനറിയാണിത്.

ഇത് സവിശേഷതകളാൽ സമ്പന്നമാണ്: പ്ലെയിൻ ടെക്സ്റ്റ് കോൺഫിഗറേഷൻ ഫയലുകളും ഡാറ്റാബേസും ഉപയോഗിക്കുന്നത് എളുപ്പമാക്കുന്നു; md5, sha1, rmd160, tiger പോലുള്ള നിരവധി സന്ദേശ ഡൈജസ്റ്റ് അൽഗോരിതങ്ങളെ പിന്തുണയ്ക്കുന്നു; പൊതുവായ ഫയൽ ആട്രിബ്യൂട്ടുകളെ പിന്തുണയ്ക്കുന്നു; സ്കാൻ ചെയ്യേണ്ട ഫയലുകളും ഡയറക്uടറികളും തിരഞ്ഞെടുത്ത് ഉൾപ്പെടുത്തുന്നതിനോ ഒഴിവാക്കുന്നതിനോ ശക്തമായ റെഗുലർ എക്uസ്uപ്രഷനുകളെ പിന്തുണയ്uക്കുന്നു.

കൂടാതെ, Gzip കംപ്രഷൻ, Posix ACL, SELinux, XAttrs, എക്സ്റ്റെൻഡഡ് ഫയൽ സിസ്റ്റം ആട്രിബ്യൂട്ടുകൾ എന്നിവയ്uക്കായുള്ള അസാധാരണമായ പിന്തുണയോടെ ഇത് കംപൈൽ ചെയ്യാവുന്നതാണ്.

കോൺഫിഗറേഷൻ ഫയലിൽ(കളിൽ) നിർവചിച്ചിരിക്കുന്ന റെഗുലർ എക്uസ്uപ്രഷൻ നിയമങ്ങളിൽ നിന്ന് ഒരു ഡാറ്റാബേസ് (ഫയൽ സിസ്റ്റത്തിന്റെ തിരഞ്ഞെടുത്ത ഭാഗങ്ങളുടെ ഒരു സ്uനാപ്പ്ഷോട്ട്) സൃഷ്uടിച്ചാണ് എയ്uഡ് പ്രവർത്തിക്കുന്നത്. ഈ ഡാറ്റാബേസ് ആരംഭിച്ചുകഴിഞ്ഞാൽ, അതിനെതിരായ സിസ്റ്റം ഫയലുകളുടെ സമഗ്രത നിങ്ങൾക്ക് പരിശോധിക്കാൻ കഴിയും. ലിനക്സിൽ സഹായിയെ എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാമെന്നും ഉപയോഗിക്കാമെന്നും ഈ ഗൈഡ് കാണിക്കും.

ലിനക്സിൽ AIDE എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം

മുഖ്യധാരാ ലിനക്സ് വിതരണങ്ങളുടെ ഔദ്യോഗിക ശേഖരണങ്ങളിൽ Aide പാക്കേജ് ചെയ്uതിരിക്കുന്നു, അത് ഇൻസ്റ്റോൾ ചെയ്യുന്നതിനായി ഒരു പാക്കേജ് മാനേജർ ഉപയോഗിച്ച് നിങ്ങളുടെ വിതരണത്തിനുള്ള കമാൻഡ് പ്രവർത്തിപ്പിക്കുക.

# apt install aide 	   [On Debian/Ubuntu]
# yum install aide	   [On RHEL/CentOS] 	
# dnf install aide	   [On Fedora 22+]
# zypper install aide	   [On openSUSE]
# emerge aide 	           [On Gentoo]

ഇത് ഇൻസ്റ്റാൾ ചെയ്ത ശേഷം, പ്രധാന കോൺഫിഗറേഷൻ ഫയൽ /etc/aide.conf ആണ്. ഇൻസ്റ്റാൾ ചെയ്ത പതിപ്പ് കാണുന്നതിനും സമയ പാരാമീറ്ററുകൾ കംപൈൽ ചെയ്യുന്നതിനും, നിങ്ങളുടെ ടെർമിനലിൽ താഴെയുള്ള കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

# aide -v
Aide 0.14

Compiled with the following options:

WITH_MMAP
WITH_POSIX_ACL
WITH_SELINUX
WITH_PRELINK
WITH_XATTR
WITH_LSTAT64
WITH_READDIR64
WITH_ZLIB
WITH_GCRYPT
WITH_AUDIT
CONFIG_FILE = "/etc/aide.conf"

നിങ്ങളുടെ പ്രിയപ്പെട്ട എഡിറ്റർ ഉപയോഗിച്ച് നിങ്ങൾക്ക് കോൺഫിഗറേഷൻ തുറക്കാൻ കഴിയും.

# vi /etc/aide.conf

ഡാറ്റാബേസ് ലൊക്കേഷൻ, റിപ്പോർട്ട് ലൊക്കേഷൻ, ഡിഫോൾട്ട് നിയമങ്ങൾ, ഡാറ്റാബേസിൽ ഉൾപ്പെടുത്തേണ്ട ഡയറക്uടറികൾ/ഫയലുകൾ എന്നിവ നിർവചിക്കുന്ന നിർദ്ദേശങ്ങൾ ഇതിന് ഉണ്ട്.

മുകളിലുള്ള സ്ഥിരസ്ഥിതി നിയമങ്ങൾ ഉപയോഗിച്ച്, ഉദാഹരണത്തിന് aide.conf ഫയലിൽ നിങ്ങൾക്ക് പുതിയ ഇഷ്uടാനുസൃത നിയമങ്ങൾ നിർവചിക്കാം.

PERMS = p+u+g+acl+selinux+xattrs

PERMS റൂൾ ഉപയോഗിക്കുന്നത് ആക്uസസ്സ് നിയന്ത്രണത്തിന് മാത്രമാണ്, ഫയൽ/ഡയറക്uടറി അനുമതികൾ, ഉപയോക്താവ്, ഗ്രൂപ്പ്, ആക്uസസ് കൺട്രോൾ പെർമിഷനുകൾ, SELinux സന്ദർഭം, ഫയൽ ആട്രിബ്യൂട്ടുകൾ എന്നിവയെ അടിസ്ഥാനമാക്കി ഫയലുകളിലോ ഡയറക്uടറികളിലോ എന്തെങ്കിലും മാറ്റങ്ങൾ അത് കണ്ടെത്തും.

ഇത് ഫയൽ ഉള്ളടക്കവും ഫയൽ തരവും മാത്രമേ പരിശോധിക്കൂ.

CONTENT = sha256+ftype

ഇത് മുമ്പത്തെ നിയമത്തിന്റെ വിപുലീകൃത പതിപ്പാണ്, ഇത് വിപുലീകൃത ഉള്ളടക്കം, ഫയൽ തരം, ആക്സസ് എന്നിവ പരിശോധിക്കുന്നു.

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

താഴെയുള്ള DATAONLY റൂൾ എല്ലാ ഫയലുകളിലും/ഡയറക്uടറിയിലും ഉള്ള ഡാറ്റയിൽ എന്തെങ്കിലും മാറ്റങ്ങൾ കണ്ടെത്തുന്നതിന് സഹായിക്കും.

DATAONLY =  p+n+u+g+s+acl+selinux+xattrs+sha256

ഫയലുകളും ഡയറക്ടറികളും കാണുന്നതിനുള്ള നിയമങ്ങൾ നിർവചിക്കുന്നു

നിങ്ങൾ നിയമങ്ങൾ നിർവചിച്ചുകഴിഞ്ഞാൽ, കാണേണ്ട ഫയലും ഡയറക്ടറികളും നിങ്ങൾക്ക് വ്യക്തമാക്കാം. മുകളിലുള്ള PERMS റൂൾ പരിഗണിക്കുമ്പോൾ, ഈ നിർവചനം റൂട്ട് ഡയറക്ടറിയിലെ എല്ലാ ഫയലുകൾക്കുമുള്ള അനുമതികൾ പരിശോധിക്കും.

/root/\..*  PERMS

ഇത് /root ഡയറക്uടറിയിലെ എല്ലാ ഫയലുകളും എന്തെങ്കിലും മാറ്റങ്ങൾക്കായി പരിശോധിക്കും.

/root/   CONTENT_EX

/ etc

/etc/   DATAONLY 

ലിനക്സിൽ ഫയലിന്റെയും ഡയറക്ടറിയുടെയും സമഗ്രത പരിശോധിക്കാൻ AIDE ഉപയോഗിക്കുന്നു

--init ഫ്ലാഗ് ഉപയോഗിച്ച് നടത്തുന്ന പരിശോധനകൾക്കെതിരെ ഒരു ഡാറ്റാബേസ് നിർമ്മിച്ച് ആരംഭിക്കുക. നിങ്ങളുടെ സിസ്റ്റം ഒരു നെറ്റ്uവർക്കിലേക്ക് കണക്uറ്റ് ചെയ്യുന്നതിനുമുമ്പ് ഇത് ചെയ്യുമെന്ന് പ്രതീക്ഷിക്കുന്നു.

നിങ്ങളുടെ കോൺഫിഗറേഷൻ ഫയലിൽ നിങ്ങൾ തിരഞ്ഞെടുത്ത എല്ലാ ഫയലുകളും അടങ്ങുന്ന ഒരു ഡാറ്റാബേസ് താഴെയുള്ള കമാൻഡ് സൃഷ്ടിക്കും.

# aide --init

ഈ കമാൻഡ് ഉപയോഗിച്ച് തുടരുന്നതിന് മുമ്പ് ഡാറ്റാബേസിന്റെ പേര് /var/lib/aide/aide.db.gz എന്ന് മാറ്റുക.

# mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

ഒരു റീഡ്-ഒൺലി മീഡിയയിലോ മറ്റൊരു മെഷീനിലോ ഡാറ്റാബേസ് സുരക്ഷിത സ്ഥാനത്തേക്ക് നീക്കാൻ ശുപാർശ ചെയ്യുന്നു, എന്നാൽ അവിടെ നിന്ന് അത് വായിക്കാൻ കോൺഫിഗറേഷൻ ഫയൽ അപ്uഡേറ്റ് ചെയ്യുന്നുണ്ടെന്ന് ഉറപ്പാക്കുക.

ഡാറ്റാബേസ് സൃഷ്ടിച്ച ശേഷം, നിങ്ങൾക്ക് ഇപ്പോൾ --check ഫ്ലാഗ് ഉപയോഗിച്ച് ഫയലുകളുടെയും ഡയറക്ടറികളുടെയും സമഗ്രത പരിശോധിക്കാം.

# aide --check

ഇത് ഡാറ്റാബേസിലെ സ്നാപ്പ്ഷോട്ട് വായിക്കുകയും നിങ്ങൾ സിസ്റ്റം ഡിസ്കിൽ കണ്ടെത്തിയ ഫയലുകൾ/ഡയറക്ടറികൾ എന്നിവയുമായി താരതമ്യം ചെയ്യുകയും ചെയ്യും. നിങ്ങൾ പ്രതീക്ഷിക്കാത്ത സ്ഥലങ്ങളിൽ മാറ്റങ്ങൾ കണ്ടെത്തുകയാണെങ്കിൽ, അത് നിങ്ങൾക്ക് അവലോകനം ചെയ്യാൻ കഴിയുന്ന ഒരു റിപ്പോർട്ട് സൃഷ്ടിക്കുന്നു.

ഫയൽ സിസ്റ്റത്തിൽ മാറ്റങ്ങളൊന്നും വരുത്താത്തതിനാൽ, മുകളിൽ പറഞ്ഞതിന് സമാനമായ ഒരു ഔട്ട്പുട്ട് മാത്രമേ നിങ്ങൾക്ക് ലഭിക്കൂ. ഇപ്പോൾ കോൺഫിഗറേഷൻ ഫയലിൽ നിർവചിച്ചിരിക്കുന്ന മേഖലകളിൽ ഫയൽ സിസ്റ്റത്തിൽ ചില ഫയലുകൾ സൃഷ്ടിക്കാൻ ശ്രമിക്കുക.

# vi /etc/script.sh
# touch all.txt

തുടർന്ന് ഒരിക്കൽ കൂടി ഒരു ചെക്ക് റൺ ചെയ്യുക, അത് മുകളിൽ ചേർത്ത ഫയലുകൾ റിപ്പോർട്ട് ചെയ്യും. ഈ കമാൻഡിന്റെ ഔട്ട്പുട്ട് നിങ്ങൾ പരിശോധിക്കുന്നതിനായി ക്രമീകരിച്ച ഫയൽ സിസ്റ്റത്തിന്റെ ഭാഗങ്ങളെ ആശ്രയിച്ചിരിക്കുന്നു, അത് ദീർഘമായ ഓവർടൈം ആകാം.

# aide --check

നിങ്ങൾ പതിവായി എയ്uഡ് പരിശോധനകൾ നടത്തേണ്ടതുണ്ട്, ഇതിനകം തിരഞ്ഞെടുത്ത ഫയലുകളിൽ എന്തെങ്കിലും മാറ്റങ്ങൾ വരുത്തുകയോ കോൺഫിഗറേഷൻ ഫയലിൽ പുതിയ ഫയൽ നിർവചനങ്ങൾ കൂട്ടിച്ചേർക്കുകയോ ചെയ്താൽ, എല്ലായ്uപ്പോഴും --update ഓപ്ഷൻ ഉപയോഗിച്ച് ഡാറ്റാബേസ് അപ്uഡേറ്റ് ചെയ്യുക:

# aide --update

ഒരു ഡാറ്റാബേസ് അപ്uഡേറ്റ് പ്രവർത്തിപ്പിച്ചതിന് ശേഷം, ഭാവിയിലെ സ്കാനുകൾക്കായി പുതിയ ഡാറ്റാബേസ് ഉപയോഗിക്കുന്നതിന്, അതിനെ എല്ലായ്uപ്പോഴും /var/lib/aide/aide.db.gz എന്ന് പുനർനാമകരണം ചെയ്യുക:

# mv /var/lib/aide/aide.db.new.gz  /var/lib/aide/aide.db.gz

ഇപ്പോഴത്തേക്ക് ഇത്രമാത്രം! എന്നാൽ ഈ പ്രധാന പോയിന്റുകൾ ശ്രദ്ധിക്കുക:

  • എയ്uഡി ഉൾപ്പെടെയുള്ള മിക്ക നുഴഞ്ഞുകയറ്റം കണ്ടെത്തൽ സംവിധാനങ്ങളുടെയും ഒരു സവിശേഷത, ഒരു സിസ്റ്റത്തിലെ മിക്ക സുരക്ഷാ ലൂപ്പ് ഹോളുകൾക്കും അവ പരിഹാരങ്ങൾ നൽകില്ല എന്നതാണ്. എന്നിരുന്നാലും, സിസ്റ്റം ഫയലുകൾ/ഡയറക്uടറികളിലെ മാറ്റങ്ങൾ പരിശോധിക്കാൻ സിസ്റ്റം അഡ്മിനിസ്ട്രേറ്റർമാരെ സഹായിച്ചുകൊണ്ട് നുഴഞ്ഞുകയറ്റ പ്രതികരണ പ്രക്രിയ ലഘൂകരിക്കാൻ അവ സഹായിക്കുന്നു. അതിനാൽ നിങ്ങൾ എപ്പോഴും ജാഗരൂകരായിരിക്കുകയും നിങ്ങളുടെ നിലവിലെ സുരക്ഷാ നടപടികൾ അപ്ഡേറ്റ് ചെയ്യുന്നത് തുടരുകയും വേണം.
  • പുതുതായി സൃഷ്uടിച്ച ഡാറ്റാബേസ്, കോൺഫിഗറേഷൻ ഫയൽ, AIDE ബൈനറി എന്നിവ റീഡ്-ഒൺലി മീഡിയ (നിങ്ങൾ ഉറവിടത്തിൽ നിന്ന് ഇൻസ്uറ്റാൾ ചെയ്uതാൽ സാധ്യമാണ്) പോലുള്ള ഒരു സുരക്ഷിത ലൊക്കേഷനിൽ സൂക്ഷിക്കാൻ ഇത് വളരെ ശുപാർശ ചെയ്യുന്നു.
  • അധിക സുരക്ഷയ്ക്കായി, കോൺഫിഗറേഷൻ കൂടാതെ/അല്ലെങ്കിൽ ഡാറ്റാബേസിൽ ഒപ്പിടുന്നത് പരിഗണിക്കുക.

കൂടുതൽ വിവരങ്ങൾക്കും കോൺഫിഗറേഷനുകൾക്കും, അതിന്റെ മാൻ പേജ് കാണുക അല്ലെങ്കിൽ AIDE ഹോംപേജ് പരിശോധിക്കുക: http://aide.sourceforge.net/