Πριν την έναρξη του μαθήματος
Το AIDE σημαίνει "Προηγμένο περιβάλλον ανίχνευσης εισβολής" και είναι ένα από τα πιο δημοφιλή συστήματα για την παρακολούθηση αλλαγών σε λειτουργικά συστήματα που βασίζονται σε Linux. Το AIDE χρησιμοποιείται για την προστασία από κακόβουλο λογισμικό, ιούς και τον εντοπισμό μη εξουσιοδοτημένων δραστηριοτήτων. Για να επαληθεύσει την ακεραιότητα του αρχείου και να ανιχνεύσει εισβολές, το AIDE δημιουργεί μια βάση δεδομένων με πληροφορίες αρχείων και συγκρίνει την τρέχουσα κατάσταση του συστήματος με αυτήν τη βάση δεδομένων. Το AIDE βοηθά στη μείωση του χρόνου διερεύνησης περιστατικών εστιάζοντας σε αρχεία που έχουν τροποποιηθεί.
Χαρακτηριστικά AIDE:
- Υποστηρίζει διάφορα χαρακτηριστικά αρχείων, όπως: τύπος αρχείου, inode, uid, gid, δικαιώματα, αριθμός συνδέσμων, mtime, ctime και atime.
- Υποστήριξη για συμπίεση Gzip, SELinux, XAttrs, Posix ACL και χαρακτηριστικά συστήματος αρχείων.
- Υποστηρίζει διάφορους αλγόριθμους όπως md5, sha1, sha256, sha512, rmd160, crc32 κ.λπ.
- Αποστολή ειδοποιήσεων μέσω email.
Σε αυτό το άρθρο, θα δούμε πώς να εγκαταστήσετε και να χρησιμοποιήσετε το AIDE για ανίχνευση εισβολής στο CentOS 8.
Προαπαιτούμενα
- Διακομιστής που τρέχει CentOS 8, με τουλάχιστον 2 GB μνήμης RAM.
- πρόσβαση root
Ξεκινώντας
Συνιστάται να ενημερώσετε πρώτα το σύστημα. Για να το κάνετε αυτό, εκτελέστε την ακόλουθη εντολή.
dnf update -y
Μετά την ενημέρωση, επανεκκινήστε το σύστημά σας για να τεθούν σε ισχύ οι αλλαγές.
Εγκατάσταση AIDE
Το AIDE είναι διαθέσιμο στο προεπιλεγμένο αποθετήριο CentOS 8. Μπορείτε να το εγκαταστήσετε εύκολα εκτελώντας την ακόλουθη εντολή:
dnf install aide -y
Μόλις ολοκληρωθεί η εγκατάσταση, μπορείτε να προβάλετε την έκδοση AIDE χρησιμοποιώντας την ακόλουθη εντολή:
aide --version
Θα πρέπει να δείτε τα εξής:
Aide 0.16
Compiled with the following options:
WITH_MMAP
WITH_PCRE
WITH_POSIX_ACL
WITH_SELINUX
WITH_XATTR
WITH_E2FSATTRS
WITH_LSTAT64
WITH_READDIR64
WITH_ZLIB
WITH_CURL
WITH_GCRYPT
WITH_AUDIT
CONFIG_FILE = "/etc/aide.conf"
Διαθέσιμες Επιλογές aide
μπορεί να προβληθεί ως εξής:
aide --help
Δημιουργία και προετοιμασία της βάσης δεδομένων
Το πρώτο πράγμα που πρέπει να κάνετε μετά την εγκατάσταση του AIDE είναι να το αρχικοποιήσετε. Η εκκίνηση συνίσταται στη δημιουργία μιας βάσης δεδομένων (στιγμιότυπο) όλων των αρχείων και καταλόγων στον διακομιστή.
Για να αρχικοποιήσετε τη βάση δεδομένων, εκτελέστε την ακόλουθη εντολή:
aide --init
Θα πρέπει να δείτε τα εξής:
Start timestamp: 2020-01-16 03:03:19 -0500 (AIDE 0.16)
AIDE initialized database at /var/lib/aide/aide.db.new.gz
Number of entries: 49472
---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------
/var/lib/aide/aide.db.new.gz
MD5 : 4N79P7hPE2uxJJ1o7na9sA==
SHA1 : Ic2XBj50MKiPd1UGrtcUk4LGs0M=
RMD160 : rHMMy5WwHVb9TGUc+TBHFHsPCrk=
TIGER : vkb2bvB1r7DbT3n6d1qYVfDzrNCzTkI0
SHA256 : tW3KmjcDef2gNXYqnOPT1l0gDFd0tBh9
xWXT2iaEHgQ=
SHA512 : VPMRQnz72+JRgNQhL16dxQC9c+GiYB8g
uZp6uZNqTvTdxw+w/IYDSanTtt/fEkiI
nDw6lgDNI/ls2esijukliQ==
End timestamp: 2020-01-16 03:03:44 -0500 (run time: 0m 25s)
Η παραπάνω εντολή θα δημιουργήσει μια νέα βάση δεδομένων aide.db.new.gz
στον κατάλογο /var/lib/aide
. Μπορεί να φανεί χρησιμοποιώντας την ακόλουθη εντολή:
ls -l /var/lib/aide
Το αποτέλεσμα:
total 2800
-rw------- 1 root root 2863809 Jan 16 03:03 aide.db.new.gz
Το AIDE δεν θα χρησιμοποιήσει αυτό το νέο αρχείο βάσης δεδομένων μέχρι να μετονομαστεί σε aide.db.gz
. Αυτό μπορεί να γίνει ως εξής:
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
Συνιστάται να ενημερώνετε περιοδικά αυτήν τη βάση δεδομένων για να διασφαλίζετε ότι οι αλλαγές παρακολουθούνται σωστά.
Μπορείτε να αλλάξετε τη θέση της βάσης δεδομένων αλλάζοντας την παράμετρο DBDIR
στο αρχείο /etc/aide.conf
.
Εκτέλεση ελέγχου
Το AIDE είναι τώρα έτοιμο να χρησιμοποιήσει τη νέα βάση δεδομένων. Εκτελέστε τον πρώτο έλεγχο AIDE χωρίς να κάνετε αλλαγές:
aide --check
Αυτή η εντολή θα χρειαστεί λίγο χρόνο για να ολοκληρωθεί ανάλογα με το μέγεθος του συστήματος αρχείων σας και την ποσότητα της μνήμης RAM στον διακομιστή σας. Μόλις ολοκληρωθεί η σάρωση, θα πρέπει να δείτε τα εξής:
Start timestamp: 2020-01-16 03:05:07 -0500 (AIDE 0.16)
AIDE found NO differences between database and filesystem. Looks okay!!
Η παραπάνω έξοδος λέει ότι όλα τα αρχεία και οι κατάλογοι ταιριάζουν με τη βάση δεδομένων AIDE.
Δοκιμή AIDE
Από προεπιλογή, το AIDE δεν παρακολουθεί τον προεπιλεγμένο ριζικό κατάλογο του Apache /var/www/html.
Ας διαμορφώσουμε το AIDE για προβολή. Για να γίνει αυτό πρέπει να αλλάξετε το αρχείο /etc/aide.conf
.
nano /etc/aide.conf
Προσθήκη παραπάνω γραμμής "/root/CONTENT_EX"
τα ακόλουθα:
/var/www/html/ CONTENT_EX
Στη συνέχεια, δημιουργήστε ένα αρχείο aide.txt
στον κατάλογο /var/www/html/
χρησιμοποιώντας την ακόλουθη εντολή:
echo "Test AIDE" > /var/www/html/aide.txt
Τώρα εκτελέστε τον έλεγχο AIDE και βεβαιωθείτε ότι το αρχείο που δημιουργήθηκε έχει εντοπιστεί.
aide --check
Θα πρέπει να δείτε τα εξής:
Start timestamp: 2020-01-16 03:09:40 -0500 (AIDE 0.16)
AIDE found differences between database and filesystem!!
Summary:
Total number of entries: 49475
Added entries: 1
Removed entries: 0
Changed entries: 0
---------------------------------------------------
Added entries:
---------------------------------------------------
f++++++++++++++++: /var/www/html/aide.txt
Βλέπουμε ότι το αρχείο που δημιουργήθηκε ανιχνεύεται aide.txt
.
Αφού αναλύσετε τις αλλαγές που εντοπίστηκαν, ενημερώστε τη βάση δεδομένων AIDE.
aide --update
Μετά την ενημέρωση θα δείτε τα εξής:
Start timestamp: 2020-01-16 03:10:41 -0500 (AIDE 0.16)
AIDE found differences between database and filesystem!!
New AIDE database written to /var/lib/aide/aide.db.new.gz
Summary:
Total number of entries: 49475
Added entries: 1
Removed entries: 0
Changed entries: 0
---------------------------------------------------
Added entries:
---------------------------------------------------
f++++++++++++++++: /var/www/html/aide.txt
Η παραπάνω εντολή θα δημιουργήσει μια νέα βάση δεδομένων aide.db.new.gz
στον κατάλογο
/var/lib/aide/
Μπορείτε να το δείτε με την ακόλουθη εντολή:
ls -l /var/lib/aide/
Το αποτέλεσμα:
total 5600
-rw------- 1 root root 2864012 Jan 16 03:09 aide.db.gz
-rw------- 1 root root 2864100 Jan 16 03:11 aide.db.new.gz
Τώρα μετονομάστε ξανά τη νέα βάση δεδομένων, έτσι ώστε το AIDE να χρησιμοποιεί τη νέα βάση δεδομένων για να παρακολουθεί περαιτέρω αλλαγές. Μπορείτε να το μετονομάσετε ως εξής:
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
Εκτελέστε ξανά τον έλεγχο για να βεβαιωθείτε ότι το AIDE χρησιμοποιεί τη νέα βάση δεδομένων:
aide --check
Θα πρέπει να δείτε τα εξής:
Start timestamp: 2020-01-16 03:12:29 -0500 (AIDE 0.16)
AIDE found NO differences between database and filesystem. Looks okay!!
Αυτοματοποιούμε τον έλεγχο
Είναι καλή ιδέα να κάνετε έναν έλεγχο AIDE κάθε μέρα και να ταχυδρομείτε την αναφορά. Αυτή η διαδικασία μπορεί να αυτοματοποιηθεί χρησιμοποιώντας το cron.
nano /etc/crontab
Για να εκτελείτε τον έλεγχο AIDE κάθε μέρα στις 10:15, προσθέστε την ακόλουθη γραμμή στο τέλος του αρχείου:
15 10 * * * root /usr/sbin/aide --check
Ο AIDE θα σας ειδοποιήσει τώρα μέσω ταχυδρομείου. Μπορείτε να ελέγξετε την αλληλογραφία σας με την ακόλουθη εντολή:
tail -f /var/mail/root
Το αρχείο καταγραφής AIDE μπορεί να προβληθεί χρησιμοποιώντας την ακόλουθη εντολή:
tail -f /var/log/aide/aide.log
Συμπέρασμα
Σε αυτό το άρθρο, μάθατε πώς να χρησιμοποιείτε το AIDE για τον εντοπισμό αλλαγών αρχείων και τον εντοπισμό μη εξουσιοδοτημένης πρόσβασης διακομιστή. Για πρόσθετες ρυθμίσεις, μπορείτε να επεξεργαστείτε το αρχείο διαμόρφωσης /etc/aide.conf. Για λόγους ασφαλείας, συνιστάται η αποθήκευση της βάσης δεδομένων και του αρχείου διαμόρφωσης σε μέσα μόνο για ανάγνωση. Περισσότερες πληροφορίες μπορείτε να βρείτε στην τεκμηρίωση
Πηγή: www.habr.com