Σύνταξη κανόνα
Γρήγοροι σύνδεσμοι: <definition> , <operations>, <description>, <actions>
Ένας κανόνας είναι ένα σύνολο εκφράσεων που ορίζονται με χρήση γλώσσας βασισμένης σε XML. Το ESET PROTECT Web Console περιέχει ένα προκαθορισμένο σύνολο κανόνων, αλλά μπορείτε να προσθέσετε και να επεξεργαστείτε τους δικούς σας κανόνες.
Η γενική δομή του σώματος ενός κανόνα είναι:
<rule> <definition> |
Definition Ετικέτα
ancestor–μπορεί να λάβει ένα επιπλέον χαρακτηριστικό:
•distance—καθορίζει την πραγματική απόσταση από την τρέχουσα διεργασία του προγόνου με τον οποίο γίνεται η αντιστοίχιση, για παράδειγμα, το 1 είναι η γονική διεργασία, το 2 η διεργασία-παππούς κ.λπ. Εάν δεν καθοριστεί, η ιδιότητα αντιστοιχίζεται με όλους τους προγόνους της διεργασίας.
•unique—επιτρέπει στην ετικέτα ancestor να αφαιρεί διπλότυπες διεργασίες στο δέντρο προγόνων. Για παράδειγμα, το κακόβουλο λογισμικό δημιουργεί πολλαπλά στιγμιότυπα της ίδιας διεργασίας για να αποφύγει την ανίχνευση (explorer > cmd > cmd > cmd > malware) και αυτό το χαρακτηριστικό θα εξαλείψει αυτές τις διπλοεγγραφές (explorer > cmd > malware).
Process και parentprocess
Το τμήμα process επιτρέπει στους μηχανικούς ασφάλειας να περιορίζουν τα συμβάντα σε μια συγκεκριμένη διεργασία· επομένως, μπορείτε να γράφετε κανόνες όπως «Το Outlook δημιουργεί EXE αρχείο». Εάν το στοιχείο διεργασίας είναι κενό, τα parentprocess και operations αξιολογούνται για όλες τις διεργασίες.
Το parentprocess τμήμα είναι παρόμοιο με τη διεργασία, αλλά επιτρέπει στους μηχανικούς ασφαλείας να ελέγχουν τα χαρακτηριστικά της γονικής διεργασίας. Αυτό επιτρέπει κανόνες όπως «PowerShell, που εκκινήθηκε από το Word, συνδέεται στο διαδίκτυο».
process, parentprocess, ancestor και operation χρησιμοποιούν ένα στοιχείο έκφρασης για να περιγράψουν μια λογική έκφραση, η οποία αξιολογείται ώστε να ελεγχθεί εάν πρέπει να ενεργοποιηθεί μια ανίχνευση. Μια έκφραση αποτελείται από συνθήκες και λογικούς τελεστές. Μια συνθήκη ελέγχει την τιμή κάποιας ιδιότητας και οι λογικοί τελεστές ομαδοποιούν αυτές τις συνθήκες σε λογικές εκφράσεις.
Παράδειγμα έκφρασης:
<operator type="and"> |
Operations
Το τμήμα operations ορίζει ποιες λειτουργίες που εκτελούνται από μια διεργασία ενεργοποιούν τον δείκτη. Εάν είναι κενό, ο δείκτης ενεργοποιείται όταν η διεργασία δημιουργεί ένα συμβάν.
Οι λειτουργίες ορίζονται χρησιμοποιώντας ένα στοιχείο operation με ένα χαρακτηριστικό type και ένα στοιχείο expression.
<operation type="WriteFile">Expression</operation>
Για την πλήρη λίστα των υποστηριζόμενων λειτουργιών, ανατρέξτε στο θέμα Λειτουργίες.
Operator
Οι υποστηριζόμενοι λογικοί τελεστές είναι: AND, OR και NOT. Οι λογικοί τελεστές μπορούν να είναι ένθετοι. Επομένως, ένας λογικός τελεστής μπορεί να είναι όρισμα ενός άλλου λογικού τελεστή. Εκτός από τους λογικούς τελεστές, ένα στοιχείο συνθήκης μπορεί να χρησιμοποιηθεί ως όρισμα για λογικούς τελεστές. Μπορείτε να χρησιμοποιήσετε την ετικέτα τελεστή όπως φαίνεται σε αυτό το παράδειγμα:
<process> |
Τα στοιχεία συνθήκης αποτελούνται από τρία μέρη:
•Ιδιότητα του ορίσματος ή της διεργασίας της πράξης.
•Μια τιμή που καθορίζεται από τον συντάκτη του κανόνα.
•Σχέση μεταξύ της τιμής και της ιδιότητας.
Οι ιδιότητες ομαδοποιούνται ιεραρχικά σε «συστατικά».
Υπάρχουν τρία επίπεδα σοβαρότητας: 1–39 > Info, 40–69 > Warning και 70–100 > Threat.
Οι τύποι ιδιοτήτων και οι σχέσεις τους (χαρακτηριστικά συνθήκης) είναι:
|
is(not)set |
is(not) |
is(not)empty |
(not)starts |
(not)contains |
(not)ends |
less, lessOrEqual, greater, greaterOrEqual |
|---|---|---|---|---|---|---|---|
String |
✔ |
✔ |
✔ |
✔ |
✔ |
✔ |
|
Int |
✔ |
✔ |
|
|
✔ |
|
✔ |
Value |
✔ |
✔ |
✔ |
|
|
|
|
Bool |
✔ |
✔ |
|
|
|
|
|
Date |
✔ |
✔ |
|
|
|
|
✔ |
Σύνολο συμβολοσειρών |
✔ |
|
✔ |
|
✔ |
|
|
Διεύθυνση IPv4 |
✔ |
✔ |
✔ |
|
|
|
|
Διεύθυνση IPv6 |
✔ |
✔ |
✔ |
|
|
|
|
Σύνολο διευθύνσεων IPv4 |
✔ |
|
✔ |
|
✔ |
|
|
Σύνολο διευθύνσεων IPv6 |
✔ |
|
✔ |
|
✔ |
|
|
Description Ετικέτα
Η περιγραφή είναι υποχρεωτική και πρέπει να περιέχει όνομα και κατηγορία, αλλά τα υπόλοιπα είναι προαιρετικά. Είναι χρήσιμο να οριστούν τα πεδία που παρατίθενται παρακάτω, επειδή εμφανίζονται στις λεπτομέρειες:
name – Όνομα του κανόνα. Εμφανίζεται στη λίστα κανόνων.
category—Σας επιτρέπει να κατηγοριοποιείτε τους κανόνες. Μπορείτε να καθορίσετε τις δικές σας κατηγορίες.
explanation—Εξηγεί τον λόγο για τον οποίο ενεργοποιείται ο κανόνας.
os—Περιέχει το λειτουργικό σύστημα στο οποίο εφαρμόζεται ο κανόνας. Οι πιθανές τιμές είναι: Windows, Linux, OSX, ANY.
mitreattackid—Περιέχει το αναγνωριστικό του MITRE ATT&CK®.
maliciousCauses—Περιγράφει τα κακόβουλα αίτια του συμβάντος ή την αλλαγή που ενεργοποίησε τον κανόνα.
benignCauses—Περιγράφει τις καλοήθεις αιτίες του συμβάντος ή την αλλαγή που ενεργοποίησε τον κανόνα.
recommendedActions—Περιγράφει τις συνιστώμενες ενέργειες που πρέπει να εκτελεστούν από τους μηχανικούς ασφαλείας.
guid—χρησιμοποιείται για εσωτερικούς κανόνες. Οι εξωτερικοί κανόνες έχουν GUID που δημιουργείται αυτόματα. Χρησιμοποιείται για τη μοναδική αναγνώριση των κανόνων κατά την εξαγωγή/εισαγωγή.
maliciousTarget Ετικέτα
Μπορείτε να χρησιμοποιήσετε την ετικέτα maliciousTarget για να καθορίσετε τον στόχο που θα επηρεάζεται από προεπιλογή από τις ενέργειες προσαρμοσμένης απόκρισης. Για παράδειγμα, όταν επιλέγετε αποκλεισμό εκτελέσιμου, οι αλλαγές εξαρτώνται από το maliciousTarget. Δεν αλλάζει τη συμπεριφορά της ετικέτας ενεργειών (Actions Tag). Οι πιθανές τιμές είναι current, module, none και parent.
Η ετικέτα maliciousProcess έχει αντικατασταθεί από την ετικέτα maliciousTarget. Εξακολουθεί να υποστηρίζεται ως παλαιού τύπου (legacy), αλλά συνιστούμε να χρησιμοποιείτε την ετικέτα maliciousTarget.
Actions Ετικέτα
Η ετικέτα Actions σάς επιτρέπει να καθορίσετε ένα σύνολο ενεργειών που εκτελούνται όταν ενεργοποιείται ο κανόνας.
Μπορείτε να τοποθετήσετε ενέργειες σε ένα μόνο στοιχείο ενέργειας:
<action name="BlockProcessExecutable"/>
Εναλλακτικά, στοιβάξτε πολλά στοιχεία action σε ένα ενιαίο στοιχείο actions (όπως φαίνεται στο ακόλουθο παράδειγμα):
<actions> |
Πολλές ενέργειες μπορούν να ενεργοποιηθούν από έναν μόνο κανόνα.