Ένα Security Information and Event Management, ένα σύστημα SIEM, είναι ένα ολοκληρωμένο εργαλείο που
λειτουργεί ως το νευραλγικό κέντρο των επιχειρήσεων ασφαλείας ενός οργανισμού.
Συλλέγει logs και δεδομένα σχετικά με την ασφάλεια από ένα ευρύ φάσμα πηγών σε όλη την
ψηφιακή υποδομή, συμπεριλαμβανομένων των endpoints, servers, συσκευών δικτύου, υπηρεσιών cloud,
και διάφορων εργαλείων ασφαλείας όπως firewalls ή συστήματα antivirus.
Το κύριο πλεονέκτημα ενός SIEM είναι η ικανότητά του να κεντρικοποιεί αυτά τα δεδομένα, το οποίο είναι κρίσιμο
για αποτελεσματική παρακολούθηση και ανάλυση. Αυτό επιτρέπει στις ομάδες ασφαλείας να έχουν μια ενιαία
εικόνα όλων των συμβάντων ασφαλείας και των logs επιτρέποντας ταχύτερο εντοπισμό,
διερεύνηση και απόκριση σε πιθανές απειλές.
Μία από τις πρωταρχικές δυνατότητες ενός SIEM είναι η κεντρικοποιημένη διαχείριση των logs (centralized log management).
Συγκεντρώνει logs από διαφορετικές πηγές όπως Syslog, Windows event logs,
και cloud-based υπηρεσίες, απλοποιώντας τη διαδικασία διαχείρισης μεγάλων όγκων
δεδομένων. Αυτή η κεντρικοποιημένη προσέγγιση όχι μόνο
απλοποιεί την αποθήκευση δεδομένων αλλά ενισχύει επίσης την αποδοτικότητα
των λειτουργιών ασφαλείας καθώς οι αναλυτές μπορούν γρήγορα να έχουν πρόσβαση και να συσχετίζουν δεδομένα από
διάφορα συστήματα. Τα συστήματα SIEM προσφέρουν επίσης σημαντική ορατότητα
απειλών. Συσχετίζοντας (correlating) γεγονότα από πολλαπλές
πηγές μπορούν να εντοπίσουν ύποπτα μοτίβα που υποδεικνύουν πιθανές
απειλές όπως lateral movement (πλευρική μετακίνηση) εντός ενός δικτύου
ή απόπειρες κλιμάκωσης προνομίων (privilege escalation) εντός ενός host.
Για παράδειγμα, αν ένας χρήστης με περιορισμένα δικαιώματα πρόσβασης
ξαφνικά προσπαθήσει να προσπελάσει ευαίσθητα δεδομένα, ένα SIEM θα το επισήμαινε αυτό ως πιθανό
περιστατικό ασφαλείας. Επιπλέον, τα συστήματα SIEM παίζουν κρίσιμο
ρόλο στο να βοηθούν τους οργανισμούς να διατηρούν τη συμμόρφωση ασφαλείας (security compliance).
Μπορούν να ρυθμιστούν ώστε να πληρούν διάφορα κανονιστικά πρότυπα
όπως PCI DSS, NIST, ή ISO 27001. Διασφαλίζοντας ότι οι πρακτικές ασφαλείας
ευθυγραμμίζονται με τις απαιτήσεις του κλάδου για αυτή τη συμμόρφωση.
Αυτές οι απαιτήσεις συχνά επιβάλλουν λεπτομερή καταγραφή (logging)
και παρακολούθηση σε πραγματικό χρόνο, τα οποία είναι βασικές λειτουργίες των συστημάτων SIEM.
Για παράδειγμα, μια εταιρεία λιανικής μπορεί να χρησιμοποιήσει ένα σύστημα SIEM για να παρακολουθεί τα συστήματα
επεξεργασίας πληρωμών της. Ένα σύστημα θα μπορούσε να ρυθμιστεί να στέλνει ειδοποίηση
εάν γίνουν απόπειρες σύνδεσης εκτός των ωρών εργασίας
από μια ξένη διεύθυνση IP, σηματοδοτώντας μια πιθανή παραβίαση ασφαλείας.
Αυτή η αυτοματοποιημένη ειδοποίηση επιτρέπει στην ομάδα ασφαλείας να διερευνήσει την
κατάσταση και να αναλάβει δράση πριν συμβεί μια επίθεση πλήρους κλίμακας.
Τα SIEM ξεκινούν τη λειτουργία τους συλλέγοντας logs από μια ποικιλία πηγών
δεδομένων εντός της υποδομής ενός οργανισμού.
Αυτές οι πηγές περιλαμβάνουν endpoints, servers, switches,
routers, firewalls, και συσκευές ασφαλείας,
όλα εκ των οποίων παράγουν logs σε διαφορετικά formats.
Για να βγάλουν νόημα από αυτά τα ανόμοια δεδομένα, τα SIEM χρησιμοποιούν μια διαδικασία
κανονικοποίησης logs (log normalization). Αυτή η διαδικασία περιλαμβάνει τη μετατροπή logs από διάφορα formats
σε μια ενιαία δομή, επιτρέποντάς τους να αναλυθούν και
να συσχετιστούν αποδοτικά. Η τεχνική διαδικασία της συλλογής logs
συνήθως περιλαμβάνει collectors ή agents όπως το NXLog,
Winlogbeat, ή Beats από το ELK Stack, Fluentd, ή άλλους
που τραβούν δεδομένα από αυτούς τους πόρους. Αυτοί οι agents είναι υπεύθυνοι για τη συγκέντρωση
των logs και την αποστολή τους στο SIEM για επεξεργασία.
Μόλις συλλεχθούν, τα logs κανονικοποιούνται χρησιμοποιώντας προκαθορισμένους κανόνες parsing και
αντιστοιχίσεις πεδίων (field mappings). Αυτό το βήμα μετατρέπει τα δεδομένα σε ένα συνεπές
σχήμα όπως το Common Event Format (CEF) ή JSON.
Αυτά τα formats τυποποιούν τη δομή των logs, καθιστώντας τα
ευκολότερα στην ανάλυση και την αναζήτηση σε όλο το σύστημα,
ανεξάρτητα από την αρχική πηγή. Μια άλλη κρίσιμη πτυχή της κανονικοποίησης
είναι η ενοποίηση των χρονοσημάνσεων (timestamp unification). Καθώς τα logs παράγονται
μπορεί να παράγονται σε διαφορετικές ζώνες ώρας ή να αντιμετωπίζουν αποκλίσεις ρολογιού (clock drifts),
είναι απαραίτητο να ευθυγραμμιστούν τα timestamps για να διασφαλιστεί ότι τα γεγονότα
συσχετίζονται με ακρίβεια σε όλα τα συστήματα.
Χωρίς την ενοποίηση timestamps, logs από διαφορετικές πηγές μπορεί να φαίνονται εκτός
σειράς, καθιστώντας δύσκολη την παρακολούθηση της ροής των
γεγονότων και τον εντοπισμό περιστατικών ασφαλείας. Για παράδειγμα, φανταστείτε ένα σύστημα SIEM
που λαμβάνει logs από ένα Cisco ASA
firewall και ένα σύνολο από Linux servers. Κάθε μία από αυτές τις πηγές μπορεί να παράγει logs σε
διαφορετικά formats. Το σύστημα SIEM θα τυποποιήσει
αυτά τα logs ώστε μια ενιαία αναζήτηση να μπορεί να ψάξει για απόπειρες
σύνδεσης SSH και στα δύο συστήματα ανεξάρτητα από το αν τα logs προήλθαν
από ένα firewall ή τους servers. Αυτή η κανονικοποίηση επιτρέπει στους αναλυτές να
συσχετίζουν γρήγορα και αποδοτικά τα γεγονότα οδηγώντας σε ταχύτερο
εντοπισμό πιθανών απειλών ασφαλείας.
Συνοπτικά, τα SIEM βασίζονται στη συλλογή και κανονικοποίηση logs
για να μετατρέψουν ποικίλα δεδομένα σε ένα δομημένο format
που μπορεί να αναλυθεί και να συσχετιστεί αποτελεσματικά. Αυτή η διαδικασία διασφαλίζει ότι
οι ομάδες ασφαλείας μπορούν γρήγορα να εντοπίσουν και να ανταποκριθούν σε περιστατικά
ανεξάρτητα από τα συστήματα που παράγουν τα δεδομένα.
Οι τεχνικές δυνατότητες των SIEM τους επιτρέπουν να εκτελούν
τον τύπο της εξελιγμένης ανάλυσης. Οι μηχανές συσχέτισης (Correlation engines)
είναι στην καρδιά αυτής της λειτουργικότητας. Αυτές οι μηχανές ταιριάζουν μοτίβα χρησιμοποιώντας
προκαθορισμένους κανόνες ή καθιερώνοντας βασικές γραμμές συμπεριφοράς (behavioral
baselines). Κάνοντας αυτό, το SIEM μπορεί να ανιχνεύσει ανωμαλίες
που αποκλίνουν από την κανονική συμπεριφορά ενός συστήματος
ή ενός χρήστη, όπως έναν ασυνήθιστα υψηλό αριθμό αποτυχημένων συνδέσεων σε σύντομο
χρονικό διάστημα. Κατώφλια (Thresholds) και ευρετικοί κανόνες (heuristics) στη συνέχεια
εφαρμόζονται για να καθοριστεί πότε αυτά τα μοτίβα πρέπει να ενεργοποιήσουν μια ειδοποίηση,
βοηθώντας στη μείωση του θορύβου και εστιάζοντας την προσοχή σε γεγονότα που είναι πιο
πιθανό να υποδεικνύουν ένα περιστατικό ασφαλείας. Τα SIEM προσφέρουν επίσης την ευελιξία
να προσαρμόζονται οι κανόνες ειδοποίησης για συγκεκριμένες ανάγκες.
Για παράδειγμα, μπορείτε να δημιουργήσετε κανόνες βασισμένους σε γνωστές υπογραφές επιθέσεων
όπως συγκεκριμένα μοτίβα κίνησης δικτύου που σχετίζονται με malware
ή σε ανωμαλίες συμπεριφοράς όπως ασυνήθιστοι χρόνοι σύνδεσης
ή δραστηριότητα εκτός των κανονικών ωρών εργασίας.
Επιπλέον, πολλές πλατφόρμες SIEM υποστηρίζουν custom rule scripting
σε γλώσσες όπως Lucene, SPL, Search Processing Language η οποία είναι στο
Splunk, Sigma ή
Kibana Query Language (KQL) και άλλες, επιτρέποντας στις ομάδες ασφαλείας να προσαρμόσουν τις
δυνατότητες ανίχνευσής τους στο συγκεκριμένο περιβάλλον τους.
Ένα παράδειγμα του πώς η συσχέτιση (correlation) SIEM λειτουργεί στην πράξη θα μπορούσε να είναι όταν ένας χρήστης συνδέεται
από δύο γεωγραφικά απομακρυσμένες τοποθεσίες όπως η Νέα Υόρκη
και η Σιγκαπούρη μέσα σε λίγα λεπτά.
Αυτό το γεγονός μπορεί να επισημανθεί από το σύστημα SIEM χρησιμοποιώντας έναν προσαρμοσμένο κανόνα ταχύτητας γεωεντοπισμού (geolocation
velocity rule). Αυτός ο κανόνας συγκρίνει τα μοτίβα σύνδεσης του χρήστη
με τις γνωστές γεωγραφικές τοποθεσίες και επισημαίνει μια ταχεία αλλαγή ως
πιθανή ένδειξη παραβίασης διαπιστευτηρίων ή κατάληψης λογαριασμού (account takeover).
Συσχετίζοντας αυτά τα γεγονότα, το σύστημα SIEM μπορεί να παρέχει στους αναλυτές
ασφαλείας αξιοποιήσιμες ειδοποιήσεις που απαιτούν περαιτέρω διερεύνηση.
Συνοπτικά, τα SIEM χρησιμοποιούν συσχέτιση δεδομένων για να συνδέσουν γεγονότα και να αποκαλύψουν πολύπλοκα
μοτίβα επιθέσεων. Συνδυάζοντας προκαθορισμένους κανόνες, ανάλυση
συμπεριφοράς και προσαρμόσιμες συνθήκες ειδοποίησης, τα συστήματα SIEM μπορούν να βοηθήσουν
τους οργανισμούς να ανιχνεύουν και να ανταποκρίνονται σε περιστατικά ασφαλείας πιο
αποτελεσματικά και αποδοτικά.
Τα SIEM dashboards είναι απαραίτητα εργαλεία για τους αναλυτές ασφαλείας παρέχοντας
οπτικοποίηση σε πραγματικό χρόνο των δραστηριοτήτων δικτύου και συστήματος.
Αυτά τα dashboards βοηθούν τις ομάδες ασφαλείας να παρακολουθούν βασικούς δείκτες
απόδοσης όπως αποτυχημένες απόπειρες σύνδεσης,
αρνήσεις firewall και ανιχνεύσεις ιών. Εμφανίζοντας αυτές τις πληροφορίες σε ένα εύκολα
κατανοητό format, τα SIEM dashboards επιτρέπουν
στους αναλυτές να εντοπίζουν γρήγορα και να ενεργούν σε
πιθανές απειλές ασφαλείας, μειώνοντας τον χρόνο που χρειάζεται για την απόκριση σε
περιστατικά. Ένα από τα βασικά χαρακτηριστικά των SIEM dashboards
είναι η ικανότητα να εμφανίζουν τον όγκο των συμβάντων,
τα επίπεδα σοβαρότητας και τις ενεργές ειδοποιήσεις σε πραγματικό χρόνο.
Αυτή η δυναμική προβολή βοηθά τους αναλυτές να παρακολουθούν τη ροή των δεδομένων ασφαλείας και
να προτεραιοποιούν την απόκριση με βάση την κρισιμότητα κάθε συμβάντος.
Για παράδειγμα, αν υπάρχει μια έξαρση στις αποτυχημένες απόπειρες σύνδεσης ή μια ξαφνική
αιχμή σε ύποπτη δραστηριότητα δικτύου, θα είναι αμέσως
ορατό στο dashboard, προτρέποντας περαιτέρω
διερεύνηση. Επιπλέον, πολλά SIEM
dashboards περιλαμβάνουν drill-down προβολές.
Αυτό επιτρέπει στους αναλυτές να κάνουν κλικ σε συγκεκριμένες ανωμαλίες ή ειδοποιήσεις και να εξετάσουν
τις λεπτομέρειες όπως την πηγή της δραστηριότητας,
τον συσχετιζόμενο χρήστη ή συσκευή και άλλες πληροφορίες
πλαισίου. Αυτή η δυνατότητα επιταχύνει τη διαδικασία
διερεύνησης, επιτρέποντας στους αναλυτές να παίρνουν ενημερωμένες αποφάσεις γρήγορα.
Τα συστήματα SIEM παρέχουν επίσης δυνατότητες αναφοράς (reporting),
προσφέροντας προκατασκευασμένα πρότυπα που μπορούν να προσαρμοστούν για να καλύψουν οργανωτικές
ανάγκες ή κανονιστικές απαιτήσεις. Αυτές οι αναφορές βοηθούν στη διασφάλιση συμμόρφωσης με
πρότυπα όπως PCI DSS ή GDPR και χρησιμοποιούνται συχνά για ελέγχους (audits)
ή περιλήψεις για στελέχη. Η ικανότητα προγραμματισμού αυτών των αναφορών διασφαλίζει ότι
οι ενδιαφερόμενοι μένουν ενημερωμένοι για τη στάση ασφαλείας και ότι η συμμόρφωση
παρακολουθείται συνεχώς. Για παράδειγμα, ένα Security Operation Center,
μια ομάδα SOC, μπορεί να χρησιμοποιήσει το dashboard του SIEM για να παρακολουθεί απόπειρες
σύνδεσης SSH σε production servers. Αν συμβούν περισσότερες από 10 αποτυχημένες απόπειρες σύνδεσης
μέσα σε πέντε λεπτά σε οποιονδήποτε server, το σύστημα μπορεί να ενεργοποιήσει μια ειδοποίηση.
Αυτό επιτρέπει στις ομάδες SOC να διερευνήσουν πιθανές απόπειρες επίθεσης brute force,
αναλαμβάνοντας γρήγορα δράση για να αποτρέψουν μια
επιτυχημένη εισβολή. Συνοπτικά, τα SIEM dashboards είναι πολύ κρίσιμα
για την παροχή ορατότητας σε πραγματικό χρόνο στα συμβάντα ασφαλείας
και την απλοποίηση της διαδικασίας διερεύνησης. Συνδυάζοντας λειτουργίες
ζωντανής παρακολούθησης, ανάλυση drill-down και αυτοματοποιημένη αναφορά, τα SIEM ενδυναμώνουν
τις ομάδες ασφαλείας να ανταποκρίνονται ταχύτερα και να διατηρούν τη συμμόρφωση εντός των
οργανωτικών και κανονιστικών προτύπων.
Έτσι, όπως μπορούμε να δούμε, μία από τις βασικές δυνατότητες του SIEM
είναι η ανίχνευση ασυνήθιστης συμπεριφοράς. Για παράδειγμα, αν ένας χρήστης συνδεθεί
σε παράξενες ώρες, όπως στις 3 το πρωί, ή από μια άγνωστη
γεωγραφική τοποθεσία, το SIEM μπορεί να επισημάνει αυτή τη δραστηριότητα ως ύποπτη.
Είναι σαν το User Behavior Analytics (UBA). Αυτές οι ανωμαλίες μπορεί να είναι ενδεικτικές
παραβιασμένων διαπιστευτηρίων ή αποπειρών μη εξουσιοδοτημένης πρόσβασης.
Ένα άλλο ισχυρό χαρακτηριστικό είναι η ικανότητα συσχέτισης πολλαπλών γεγονότων σε μία
ενιαία ενοποιημένη ειδοποίηση. Για παράδειγμα, ένα SIEM μπορεί να ανιχνεύσει μια σειρά από
αποτυχημένες απόπειρες σύνδεσης, ακολουθούμενες από μια επιτυχημένη σύνδεση και επακόλουθη
κλιμάκωση προνομίων (privilege escalation). Όταν αυτά τα γεγονότα συμβαίνουν σε κοντινή διαδοχή,
το SIEM τα συνδέει μαζί, ενεργοποιώντας μια ειδοποίηση που βοηθά τις ομάδες ασφαλείας
να εντοπίσουν πιθανές επιθέσεις όπως απόπειρες σύνδεσης brute force
ή πλευρική μετακίνηση εντός του δικτύου. Επιπλέον, τα SIEM μπορούν να
ενσωματωθούν με ροές πληροφοριών απειλών (threat intelligence feeds), για να ταιριάξουν δραστηριότητα με
γνωστούς indicators of compromise (δείκτες παραβίασης), όπως διευθύνσεις IP,
hashes αρχείων ή ονόματα τομέα που σχετίζονται με
κακόβουλη συμπεριφορά. Αυτό τους επιτρέπει να επισημαίνουν κίνηση
ή ενέργειες που ευθυγραμμίζονται με γνωστά μοτίβα επιθέσεων,
προσθέτοντας ένα άλλο επίπεδο πλαισίου και ακρίβειας στη διαδικασία ανίχνευσης.
Τα SIEM μπορούν επίσης να εξάγουν threat intelligence και
indicators of compromise προκειμένου να βοηθήσουν άλλα SIEM να ανταποκριθούν
σε τέτοιες δραστηριότητες. Ας δούμε, για παράδειγμα, φανταστείτε ένα SIEM που ανιχνεύει μια
σύνδεση λογαριασμού χρήστη στις 3 το πρωί
από μια ξένη διεύθυνση IP. Αν ο χρήστης στη συνέχεια προσπελάσει
ευαίσθητα αρχεία, το σύστημα μπορεί να ενεργοποιήσει μια ειδοποίηση βάσει
προρυθμισμένων κανόνων συσχέτισης που συνδέουν την
ασυνήθιστη συμπεριφορά σύνδεσης με την επακόλουθη πρόσβαση σε ευαίσθητα δεδομένα.
Οπότε είναι σαν ένα kill chain. Αυτό θα εντοπιστεί από το SIEM.
Αυτή η πρώιμη ανίχνευση βοηθά τις ομάδες ασφαλείας να ανταποκριθούν άμεσα,
ελαχιστοποιώντας τον κίνδυνο παραβίασης δεδομένων.
Τα σύγχρονα SIEM έχουν προηγμένες δυνατότητες που πηγαίνουν πέρα από
την απλή ανίχνευση απειλών. Μπορούν επίσης να ενεργοποιήσουν προκαθορισμένες ενέργειες
ως απόκριση σε συγκεκριμένες ειδοποιήσεις, το οποίο μειώνει σημαντικά την ανάγκη για
χειροκίνητη παρέμβαση και επιταχύνει τη διαδικασία
περιορισμού του περιστατικού. Αυτός ο αυτοματισμός επιτρέπει στις ομάδες
ασφαλείας να ανταποκρίνονται σε πιθανές απειλές γρηγορότερα και πιο αποδοτικά,
ελαχιστοποιώντας τον αντίκτυπο των παραβιάσεων ασφαλείας. Για παράδειγμα, ένα SIEM μπορεί αυτόματα
να μπλοκάρει διευθύνσεις IP, φυσικά, στέλνοντας έναν κανόνα firewall στο συγκεκριμένο
firewall που εμπλέκονται σε κακόβουλες δραστηριότητες,
όπως όταν βρίσκονται σε μια απόπειρα σύνδεσης brute force ή επιθέσεις DDoS.
Όταν ανιχνεύθηκαν πολλαπλές αποτυχημένες απόπειρες σύνδεσης, το SIEM μπορεί να ενεργοποιήσει μια
ενέργεια για να μπλοκάρει την ύποπτη διεύθυνση IP,
αποτρέποντας περαιτέρω απόπειρες μη εξουσιοδοτημένης πρόσβασης.
Μια άλλη ενέργεια που λαμβάνουν τα SIEM είναι η αυτόματη απενεργοποίηση παραβιασμένων λογαριασμών.
Εάν το σύστημα ανιχνεύσει ασυνήθιστη συμπεριφορά σύνδεσης, όπως συνδέσεις από
άλλες τοποθεσίες ή περίεργες ώρες, μπορεί άμεσα να απενεργοποιήσει
τον επηρεαζόμενο λογαριασμό για να αποτρέψει οποιαδήποτε πιθανή παραβίαση δεδομένων ή κλιμάκωση.
Έτσι μπορεί να ενσωματωθεί το SIEM με firewalls ή ελέγχους πρόσβασης ταυτότητας
προκειμένου να ανακαλέσει δικαιώματα και στην πραγματικότητα να ανταποκριθεί στην
ειδοποίηση. Επιπλέον, τα SIEM μπορούν να στέλνουν ειδοποιήσεις σε πραγματικό χρόνο στις ομάδες
ασφαλείας μέσω διαφόρων καναλιών όπως email, Slack,
ή ενσωμάτωση με εργαλεία Security Orchestration, Automation
and Response, όπως τα αποκαλούμε SOAR. Αυτό διασφαλίζει ότι οι κατάλληλοι άνθρωποι
ειδοποιούνται άμεσα, επιτρέποντάς τους να αναλάβουν ταχεία δράση.
Ας δώσουμε ένα παράδειγμα. Φανταστείτε ότι ένα SIEM ανιχνεύει πολλαπλές αποτυχημένες απόπειρες
σύνδεσης SSH, ακολουθούμενες από μια επιτυχημένη σύνδεση από μια
άγνωστη πηγή. Με τον εντοπισμό αυτού του μοτίβου, το SIEM
θα μπορούσε αυτόματα να μπλοκάρει την ύποπτη διεύθυνση IP
μέσω του firewall για να αποτρέψει περαιτέρω απόπειρες πρόσβασης.
Ταυτόχρονα, θα μπορούσε να στείλει μια ειδοποίηση email στο Security Operation
Center, στην ομάδα SOC, με τις λεπτομέρειες του περιστατικού για περαιτέρω
διερεύνηση. Ας δούμε ένα συγκεκριμένο εργαλείο, το Splunk.
Το Splunk είναι μια εμπορική λύση SIEM γνωστή για την κλιμακωσιμότητά της (scalability),
την πλούσια οπτικοποίηση και τις ισχυρές δυνατότητες αναζήτησης.
Εισάγει (ingests) logs και δεδομένα μηχανής από μια μεγάλη ποικιλία πηγών, επιτρέποντας
παρακολούθηση σε πραγματικό χρόνο, ανίχνευση απειλών και αναφορά συμμόρφωσης.
Ένα από τα βασικά χαρακτηριστικά του Splunk είναι η Search Processing Language,
επίσης όπως την αποκαλούμε SPL. Η SPL είναι μια domain-specific
γλώσσα ερωτημάτων που επιτρέπει πολύπλοκες αναζητήσεις, στατιστική ανάλυση και τη
δημιουργία οπτικών dashboards. Οι αναλυτές χρησιμοποιούν SPL από το Splunk
για να βουτήξουν στα δεδομένα και να εντοπίσουν πιθανές απειλές.
Παρέχει μια εξαιρετικά προσαρμόσιμη εμπειρία αναζήτησης,
βοηθώντας τους αναλυτές να εντοπίζουν απειλές και ακραίες τιμές (outliers)
σε μεγάλα σύνολα δεδομένων, όπως επαναλαμβανόμενες αποτυχημένες απόπειρες σύνδεσης
ή ασυνήθιστα μοτίβα κίνησης δικτύου. Ένα άλλο ισχυρό εργαλείο στο Splunk είναι το
Machine Learning Toolkit, το οποίο επιτρέπει στους χρήστες να χτίζουν προγνωστικά μοντέλα
για ανίχνευση ανωμαλιών και User Behavior Analytics,
UEBA. Αυτό το toolkit βοηθά στην ανίχνευση άγνωστων απειλών εντοπίζοντας
ασυνήθιστα μοτίβα στα δεδομένα, τα οποία μπορεί να μην επισημαίνονται από παραδοσιακές
μεθόδους ανίχνευσης βάσει κανόνων. Επιτρέπει στο Splunk να πηγαίνει πέρα από τις βασικές αναζητήσεις
και να παρέχει γνώσεις για τη μελλοντική συμπεριφορά, βοηθώντας τους αναλυτές
να ανιχνεύουν προηγμένες απειλές όπως insider threats ή επιθέσεις zero-day.
Το Enterprise Security module του Splunk προσθέτει ένα επιπλέον επίπεδο
λειτουργικότητας προσαρμοσμένο στις επιχειρήσεις ασφαλείας.
Περιλαμβάνει dashboards ειδικά για ασφάλεια, ενσωμάτωση threat intelligence
και χαρακτηριστικά επισκόπησης περιστατικών. Αυτό το module απλοποιεί την ανίχνευση και
διαχείριση περιστατικών ασφαλείας προσφέροντας εξειδικευμένα εργαλεία για threat
hunting και incident response, καθιστώντας ευκολότερο για τους αναλυτές
να διερευνούν και να μετριάζουν πιθανές απειλές σε όλη την υποδομή.
Για παράδειγμα, ένας αναλυτής ασφαλείας μπορεί να χρησιμοποιήσει SPL
για να ψάξει για αποτυχημένες απόπειρες σύνδεσης σε διάφορα συστήματα στο δίκτυο.
Το ερώτημα θα μπορούσε να είναι κάτι σαν index equals
auth sourcetype equals linux_secure action equals failed
και μετά stats count by user and source.
Αυτό επιτρέπει στον αναλυτή να εντοπίσει γρήγορα μη φυσιολογική συμπεριφορά όπως έναν μεγάλο
αριθμό αποτυχημένων συνδέσεων από έναν μόνο χρήστη ή διεύθυνση IP,
που θα μπορούσε να υποδεικνύει μια επίθεση brute force. Χρησιμοποιώντας SPL, ο αναλυτής μπορεί
άμεσα να λάβει ενέργειες όπως κλείδωμα λογαριασμών ή
μπλοκάρισμα κακόβουλων διευθύνσεων IP για να αποτρέψει περαιτέρω κλιμάκωση
της απειλής. Ο συνδυασμός του Splunk με προηγμένα queries, machine
learning και προσαρμοσμένα modules ασφαλείας το καθιστά ένα
απαραίτητο εργαλείο για επιχειρήσεις ασφαλείας μεγάλης κλίμακας.
Επιτρέπει στους οργανισμούς να ανιχνεύουν και να ανταποκρίνονται σε απειλές
γρηγορότερα, παρέχοντας ορατότητα και αξιοποιήσιμες
γνώσεις για τη στάση ασφαλείας του δικτύου.
Ένα άλλο εργαλείο, ένα SIEM, είναι το ELK Stack, που βασίζεται σε Elasticsearch,
Logstash και Kibana. Αυτή είναι μια open-source εναλλακτική που έχει κερδίσει
σημαντική απήχηση στις εγκαταστάσεις SIEM τελευταία.
Ενώ απαιτεί περισσότερη ρύθμιση και διαμόρφωση σε σύγκριση με εμπορικές
λύσεις όπως το Splunk, παρέχει στους οργανισμούς
ευελιξία και έλεγχο κόστους. Αυτό το καθιστά ιδιαίτερα
ελκυστικό για επιχειρήσεις με in-house ομάδες DevOps ή SecOps.
Το ELK Stack προσφέρει ισχυρές δυνατότητες για συγκέντρωση logs, ανάλυση και
οπτικοποίηση, που είναι κλειδί για τη διατήρηση αποτελεσματικής
παρακολούθησης ασφαλείας. Στην καρδιά του ELK Stack είναι το Elasticsearch,
μια γρήγορη και κατανεμημένη μηχανή αναζήτησης σχεδιασμένη να ευρετηριάζει (index) και να αναζητά τεράστιες
ποσότητες δεδομένων log. Επιτρέπει περισσότερα real-time queries,
καθιστώντας το ιδανικό για γρήγορη ανάκτηση και ανάλυση δεδομένων log.
Το Elasticsearch διαπρέπει στον χειρισμό μεγάλων συνόλων δεδομένων, διασφαλίζοντας ταχείες
χρόνους απόκρισης ακόμα και όταν ασχολείται με πολύπλοκες αναζητήσεις.
Αυτό διασφαλίζει ότι οι ομάδες ασφαλείας μπορούν να υποβάλουν ερωτήματα στα δεδομένα αποδοτικά
και να εντοπίσουν μοτίβα ή ανωμαλίες εγκαίρως.
Στη συνέχεια, το Logstash χειρίζεται την εισαγωγή δεδομένων (data ingestion)
και τον μετασχηματισμό. Τραβάει log από δεδομένα, τα δεδομένα log από διάφορους πόρους,
τα αναλύει (parses) και μετά στέλνει τα επεξεργασμένα δεδομένα στο Elasticsearch.
Ο ρόλος του Logstash είναι κρίσιμος επειδή τα logs συχνά παράγονται σε διαφορετικά
formats σε πολλαπλά συστήματα. Διασφαλίζει ότι τα δεδομένα τυποποιούνται,
αναλύονται σωστά και στη συνέχεια εμπλουτίζονται με πρόσθετο πλαίσιο όπου είναι απαραίτητο,
καθιστώντας τα έτοιμα για ανάλυση. Χωρίς αυτό το βήμα τα logs θα ήταν δύσκολο να δουλευτούν
και θα εμπόδιζαν οποιαδήποτε ουσιαστική διερεύνηση.
Τέλος, το Kibana χρησιμεύει ως το επίπεδο οπτικοποίησης του ELK Stack.
Επιτρέπει στους χρήστες να δημιουργούν διαδραστικά dashboards και να τρέχουν queries χρησιμοποιώντας
σύνταξη βασισμένη σε Lucene. Υποστηρίζουν Kibana Query Language (KQL), Elastic Query
Language και ούτω καθεξής. Το Kibana επιτρέπει στους αναλυτές ασφαλείας να οπτικοποιούν
τάσεις δεδομένων, να εντοπίζουν πιθανές απειλές και να παρακολουθούν
βασικές μετρήσεις σε πραγματικό χρόνο. Μέσω προσαρμόσιμων dashboards, οι χρήστες μπορούν
εύκολα να παρακολουθούν ανωμαλίες, να δημιουργούν αναφορές και να ανταποκρίνονται σε αναδυόμενα
γεγονότα ασφαλείας με μια καθαρή οπτική επισκόπηση που παρέχει το Kibana.
Για παράδειγμα, κατά την παρακολούθηση για επιθέσεις brute force SSH,
το Logstash μπορεί να ρυθμιστεί ώστε να αναλύει (parse) τα logs SSH
από τον φάκελο /var/log/auth.log όπου οι απόπειρες σύνδεσης καταγράφονται σε ένα Linux
σύστημα. Αυτά τα logs επεξεργάζονται και ευρετηριάζονται από το
Elasticsearch, μια βάση δεδομένων NoSQL, καθιστώντας εύκολη την αναζήτηση και το ερώτημα.
Το Kibana μπορεί στη συνέχεια να οπτικοποιήσει τις αποτυχημένες απόπειρες σύνδεσης με την πάροδο του χρόνου.
Εμφανίζοντας τάσεις και χαρτογραφώντας τις πηγές IPs.
Αυτή η ρύθμιση επιτρέπει στις ομάδες ασφαλείας να εντοπίζουν γρήγορα μη φυσιολογικά μοτίβα,
όπως πολλαπλές αποτυχημένες απόπειρες από μια ενιαία IP, που μπορεί να σηματοδοτούν
μια επίθεση brute force.
Κατά τη σύγκριση του Splunk και του ELK Stack, υπάρχουν αρκετές βασικές διαφορές σε
όρους χαρακτηριστικών, αδειοδότησης και κλιμακωσιμότητας.
Η κατανόηση αυτών των διαφορών μπορεί να βοηθήσει τους οργανισμούς
να επιλέξουν τη σωστή λύση για τις ανάγκες τους σε παρακολούθηση ασφαλείας και διαχείριση logs.
Η αδειοδότηση είναι μία από τις πιο
σημαντικές αντιθέσεις μεταξύ των δύο. Το Splunk λειτουργεί με ένα εμπορικό
κλιμακωτό μοντέλο τιμολόγησης, που σημαίνει ότι ο οργανισμός πρέπει να πληρώσει με βάση την
ποσότητα των δεδομένων που εισάγονται. Ενώ αυτό το μοντέλο προσφέρει ισχυρή εταιρική
υποστήριξη, μπορεί να γίνει πολύ δαπανηρό καθώς ο όγκος δεδομένων αυξάνεται.
Από την άλλη πλευρά, το ELK Stack είναι open source, που σημαίνει ότι είναι δωρεάν για χρήση.
Ωστόσο, οι οργανισμοί που απαιτούν πρόσθετη υποστήριξη,
η Elastic, η εταιρεία πίσω από το ELK Stack,
προσφέρει επιλογές πληρωμένης υποστήριξης, παρέχοντας την ευελιξία
να κλιμακωθεί όπως χρειάζεται χωρίς μια σημαντική αρχική
επένδυση σε αδειοδότηση. Σε όρους γλώσσας ερωτημάτων (query language), το Splunk χρησιμοποιεί τη δική του
ιδιόκτητη Search Processing Language, SPL. Η SPL είναι εξαιρετικά
ευέλικτη και ισχυρή, επιτρέποντας στους χρήστες να εκτελούν πολύπλοκες αναζητήσεις,
στατιστική ανάλυση, και ακόμη να δημιουργούν προσαρμοσμένα dashboards.
Ενώ η SPL προσφέρει προηγμένες δυνατότητες, μπορεί επίσης να έχει μια πιο απότομη
καμπύλη εκμάθησης για χρήστες που δεν είναι εξοικειωμένοι με αυτά τα μπλοκ
απόφασης. Το ELK Stack, σε αντίθεση, χρησιμοποιεί
Lucene και Kibana Query Language, και οι δύο εκ των οποίων είναι πιο τυποποιημένες
και ευκολότερες στην εκμάθηση, αλλά λιγότερο προηγμένες σε σύγκριση με την SPL.
Για εκείνους που είναι ήδη εξοικειωμένοι με SQL, όπως
γλώσσα ερωτημάτων, η Kibana Query Language προσφέρει ένα πιο προσβάσιμο σημείο εισόδου.
Έχει αίσθηση παρόμοια με την SQL, αλλά μπορεί να υποστηρίζει,
ή να μην υποστηρίζει, το επίπεδο των πολύπλοκων ερωτημάτων που κάνει η SPL.
Όσον αφορά την πολυπλοκότητα ρύθμισης, το Splunk είναι γνωστό ότι είναι εύκολο στην ανάπτυξη,
ειδικά με τις επιλογές υποστήριξης enterprise.
Αυτό το καθιστά ιδανικό για οργανισμούς που χρειάζονται μια γρήγορη
έτοιμη λύση (out-of-the-box) με ελάχιστη διαμόρφωση.
Το ELK Stack, ωστόσο, απαιτεί περισσότερη χειροκίνητη διαμόρφωση και συντονισμό.
Μπορεί να ρυθμιστεί για να καλύψει συγκεκριμένες απαιτήσεις, αλλά αυτό σημαίνει επίσης περισσότερη
προσπάθεια για την ανάπτυξη, ειδικά όταν κλιμακώνεται
σε πολλαπλά περιβάλλοντα. Οι δυνατότητες ενσωμάτωσης επίσης διαφέρουν μεταξύ των δύο
λύσεων. Το Splunk προσφέρει εκτεταμένες ενσωματωμένες
ενσωματώσεις και add-ons, καθιστώντας το ευκολότερο να ενσωματωθεί σε ένα υπάρχον
περιβάλλον. Αυτές οι προκατασκευασμένες ενσωματώσεις με
δημοφιλή συστήματα και εργαλεία βοηθούν στην απλοποίηση των διαδικασιών ανάπτυξης.
Εν τω μεταξύ, το ELK Stack είναι εξαιρετικά επεκτάσιμο,
προσφέροντας την ευελιξία να ενσωματωθεί με πολλά συστήματα μέσω plugins
και Beats, ελαφρών αποστολέων δεδομένων. Οι agents στο ELK
ονομάζονται Beats. Αυτή η επεκτασιμότητα επιτρέπει στο ELK Stack να
προσαρμόζεται και να ράβεται στα μέτρα για συγκεκριμένες περιπτώσεις χρήσης.
Ωστόσο, μπορεί να απαιτεί πρόσθετες διαμορφώσεις
για να διασφαλιστεί η απρόσκοπτη ενσωμάτωση με τα συστήματα.
Τέλος, η κλιμακωσιμότητα (scalability) είναι ένας τομέας όπου και οι δύο λύσεις διαφέρουν.
Το Splunk είναι cloud-native, προσφέροντας δυνατότητες κλιμάκωσης που διαχειρίζονται από το
ίδιο το Splunk cloud. Αυτό καθιστά ευκολότερο για τους οργανισμούς
να κλιμακώνονται καθώς χρειάζεται χωρίς το βάρος της διαχείρισης της υποδομής.
Από την άλλη πλευρά, το ELK Stack απαιτεί περισσότερη χειροκίνητη διαχείριση cluster για
κλιμάκωση. Ενώ μπορεί να κλιμακωθεί για να χειριστεί μεγάλα σύνολα δεδομένων,
αυτή η διαδικασία απαιτεί περισσότερη πρακτική προσπάθεια, συμπεριλαμβανομένης της διαχείρισης
κόμβων (nodes), χειρισμό κατανομής δεδομένων, και διασφάλιση υψηλής διαθεσιμότητας του
ίδιου του συστήματος. Το Graylog είναι μια open-source πλατφόρμα
διαχείρισης logs που χρησιμοποιείται συνήθως για μεσαίου μεγέθους εγκαταστάσεις SIEM.
Είναι χτισμένο πάνω σε Elasticsearch και MongoDB,
προσφέροντας μια φιλική προς το χρήστη, ευέλικτη και επεκτάσιμη λύση
για διαχείριση και ανάλυση logs. Γνωστό για την απλότητά του, το Graylog είναι
ιδιαίτερα κατάλληλο για περιβάλλοντα όπου η ευκολία ρύθμισης και προσαρμογής
είναι κρίσιμες, ωστόσο διατηρεί ισχυρά χαρακτηριστικά που πληρούν τις
απαιτήσεις των ομάδων ασφαλείας. Ένα από τα χαρακτηριστικά που ξεχωρίζουν στο Graylog
είναι η modular αρχιτεκτονική του. Χρησιμοποιεί στοιχεία όπως inputs,
extractors, και pipelines για να επεξεργαστεί, φιλτράρει και εμπλουτίσει τα logs,
το οποίο παρέχει ευελιξία στο πώς τα δεδομένα log εισάγονται, αναλύονται και μελετώνται.
Αυτή η αρχιτεκτονική επιτρέπει στους οργανισμούς να προσαρμόζουν τα pipelines επεξεργασίας logs τους
ώστε να ταιριάζουν σε συγκεκριμένες ανάγκες, καθιστώντας το Graylog μια προσαρμόσιμη
λύση για διάφορες περιπτώσεις χρήσης. Το Graylog παρέχει επίσης
φιλτράρισμα βάσει ροής (stream-based filtering), που βοηθά τους χρήστες να δρομολογούν logs σε συγκεκριμένες ροές (streams)
με βάση το περιεχόμενό τους. Αυτό επιτρέπει προσαρμοσμένη ειδοποίηση και
dashboarding με βάση τους τύπους logs που είναι πιο σημαντικοί
για την ομάδα ασφαλείας. Για παράδειγμα, αν υπάρχουν συγκεκριμένα logs που σχετίζονται
με κρίσιμα συστήματα ή συγκεκριμένες απειλές,
το Graylog μπορεί να ρυθμιστεί ώστε να προτεραιοποιεί αυτά τα γεγονότα και να ενεργοποιεί
ειδοποιήσεις ανάλογα. Η ειδοποίηση και η συσχέτιση είναι βασικά συστατικά
του Graylog, προσφέροντας δυνατότητες παρακολούθησης σε πραγματικό χρόνο.
Οι χρήστες μπορούν να ρυθμίσουν συνθήκες ειδοποίησης με βάση κατώφλια ή συγκεκριμένα μοτίβα
εντός της ροής των logs. Για παράδειγμα, αν ένα προκαθορισμένο κατώφλι
ξεπεραστεί, όπως πολλαπλές αποτυχημένες απόπειρες σύνδεσης,
σε σύντομο χρονικό διάστημα, το Graylog μπορεί να ενεργοποιήσει μια ειδοποίηση,
ενημερώνοντας την ομάδα ασφαλείας για πιθανές απειλές.
Ένα παράδειγμα, ένας διαχειριστής δικτύου ρυθμίζει μια ροή (stream) για να παρακολουθεί αποτυχημένες SSH
συνδέσεις. Η ροή φιλτράρει logs όπου event
dot action equals SSH login failed. Και αν περισσότερες από 10
αποτυχίες συμβούν μέσα σε ένα λεπτό από την ίδια διεύθυνση IP, το Graylog ενεργοποιεί μια
ειδοποίηση, βοηθώντας στον εντοπισμό πιθανών επιθέσεων brute-force.
Από τεχνική σκοπιά, το Graylog υποστηρίζει διάφορες
μεθόδους εισαγωγής (ingestion), συμπεριλαμβανομένων Syslog,
GELF, που είναι το Graylog Extended Log Format, και REST APIs υποστηρίζονται,
καθιστώντας το Graylog συμβατό με ένα ευρύ φάσμα πηγών log.
Η πλατφόρμα χρησιμοποιεί ξανά Elasticsearch για ευρετηρίαση (indexing),
το οποίο παρέχει γρήγορες δυνατότητες αναζήτησης και ερωτημάτων σε
μεγάλα σύνολα δεδομένων. Επιπλέον, το οικοσύστημα plugin του Graylog είναι
ένα άλλο χαρακτηριστικό, προσφέροντας ενσωματώσεις για γεωεντοπισμό,
threat intelligence, και άλλες προηγμένες περιπτώσεις χρήσης.
Αυτή η ευελιξία επιτρέπει στους οργανισμούς να επεκτείνουν τη λειτουργικότητα του Graylog
και να προσαρμοστούν στις συγκεκριμένες ανάγκες ασφάλειας και λειτουργίας τους.
Το IBM QRadar είναι μια ολοκληρωμένη πλατφόρμα SIEM επιπέδου επιχείρησης,
ευρέως χρησιμοποιούμενη σε ρυθμιζόμενους κλάδους, ιδιαίτερα όπου ισχυρή
ασφάλεια και απαιτήσεις συμμόρφωσης είναι απαραίτητες.
Γνωστό για την προηγμένη μηχανή συσχέτισής του και τις δυνατότητες ενσωμάτωσης,
το QRadar είναι σχεδιασμένο να χειρίζεται πολύπλοκα περιβάλλοντα ασφαλείας με ευκολία,
παρέχοντας βαθιές γνώσεις και ανίχνευση απειλών σε πραγματικό χρόνο.
Ένα από τα πιο αξιοσημείωτα χαρακτηριστικά του QRadar είναι η
μηχανή αυτόματης συσχέτισης (auto-correlation engine), η οποία χρησιμοποιεί μια λογική
βάσει κανόνων για να ανιχνεύσει μοτίβα ασφαλείας σε πολλαπλές πηγές log.
Αυτή η μηχανή συσχετίζει αυτόματα γεγονότα από διάφορα συστήματα,
όπως firewalls, endpoints, και servers, για να εντοπίσει ύποπτες δραστηριότητες.
Ένα άλλο βασικό χαρακτηριστικό του QRadar είναι η δυνατότητα μοντελοποίησης πόρων (asset modeling).
Η πλατφόρμα χτίζει δυναμικά μια απογραφή πόρων με βάση παρατηρήσεις κίνησης
δικτύου, δίνοντας στις ομάδες ασφαλείας μια καθαρή εικόνα
των ευπαθειών των πόρων τους. Αυτή η μοντελοποίηση πόρων τους βοηθά να
εντοπίσουν κρίσιμα συστήματα που στοχεύονται
και επιτρέπει στους οργανισμούς να προτεραιοποιούν τις αποκρίσεις ανάλογα.
Οι ενσωματωμένες ροές απειλών (threat feeds) είναι ένα άλλο σημαντικό πλεονέκτημα του QRadar.
Συνδέεται απρόσκοπτα με εξωτερική threat intelligence,
με παρόχους όπως το IBM X-Force και άλλες ροές τρίτων,
εμπλουτίζοντας τη διαδικασία ανίχνευσης και συσχέτισης.
Αυτή η ενσωμάτωση επιτρέπει στο QRadar να διασταυρώνει εισερχόμενα δεδομένα log
με γνωστούς δείκτες επιθέσεων και εξελισσόμενη threat intelligence,
βελτιώνοντας την ακρίβεια των ειδοποιήσεων και βοηθώντας τις ομάδες ασφαλείας να ανταποκρίνονται πιο
προληπτικά. Ας δούμε ένα παράδειγμα χρήσης. Το QRadar
μπορεί να συσχετίσει επαναλαμβανόμενες αποτυχημένες συνδέσεις από πολλαπλούς χρήστες στο ίδιο subnet,
ακολουθούμενες από μια επιτυχημένη σύνδεση από έναν από τους άλλους χρήστες.
Αυτή η ακολουθία υποδηλώνει μια επίθεση credential stuffing, όπου οι επιτιθέμενοι χρησιμοποιούν
κλεμμένα διαπιστευτήρια για να αποκτήσουν μη εξουσιοδοτημένη πρόσβαση. Η μηχανή auto correlation του QRadar
θα δημιουργήσει ένα αδίκημα (offense) υψηλής σοβαρότητας,
ειδοποιώντας την ομάδα ασφαλείας για πιθανή παραβίαση διαπιστευτηρίων.
Από τεχνική σκοπιά, το QRadar είναι εξαιρετικά κλιμακώσιμο,
υποστηρίζοντας εισαγωγή logs από χιλιάδες πηγές, συμπεριλαμβανομένων firewalls,
endpoints, και πλατφορμών cloud. Αυτό καθιστά το QRadar κατάλληλο για
μεγάλα πολύπλοκα περιβάλλοντα που απαιτούν κεντρικοποιημένη διαχείριση logs και ανίχνευση
απειλών. Επιπλέον, το QRadar έχει ενσωματωμένα analytics ροής (flow
analytics) μέσω του QFlow που του επιτρέπει να επιθεωρεί
κίνηση Layer 7, παρέχοντας ορατότητα σε δραστηριότητα επιπέδου εφαρμογής,
που είναι απαραίτητη για την ανίχνευση πιο προηγμένων επιθέσεων.
Το QRadar αξιοποιεί επίσης τη βάση δεδομένων Ariel για αναζήτηση υψηλής ταχύτητας σε
terabytes δεδομένων log, επιτρέποντας γρήγορη απόδοση ερωτημάτων,
ακόμη και σε εγκαταστάσεις μεγάλης κλίμακας. Αυτό επιτρέπει στους αναλυτές ασφαλείας να ψάχνουν γρήγορα
μέσω εκτενών logs και να εντοπίζουν κρίσιμα γεγονότα ασφαλείας,
το οποίο είναι ζωτικό για τη διατήρηση δυνατοτήτων παρακολούθησης σε πραγματικό χρόνο.
Το Microsoft Sentinel είναι μια cloud-native λύση SIEM που είναι στενά
ενσωματωμένη με το Azure, προσφέροντας κλιμακωσιμότητα,
ισχυρά analytics, και δυνατότητες αυτοματοποιημένης απόκρισης.
Αξιοποιεί το AI της Microsoft, μηχανική μάθηση,
και security graph intelligence για να παραδώσει έξυπνη ανίχνευση απειλών
και απλοποιημένες λειτουργίες ασφαλείας, καθιστώντας το ιδιαίτερα κατάλληλο για
επιχειρήσεις που χρησιμοποιούν ήδη Azure ή άλλες υπηρεσίες Microsoft.
Ένα από τα βασικά πλεονεκτήματα του Sentinel είναι η χρήση της
Kusto Query Language, KQL, μια γρήγορη και ευέλικτη γλώσσα ερωτημάτων
βελτιστοποιημένη για ανάλυση logs μεγάλης κλίμακας.
Η KQL επιτρέπει στους αναλυτές ασφαλείας να ψάχνουν γρήγορα και να αναλύουν τεράστιες
ποσότητες δεδομένων log, καθιστώντας την ένα απαραίτητο εργαλείο για τον εντοπισμό
απειλών σε πραγματικό χρόνο. Η γλώσσα είναι αρκετά ισχυρή
για να χειρίζεται πολύπλοκα ερωτήματα ενώ είναι αρκετά αποδοτική
για να λειτουργεί στην κλίμακα εταιρικών περιβαλλόντων.
Μια άλλη σημαντική δυνατότητα του Sentinel
είναι τα behavior analytics του, που περιλαμβάνουν User Behavior Analytics,
UEBA. Αυτή η λειτουργία αναλύει τη συμπεριφορά χρήστη και
συστήματος, για να βρει ανωμαλίες δεδομένων που μπορεί να υποδεικνύουν κακόβουλη δραστηριότητα.
Παρακολουθώντας συνεχώς τις ενέργειες χρηστών και οντοτήτων,
το Sentinel μπορεί να εντοπίσει αποκλίσεις από την κανονική συμπεριφορά,
όπως ασυνήθιστους χρόνους σύνδεσης, άτυπα μοτίβα πρόσβασης,
ή μη εξουσιοδοτημένη πρόσβαση πόρων, που είναι συχνά σημάδια insider threats
ή παραβιασμένων λογαριασμών. Τα Playbooks στο Microsoft Sentinel,
που βασίζονται στο SOAR, Security Orchestration, Automation and Response,
επιτρέπουν στους οργανισμούς να αυτοματοποιούν την απόκριση σε περιστατικά.
Χρησιμοποιώντας Azure Logic Apps, τα playbooks μπορούν να εκτελούν προκαθορισμένες
ροές εργασίας για να ανταποκρίνονται σε περιστατικά ασφαλείας αυτόματα.
Αυτά τα playbooks βοηθούν στη μείωση του χρόνου απόκρισης σε περιστατικά,
διασφαλίζοντας μια γρήγορη και συνεπή αντίδραση σε κοινές απειλές ασφαλείας.
Ας δούμε ένα παράδειγμα. Οι δυνατότητες ανίχνευσης απειλών του Sentinel
είναι η ικανότητά του να επισημαίνει αδύνατες συνδέσεις (impossible logins).
Ας υποθέσουμε ότι ένας χρήστης συνδέεται από τη Γερμανία και μετά από τις ΗΠΑ, εντός ενός παραθύρου δύο λεπτών,
το Sentinel θα χρησιμοποιούσε ερωτήματα KQL σε
logs εισόδου για να το επισημάνει αυτό ως ανωμαλία. Ερωτώντας τα
δεδομένα GeoIP και timestamp, το Sentinel μπορεί άμεσα να εντοπίσει και να ειδοποιήσει
για το αδύνατο σενάριο, υποδεικνύοντας μια πιθανή παραβίαση διαπιστευτηρίων
ή μια απόπειρα μη εξουσιοδοτημένης πρόσβασης. Από τεχνική σκοπιά, το Microsoft
Sentinel παρέχει απρόσκοπτη ενσωμάτωση με τις
υπηρεσίες της Microsoft, όπως Microsoft 365, Defender και Azure
activity logs. Αυτή η στενή ενσωμάτωση βοηθά τις ομάδες ασφαλείας
να αποκτήσουν ολοκληρωμένη ορατότητα σε όλη την έκταση των
cloud και on-premises περιβαλλόντων τους. Επιπλέον,
το Sentinel υποστηρίζει ένα ευρύ φάσμα τρίτων
και connectors όπως AWS, Cisco και Palo Alto,
που επιτρέπουν στους οργανισμούς να εισάγουν δεδομένα, να εισάγουν
δεδομένα από πολλαπλές πηγές σε μια κεντρικοποιημένη πλατφόρμα
για πιο ολοκληρωμένη ανίχνευση και ανάλυση απειλών.
Για να αρχίσετε να αξιοποιείτε το Splunk, για παράδειγμα, για ανάλυση δεδομένων log, είναι
σημαντικό να κατανοήσετε κάθε βήμα της διαδικασίας για εισαγωγή και
διαμόρφωση δεδομένων log. Το πρώτο στάδιο είναι να πλοηγηθείτε στις
ρυθμίσεις (settings) και add data, που ανοίγει μια απλή και
διαισθητική ροή εργασίας για την προσθήκη των πηγών δεδομένων σας.
Αυτή η διαδικασία είναι κρίσιμη καθώς διασφαλίζει ότι η εγκατάσταση (instance) του Splunk σας
μπορεί να συλλέγει σωστά δεδομένα από μια ποικιλία πηγών,
είτε είναι από αρχεία είτε από παρακολούθηση σε πραγματικό χρόνο. Η πρώτη ενέργεια
εδώ είναι να επιλέξετε monitor files and directories.
Αυτό σας επιτρέπει να καθορίσετε ποια αρχεία log θα παρακολουθούνται για
συλλογή σε πραγματικό χρόνο. Για παράδειγμα, αν θέλετε να
παρακολουθείτε logs αυθεντικοποίησης από ένα σύστημα Linux, μπορεί να
επιλέξετε αρχεία όπως /var/log/auth.log ή /var/log/secure kernel ή
οτιδήποτε. Επιλέγοντας την επιλογή files and directories
λέτε στο Splunk να ψάξει για νέες εγγραφές log
που εμφανίζονται μέσα σε αυτά τα αρχεία ή καταλόγους,
οι οποίες θα ευρετηριαστούν (indexed) για μετέπειτα αναζήτηση.
Αυτό είναι κλειδί επειδή σημαίνει ότι το Splunk είναι συνεχώς ενήμερο για νέα γεγονότα,
καθιστώντας ευκολότερο τον εντοπισμό ζητημάτων καθώς προκύπτουν σε πραγματικό χρόνο.
Στη συνέχεια, μία από τις πιο κρίσιμες αποφάσεις στη διαδικασία ρύθμισης είναι
να επιλέξετε έναν τύπο πηγής (source type) για τα δεδομένα log.
Ο τύπος πηγής καθορίζει πώς το Splunk πρέπει να ερμηνεύει
και να αναλύει (parse) τα πρωτογενή δεδομένα log. Χωρίς έναν σωστό τύπο πηγής,
το Splunk δεν θα μπορούσε να εξάγει ουσιαστικά πεδία
ή να δομήσει τα δεδομένα σωστά. Για παράδειγμα, τα logs αυθεντικοποίησης Linux
συνήθως χρησιμοποιούν τον τύπο πηγής linux_secure.
Αναθέτοντας τον κατάλληλο τύπο πηγής,
διασφαλίζετε ότι το Splunk κατανοεί το format του log
και μπορεί σωστά να σπάσει τα logs σε πεδία όπως ονόματα χρηστών,
timestamps, κατάσταση εισόδου ως επιτυχία, αποτυχία, και ούτω καθεξής.
Αφού ορίσετε τον τύπο πηγής, το επόμενο βήμα είναι να διαμορφώσετε ένα index.
Το index λειτουργεί σαν ένα δοχείο (container) για logs
και είναι απαραίτητο για την οργάνωση των μεγάλων ποσοτήτων δεδομένων
που μπορεί να εισαχθούν στο Splunk. Για παράδειγμα, logs ασφαλείας θα μπορούσαν να τοποθετηθούν
σε ένα index που ονομάζεται "security_logs", το οποίο θα καθιστούσε εύκολο
αργότερα το φιλτράρισμα και την αναζήτηση μόνο στα σχετικά με την ασφάλεια γεγονότα στο σύστημά
σας. Ομαδοποιώντας logs σε διαφορετικά indexes,
το Splunk μπορεί πιο αποδοτικά να ανακτήσει τα δεδομένα που χρειάζονται για ανάλυση χωρίς
να ψάχνει μέσα από άσχετες πληροφορίες, βελτιώνοντας
την απόδοση και διασφαλίζοντας ότι τα ερωτήματα αναζήτησης
είναι ταχύτερα και πιο σχετικά. Μόλις ολοκληρώσετε τη διαμόρφωση τύπου πηγής και
index, το Splunk θα αρχίσει αυτόματα
να εισάγει τα δεδομένα log από τα καθορισμένα αρχεία στη βάση δεδομένων.
Καθώς εισάγει αυτά τα logs, το Splunk αναλύει τις πρωτογενείς εγγραφές log σε
δομημένα γεγονότα σύμφωνα με τον τύπο πηγής.
Κάθε γεγονός περιέχει σημαντικά πεδία μεταδεδομένων όπως time,
host, source και source type που βοηθούν στην κατηγοριοποίηση των δεδομένων και τα καθιστούν
αναζητήσιμα. Για παράδειγμα, το πεδίο timestamp
last_time θα σας επιτρέψει να αναζητήσετε logs κατά ημερομηνία και ώρα.
Host θα σας πει από ποιο μηχάνημα προήλθε το log
και source type θα σας βοηθήσει να εντοπίσετε τον τύπο του log,
αν είναι log συστήματος, log εφαρμογής, log ασφαλείας και ούτω καθεξής.
Αυτά τα πεδία κάνουν τα δεδομένα πολύ πιο χρήσιμα και σας επιτρέπουν να βρείτε γρήγορα
σχετικές εγγραφές σε ένα μεγάλο σύνολο δεδομένων. Μόλις τα logs έχουν εισαχθεί
και αναλυθεί στα γεγονότα, το τελικό βήμα είναι να επαληθεύσετε τα δεδομένα τρέχοντας
αναζητήσεις. Εδώ είναι που η δύναμη του Splunk
πραγματικά λάμπει. Ερωτώντας συγκεκριμένα indexes και τύπους πηγών,
μπορείτε γρήγορα να φιλτράρετε μέσα από logs για να αποκαλύψετε πολύτιμες γνώσεις.
Για παράδειγμα, για να παρακολουθήσετε αποτυχημένες απόπειρες σύνδεσης, θα μπορούσατε να ψάξετε για όλες τις αποτυχημένες
εγγραφές κωδικού πρόσβασης στα logs ασφαλείας χρησιμοποιώντας ένα
ερώτημα όπως index=security_logs sourcetype=linux_secure
και μετά το μήνυμα "failed password".
Αυτό το ερώτημα θα επιστρέψει όλες τις εγγραφές που ταιριάζουν με αυτό το string αναζήτησης
το οποίο θα ήταν απίστευτα χρήσιμο για τον εντοπισμό πιθανών παραβιάσεων
ασφαλείας, επιθέσεων brute force ή κακών ρυθμίσεων στο σύστημα.
Μόλις τα logs σας εισαχθούν στο Splunk το επόμενο βήμα
είναι να τα αναλύσετε χρησιμοποιώντας την SPL, την Search Processing
Language. Ένα από τα πιο θεμελιώδη ερωτήματα στην SPL
είναι η χρήση της εντολής stats για τον υπολογισμό μετρήσεων σε διάφορα πεδία στα
logs σας. Για παράδειγμα, αν θέλετε να αναλύσετε πόσα
συμβάντα έρχονται από διαφορετικές πηγές log,
μπορείτε να χρησιμοποιήσετε το ακόλουθο ερώτημα SPL index=security_logs
| stats count by source. Αυτό θα παρέχει μια ανάλυση των μετρήσεων
συμβάντων από κάθε πηγή log βοηθώντας στον εντοπισμό ποιες πηγές είναι πιο ενεργές.
Αυτή η ανάλυση είναι σημαντική για τις ομάδες ασφαλείας για να παρακολουθούν συστήματα
καθώς ασυνήθιστες αιχμές στα συμβάντα από συγκεκριμένες πηγές θα μπορούσαν να υποδεικνύουν ένα
πιθανό περιστατικό ασφαλείας. Ένα άλλο βασικό χαρακτηριστικό της SPL είναι η
εντολή top η οποία εντοπίζει τις πιο συχνές
τιμές σε ένα συγκεκριμένο πεδίο. Για παράδειγμα, αν θέλετε να δείτε ποιοι τύποι πηγών
είναι πιο κοινοί στα logs σας, θα μπορούσατε να χρησιμοποιήσετε το ερώτημα
index=security_logs | top sourcetype.
Οι τύποι πηγών είναι ουσιώδεις κατηγορίες που το Splunk αναθέτει στα logs με βάση
το format τους. Εντοπίζοντας τους πιο
συχνούς τύπους πηγών μπορείτε να αξιολογήσετε εάν οι πηγές log
κατηγοριοποιούνται κατάλληλα και αν παρουσιάζονται τυχόν απροσδόκητοι
τύποι log. Αυτοί οι απροσδόκητοι τύποι πηγών μπορεί να δείχνουν
σε κακώς ρυθμισμένα συστήματα ή στη χειρότερη περίπτωση πιθανούς
κινδύνους ασφαλείας όπως μια νέα μη ανιχνευμένη πηγή δεδομένων.
Με αυτές τις εντολές μπορείτε εύκολα να βουτήξετε στα δεδομένα log σας και να αρχίσετε
να αποκαλύπτετε πολύτιμες γνώσεις. Η γλώσσα SPL υποστηρίζει επίσης
πιο προηγμένα χαρακτηριστικά όπως subsearches,
εξαγωγές πεδίων (field extractions) και analytics βάσει χρόνου.
Για παράδειγμα, αν θέλετε να εστιάσετε σε logs από ένα συγκεκριμένο
χρονικό εύρος ή να φιλτράρετε συγκεκριμένα γεγονότα που δεν είναι σχετικά
με την έρευνά σας, η SPL σας επιτρέπει να τελειοποιήσετε
τα ερωτήματά σας σύμφωνα με τον χρόνο. Αυτό την καθιστά ευέλικτο εργαλείο όχι μόνο για
απόκριση σε περιστατικά ασφαλείας αλλά και για συνεχή λειτουργική
παρακολούθηση. Για την ανίχνευση αποπειρών brute force, μία
αποτελεσματική μέθοδος χρησιμοποιώντας το Splunk είναι να εξετάσετε logs για επαναλαμβανόμενα
μηνύματα αποτυχημένης σύνδεσης. Οι επιθέσεις brute force συχνά περιλαμβάνουν μια
επίθεση που δοκιμάζει επανειλημμένα διαφορετικούς κωδικούς πρόσβασης σε μια προσπάθεια να αποκτήσει μη εξουσιοδοτημένη
πρόσβαση στο σύστημα. Αυτές οι αποτυχημένες απόπειρες τυπικά
καταγράφονται σε logs όπως SSH ή logs αυθεντικοποίησης
πράγμα που τα καθιστά απαραίτητα για την ανίχνευση κακόβουλης δραστηριότητας.
Αναλύοντας αυτά τα logs μπορείτε να εντοπίσετε μοτίβα που υποδεικνύουν επιθέσεις brute force
σε εξέλιξη. Ένας τρόπος ανίχνευσης μιας επίθεσης brute force είναι
χρησιμοποιώντας queries στην ανάλυση log. Οπότε index=security_logs "failed
password" άρα αυτό είναι το μήνυμα που πρέπει να εμφανίζεται στα logs
και μετά | stats count by source. Αυτή η εντολή είναι ειδικά σχεδιασμένη
να βρίσκει περιπτώσεις όπου οι απόπειρες σύνδεσης αποτυγχάνουν. Να πώς λειτουργεί.
index=security_logs καθορίζει ότι το ερώτημα πρέπει να ψάξει εντός του
index security logs που πιθανότατα περιέχει εγγραφές
σχετικές με τις απόπειρες σύνδεσης. "failed password" ψάχνει για γεγονότα
στα logs που περιέχουν τη φράση "failed password"
που χρησιμοποιείται συνήθως για να καταγράψει ανεπιτυχείς απόπειρες σύνδεσης.
| stats count by source είναι μια στατιστική συνάρτηση που μετρά τις
εμφανίσεις πόσες φορές για παράδειγμα αυτή η εμφάνιση παρουσιάστηκε
ομαδοποιημένες κατά τη διεύθυνση IP πηγής. Για παράδειγμα θα έπρεπε να είναι
μια διεύθυνση IP και μετά πόσοι αποτυχημένοι κωδικοί πρόσβασης
ήταν σε μια συγκεκριμένη IP. Ουσιαστικά αυτό το μέρος της εντολής συγκεντρώνει τα
δεδομένα για να δείξει πόσες αποτυχημένες απόπειρες σύνδεσης προήλθαν από
κάθε μοναδική διεύθυνση IP. Το αποτέλεσμα από αυτό το ερώτημα θα μπορούσε να μοιάζει
έτσι IP address και η διεύθυνση IP
πόσες αποτυχημένες απόπειρες σύνδεσης εμφανίστηκαν
20 για παράδειγμα index=security_logs "failed password" | top user
αυτό το ερώτημα λειτουργεί ελαφρώς διαφορετικά αλλά εξακολουθεί να στοχεύει να εντοπίσει
την επίθεση brute force. Πάλι το security logs είναι το
index και το failed password είναι η φράση μέσα στα logs.
Το | top user είναι μια συνάρτηση που επιστρέφει τα πιο συχνά
στοχευμένα ονόματα χρηστών. Συγκεντρώνει τα δεδομένα με βάση τον
αριθμό των φορών που κάθε όνομα χρήστη εμφανίζεται στις αποτυχημένες απόπειρες σύνδεσης
ουσιαστικά κατατάσσοντας τα ονόματα χρηστών με βάση πόσες φορές
στοχεύθηκαν, οπότε θα παρέχει τον υψηλότερο αριθμό των
ονομάτων χρηστών που δοκιμάστηκαν για αυτές τις απόπειρες σύνδεσης.
Οπότε αυτή είναι η εντολή top. Θα εξηγήσουμε έτσι ότι το αποτέλεσμα θα είναι όπως
username root που είναι πολύ κοινό 15 απόπειρες username admin 10
απόπειρες username super user οτιδήποτε
αριθμός αποπειρών. Αυτό σημαίνει ότι τα ονόματα χρηστών root και admin
στοχεύθηκαν συγκεκριμένα. Τέτοια αποτελέσματα υποδηλώνουν ότι οι επιτιθέμενοι
εστιάζουν σε λογαριασμούς υψηλής αξίας από το root του admin
και στην πραγματικότητα προσπαθούν να κάνουν επιθέσεις brute force στα συστήματα.
Η οπτικοποίηση των δεδομένων log είναι απαραίτητη για τον γρήγορο εντοπισμό ύποπτων δραστηριοτήτων
ή μη φυσιολογικής συμπεριφοράς σε πραγματικό χρόνο. Τα dashboards σε εργαλεία SIEM όπως το Splunk
παρέχουν μια διαδραστική διεπαφή για την παρακολούθηση και ανάλυση τάσεων
όπως αιχμές στις αποτυχημένες απόπειρες σύνδεσης ή επαναλαμβανόμενες επιθέσεις.
Αυτές οι οπτικοποιήσεις βοηθούν τους αναλυτές ασφαλείας να παρακολουθούν πιθανές απειλές
χωρίς να χρειάζεται να κοσκινίζουν τα πρωτογενή δεδομένα log χειροκίνητα
επιτρέποντας πιο αποδοτική και αποτελεσματική απόκριση.
Για να παρακολουθήσετε απόπειρες brute force ή άλλες αποτυχίες σύνδεσης
με την πάροδο του χρόνου μπορείτε να χρησιμοποιήσετε το ερώτημα όπως αυτό που εξηγήσαμε security logs
"failed password" και μετά | timechart span=1h count by source.
Αυτό το ερώτημα παράγει ένα χρονοδιάγραμμα που
παρακολουθεί αποτυχημένες απόπειρες σύνδεσης ανά διεύθυνση IP πηγής σε μια συγκεκριμένη χρονική περίοδο
σε αυτή την περίπτωση ωριαία κάθε ώρα. Διασπώντας τα δεδομένα σε χρονικά βασισμένες
προσαυξήσεις μπορείτε να οπτικοποιήσετε πώς εξελίσσονται οι απόπειρες σύνδεσης και να εντοπίσετε ξαφνικές
αιχμές ή μοτίβα που μπορεί να υποδεικνύουν μια επίθεση σε εξέλιξη.
Για να δημιουργήσετε μια οπτική αναπαράσταση αυτού του ερωτήματος στο Splunk
ακολουθήστε τα βήματα πλοηγηθείτε στην ενότητα dashboard και επιλέξτε δημιουργία νέου
dashboard. Επιλέξτε τον τύπο του γραφήματος που θέλετε να χρησιμοποιήσετε
όπως ένα γράφημα γραμμής ή ένα γράφημα στήλης χρησιμοποιήστε το ερώτημα
index=security_logs "failed password"
| timechart span=1h count by source ως την πηγή δεδομένων για το γράφημά σας.
Ορίστε ένα ουσιαστικό χρονικό εύρος όπως τις τελευταίες 24 ώρες για να παρέχετε τη σχετική
προβολή της δραστηριότητας που παρακολουθείτε. Το αναμενόμενο αποτέλεσμα είναι ένα γράφημα βάσει χρόνου
όπου μπορείτε να παρακολουθείτε αποτυχημένες απόπειρες σύνδεσης κατά
IP πηγής. Το γράφημα θα εμφανίσει ποιες διευθύνσεις IP
επιχειρούν συνδέσεις σε συγκεκριμένες ώρες και μπορείτε εύκολα να εντοπίσετε τυχόν διευθύνσεις IP
με μια ασυνήθιστα υψηλή συχνότητα αποτυχημένων αποπειρών.
Αυτές είναι πιθανό να είναι πηγές επιθέσεων brute force.
Με αυτή την οπτικοποίηση μπορείτε γρήγορα να εντοπίσετε τις πιο ενεργές και
δυνητικά κακόβουλες διευθύνσεις IP επιτρέποντάς σας να
λάβετε άμεση δράση όπως το μπλοκάρισμα της IP
ή την περαιτέρω διερεύνηση της δραστηριότητας.
Το Logstash είναι ένα ισχυρό εργαλείο στο ELK Stack σχεδιασμένο για εισαγωγή, επεξεργασία
και προώθηση δεδομένων log από πολλαπλούς πόρους.
Όταν ρυθμίζετε το Logstash να χειρίζεται logs από ένα firewall
παίζει ζωτικό ρόλο στη δόμηση πρωτογενών δεδομένων
log σε μορφές με νόημα και δυνατότητα αναζήτησης. Η διαδικασία ξεκινά με την
εγκατάσταση του Logstash στον server σας η οποία μπορεί να γίνει
χρησιμοποιώντας διαχειριστή πακέτων ή κατεβάζοντας απευθείας τα binaries.
Μόλις εγκατασταθεί προχωράτε στη διαμόρφωση του Logstash pipeline
το οποίο αποτελείται από τρεις κύριες ενότητες input, filter και output.
Στην ενότητα input το Logstash ρυθμίζεται να τραβάει logs από το log file του firewall
σας ή έξοδο syslog. Για παράδειγμα τα logs firewall συχνά αποθηκεύονται σε
αρχεία όπως /var/log/firewall.log
και το Logstash πρέπει να ενημερωθεί πού να τα βρει.
Η επιλογή start position beginning διασφαλίζει ότι το Logstash επεξεργάζεται τα logs
ξεκινώντας από την αρχή του αρχείου log.
Μόλις το Logstash έχει εισάγει τα logs η ενότητα filter μπαίνει στο παιχνίδι.
Εδώ μπορείτε να χρησιμοποιήσετε φίλτρα όπως το Grok για να αναλύσετε και να εξάγετε
συγκεκριμένα πεδία δεδομένων από τα πρωτογενή logs. Για παράδειγμα μπορεί να χρησιμοποιήσετε το Grok
φίλτρο για να τραβήξετε την IP πηγής, την IP προορισμού και την ενέργεια που λήφθηκε από
το firewall. Αυτό το βήμα είναι απαραίτητο για
τον μετασχηματισμό αδόμητων δεδομένων log σε δομημένα
πεδία που μπορούν να ευρετηριαστούν και να αναλυθούν. Τέλος η ενότητα output
της διαμόρφωσης καθορίζει πού θα πάνε τα αναλυμένα δεδομένα.
Σε αυτή την περίπτωση μπορείτε να διαμορφώσετε το Logstash να προωθεί τα επεξεργασμένα δεδομένα στο
Elasticsearch όπου θα ευρετηριαστούν και θα γίνουν διαθέσιμα για
αναζήτηση και ανάλυση. Τα logs συνήθως αποθηκεύονται σε ένα
index format όπως "firewall_logs-date" ή οποιοδήποτε όνομα
επιτρέποντας εύκολη οργάνωση και ερωτήματα με βάση την ημερομηνία που
τα logs δημιουργήθηκαν ή βάσει διαφορετικής τακτικής και μεθοδολογίας.
Μόλις η ρύθμιση ολοκληρωθεί και το Logstash επεξεργάζεται ενεργά τα logs
η έξοδος θα αποτελείται από δομημένα δεδομένα που μπορούν να ερωτηθούν και
να οπτικοποιηθούν χρησιμοποιώντας εργαλεία οπτικοποίησης όπως το Kibana.
Οι καταχωρήσεις firewall όπως μία με τη διεύθυνση IP
προορισμού και πηγής με ενέργεια αποδοχής (accept) θα σπάσουν σε
διαφορετικά πεδία καθιστώντας εύκολη την αναζήτηση για τάσεις, τον εντοπισμό μοτίβων
και την απόκτηση γνώσεων στα γεγονότα ασφαλείας δικτύου.
Αυτή η ενσωμάτωση Logstash και Elasticsearch σας επιτρέπει να δημιουργήσετε ένα ισχυρό
σύστημα διαχείρισης logs που ενισχύει την ικανότητά σας να παρακολουθείτε και
να ασφαλίζετε το δίκτυό σας. Μόλις τα logs ευρετηριαστούν στο Elastic
search μπορείτε να χρησιμοποιήσετε τις ισχυρές δυνατότητες ερωτημάτων του για να ανιχνεύσετε
πιθανές απειλές ασφαλείας. Κατασκευάζοντας στοχευμένα ερωτήματα μπορείτε
να εντοπίσετε ζητήματα ζωντανά όπως μη αυθεντικοποιημένη πρόσβαση
και απόπειρες brute force. Αυτά τα ερωτήματα επιτρέπουν αποδοτική
παρακολούθηση της δραστηριότητας δικτύου καθιστώντας ευκολότερο τον εντοπισμό
περιστατικών ασφαλείας. Ένας τρόπος ανίχνευσης ύποπτης δραστηριότητας είναι
η αναζήτηση για κίνηση από μια συγκεκριμένη διεύθυνση IP πηγής.
Για παράδειγμα χρησιμοποιώντας το ερώτημα source_ip:
και μετά τη διεύθυνση IP AND action:deny
θα φιλτράρει τα logs όπου κίνηση από τη διεύθυνση IP
τη συγκεκριμένη διεύθυνση απορρίφθηκε από το firewall.
Αυτό μπορεί να σας βοηθήσει να εντοπίσετε μια συγκεκριμένη πηγή εάν επιχειρεί
μη εξουσιοδοτημένη πρόσβαση ή προσπαθεί επανειλημμένα να παραβιάσει το firewall.
Μια τυπική έξοδος μπορεί να δείξει logs που υποδεικνύουν ότι αυτή η διεύθυνση IP
της έχει αρνηθεί η πρόσβαση πολλαπλές φορές σε διαφορετικούς προορισμούς
υποδηλώνοντας πιθανή κακόβουλη δραστηριότητα. Αυτοί οι τύποι logs είναι
χρήσιμοι για την ανίχνευση πρώιμων σημαδιών επίθεσης επιτρέποντας έγκαιρη
παρέμβαση. Ένα άλλο σημαντικό ερώτημα εστιάζει στην ανίχνευση ασυνήθιστων μοτίβων
πρόσβασης για συγκεκριμένες θύρες. Για παράδειγμα destination_port:80
AND action:allow ψάχνει για επιτρεπόμενη κίνηση που στοχεύει τη θύρα 80.
Καθώς η θύρα 80 χρησιμοποιείται συνήθως για κίνηση ιστού (web traffic) η παρακολούθησή της για
ασυνήθιστη δραστηριότητα μπορεί να αποκαλύψει αν υπάρχουν μη φυσιολογικά μοτίβα πρόσβασης
όπως συχνές συνδέσεις που μπορεί να μην ταιριάζουν με κανονική συμπεριφορά περιήγησης
ιστού. Τα αποτελέσματα μπορεί να δείξουν μια λίστα επιτρεπόμενων
καταχωρήσεων κίνησης αλλά είναι η συχνότητα και το πλαίσιο αυτών των συνδέσεων που
θα βοηθήσουν να καθοριστεί αν η δραστηριότητα είναι νόμιμη ή
ενδεικτική μιας απόπειρας εκμετάλλευσης. Εξετάζοντας τακτικά αυτά τα μοτίβα
οι διαχειριστές δικτύου μπορούν να εντοπίσουν τις παρατυπίες και να ανταποκριθούν.
Για να ανιχνεύσετε επιθέσεις brute force μπορείτε να ψάξετε για πολλαπλές
αποτυχίες σύνδεσης όπως είδαμε στο Splunk όπως source_ip AND action:deny
| stats count by source_ip. Αυτό το ερώτημα βοηθά στον εντοπισμό επαναλαμβανόμενων
απορριφθέντων αποπειρών σύνδεσης για μια συγκεκριμένη διεύθυνση IP ένα κοινό σημάδι
επίθεσης brute force. Τα αποτελέσματα μπορεί να δείξουν ότι η διεύθυνση
IP έχει κάνει έναν υψηλό αριθμό αποτυχημένων αποπειρών σύνδεσης
υποδεικνύοντας μια αυτοματοποιημένη επίθεση ή μια κακή ρύθμιση ασφαλείας που απαιτεί
προσοχή. Τέτοια ερωτήματα είναι ιδιαίτερα χρήσιμα
για τον εντοπισμό δραστηριοτήτων υψηλού κινδύνου και φυσικά
το ELK Stack μπορεί να μοντελοποιηθεί μπορεί να προσαρμοστεί
για να χρησιμοποιεί τα καλύτερα ερωτήματα που είναι δυνατά για την υποδομή.
Όπως είπαμε το Kibana είναι το ισχυρό εργαλείο για την οπτικοποίηση των δεδομένων που αποθηκεύονται στο
Elasticsearch στο ELK Stack και σας επιτρέπει να δημιουργείτε
διαδραστικά dashboards για να παρακολουθείτε και να αναλύετε τα γεγονότα.
Χρησιμοποιώντας το Kibana οι ομάδες ασφαλείας μπορούν εύκολα να εντοπίσουν τις τάσεις ανωμαλίες
και να παρακολουθούν βασικές μετρήσεις ασφαλείας σε πραγματικό χρόνο.
Για να ξεκινήσετε μπορείτε να ανοίξετε το Kibana και να πλοηγηθείτε στην ενότητα dashboard.
Από εκεί μπορείτε να δημιουργήσετε ένα νέο dashboard ειδικά για τις ανάγκες σας παρακολούθησης
γεγονότων ασφαλείας. Προσθέτοντας διάφορες οπτικοποιήσεις στο dashboard
θα σας βοηθήσει να παρακολουθείτε σημαντικά γεγονότα firewall και να αποκτήσετε
διαφορετικές γνώσεις για τη δραστηριότητα δικτύου. Μία από τις πρώτες οπτικοποιήσεις
που μπορεί να θέλετε να προσθέσετε είναι το ραβδόγραμμα (bar chart) για τις κορυφαίες
απορριφθείσες διευθύνσεις IP. Αυτό το γράφημα θα σας δείξει τις διευθύνσεις IP
πηγής στις οποίες έχει πιο συχνά
απορριφθεί η πρόσβαση από το firewall. Για να το διαμορφώσετε θα συγκεντρώσετε
δεδομένα κατά το πεδίο source IP και θα εμφανίσετε το πλήθος των ενεργειών άρνησης (deny).
Αυτό θα σας δώσει μια γρήγορη άποψη του ποιες διευθύνσεις IP επιχειρούν πρόσβαση
και μπλοκάρονται πιο συχνά ή δυνητικά επισημαίνοντας πηγές
ύποπτης δραστηριότητας. Μια άλλη χρήσιμη οπτικοποίηση είναι το
γράφημα πίτας (pie chart) για ανάλυση ενεργειών. Αυτό θα αναλύσει τις ενέργειες που λήφθηκαν
από το firewall όπως allow έναντι deny. Το γράφημα πίτας μπορεί να διαμορφωθεί
για να συγκεντρώνει δεδομένα κατά το πεδίο action παρέχοντας μια εύκολη στην ανάγνωση αναπαράσταση
της κατανομής των τύπων κίνησης. Αυτή η οπτικοποίηση είναι ιδιαίτερα
χρήσιμη για την κατανόηση της γενικής συμπεριφοράς του δικτύου της
δραστηριότητας του firewall για παράδειγμα. Τέλος μπορείτε να δημιουργήσετε ένα γράφημα γραμμής
για λεπτομερή αρνηθείσα πρόσβαση. Αυτή η οπτικοποίηση θα σας επιτρέψει να
παρακολουθείτε τον αριθμό των απορριφθέντων συνδέσεων ανά ημέρα
που μπορεί να σας βοηθήσει να εντοπίσετε τάσεις με την πάροδο του χρόνου.
Διαμορφώνοντας αυτό το γράφημα γραμμής με ένα χρονικό εύρος 24 ωρών ή πέντε ή
επτά ημερών θα σας επιτρέψει να παρακολουθείτε αν υπάρχουν τυχόν αιχμές στην απορριφθείσα κίνηση
που μπορεί να υποδεικνύουν συνεχιζόμενες ή επαναλαμβανόμενες προσπάθειες παραβίασης
του firewall ή των συστημάτων.