Επιθέσεις

  • Ορισμός
  • Ποιος είναι ο τυπικός στόχος-θύμα μίας επίθεσης
  • Πότε Συμβαίνει Μια Επίθεση

Επιτιθέμενοι

  • Ποιοι Εξαπολύουν Επιθέσεις
  • Το προφίλ του τυπικού Επιτιθέμενου
  • Ποια είναι τα Κίνητρα των Επιτιθέμενων
  • Πως Λειτουργούν οι Επιτιθέμενοι

Vulnerabilities- Exploits

Κατηγοριοποίηση Των Επιθέσεων

Τοπικές - Απομακρυσμένες Επιθέσεις
Εσωτερικές - Εξωτερικές Επιθέσεις
Παθητικές - Ενεργητικές Επιθέσεις
Αναγνωριστικές - Penetration - ¶ρνησης Υπηρεσιών Επιθέσεις
Αυτοματοποιημένες - Χειροκίνητες Επιθέσεις

Scanners Και Scanning

  • Scanners-Ορισμός
  • Χαρακτηριστικά των Scanners
  • Πλατφόρμες και Απαιτήσεις του Συστήματος
  • Νομιμότητα και Χρησιμότητα των Scanners
  • Scanning-Ορισμός
  • Τύποι Scanning

(Distributed) Denial Of Service [(D)DoS] Attacks

IP Spoofing

Επίπεδα Ευαισθησίας Μίας Επίθεσης

 
Επιθέσεις

 

Επίθεση είναι οποιαδήποτε προσπάθεια για παραβίαση της εμπιστευτικότητας, ακεραιότητας ή διαθεσιμότητας ενός συστήματος ή ενός δικτύου.
Επίσης είναι οποιαδήποτε μη εξουσιοδοτημένη ενέργεια που έχει σκοπό να εμποδίσει, να παρακάμψει ή να αχρηστεύσει τους μηχανισμούς ασφάλειας και ελέγχου πρόσβασης ενός συστήματος ή ενός δικτύου.

Σημείωση - Ορισμός
Εμπιστευτικότητα (Confidentiality)
Μία επίθεση προκαλεί την παραβίαση της εμπιστευτικότητας, όταν ο επιτιθέμενος αποκτά πρόσβαση σε πληροφορίες για τις οποίες δεν είναι εξουσιοδοτημένος από τον κάτοχό τους.

Ακεραιότητα (Integrity)
Μία επίθεση προκαλεί παραβίαση της ακεραιότητας, όταν επιτρέψει στον (μη εξουσιοδοτημένο) επιτιθέμενο να αλλάξει την κατάσταση του συστήματος ή οποιασδήποτε πληροφορίας βρίσκεται σε αυτό.

Διαθεσιμότητα (Availability)
Μια επίθεση προκαλεί την παραβίαση της διαθεσιμότητας, όταν μέσω αυτής δεν επιτρέπεται στους εξουσιοδοτημένους χρήστες να έχουν πρόσβαση σε συγκεκριμένους πόρους του συστήματος όταν, όποτε και με τον τρόπο που έχουν εξουσιοδοτηθεί.

Μηχανισμοί Ασφάλειας και Ελέγχου Πρόσβασης (Control)
Μία επίθεση προκαλεί την παραβίαση των μηχανισμών ασφάλειας, όταν μέσω αυτής, ο (μη εξουσιοδοτημένος) επιτιθέμενος αποκτά πρόσβαση στους μηχανισμούς ελέγχου της πρόσβασης του συστήματος.
Η παραβίαση των μηχανισμών ασφαλείας μπορεί να οδηγήσει σε παραβίαση της Εμπιστευτικότητας, Ακεραιότητας ή της Διαθεσιμότητας .


Ποιος είναι ο τυπικός στόχος-θύμα μίας επίθεσης

Ο στόχος μίας επίθεσης ποικίλει ανάλογα με τις ικανότητες και τους σκοπούς του κάθε επιτιθέμενου, καθώς και τον βαθμό δυσκολίας της υλοποίησης της επίθεσης όσο αναφορά τα μέτρα ασφάλειας που πρέπει να αντιμετωπιστούν.
Παρόλα αυτά οι πιο συνήθεις στόχοι μίας επίθεσης μπορεί να είναι:

Μικρά Τοπικά Δίκτυα LAN's
Κυρίως γιατί χαρακτηρίζονται από ανεπαρκή μέτρα ασφάλειας, καθώς ξοδεύονται μικρά χρηματικά ποσά για την ασφάλειά τους.
Επίσης οι διαχειριστές τους ενώ έχουν ευρεία γνώση για την LAN τεχνολογία και τους τρόπους δικτύωσης και διαχείρισης τέτοιων δικτύων, συνήθως έχουν περιορισμένη γνώση όσο αναφορά την διασύνδεση των δικτύων τους με το υπόλοιπο Internet και την λειτουργία των πρωτοκόλλων του TCP/IP.

Πανεπιστήμια
Κυρίως γιατί αποτελούνται από έναν μεγάλο αριθμό από δικτυωμένα συστήματα, προσφέροντας αυξημένη επεξεργαστική ισχύ που μπορεί ο επιτιθέμενος να εκμεταλλευτεί.
Επίσης ένα πανεπιστήμιο φιλοξενεί πολυάριθμους χρήστες με εξουσιοδοτημένους λογαριασμούς, οι οποίοι συνήθως είτε δεν ελέγχονται ικανοποιητικά για την δραστηριότητά τους, είτε δεν έχουν επαρκή γνώση για τους κινδύνους που προκύπτουν από την λανθασμένη χρήση των συστημάτων και των υπηρεσιών που αυτά παρέχουν, με αποτέλεσμα να δημιουργούνται τρύπες ασφάλειας που μπορεί ο επιτιθέμενος να εκμεταλλευτεί.

Κυβερνητικά Sites ή διάφοροι μεγάλοι οργανισμοί
Τέτοιου είδους στόχοι αποτελούν πρόκληση για τους επιτιθέμενους, καθώς μία επιτυχής επίθεση θα μπορούσε να έχει ως αποτέλεσμα την συλλογή κρίσιμων και απόρρητων πληροφοριών που θα μπορούσε ο επιτιθέμενος να εκμεταλλευτεί με σκοπό το κέρδος. Τέτοιου είδους πληροφορίες θα μπορούσε να ήταν αριθμοί πιστωτικών καρτών από μία τράπεζα ή απόρρητα έγγραφα ενός κυβερνητικού οργανισμού.
Η αποστολή του επιτιθέμενου σε αυτήν την περίπτωση είναι σαφώς πιο δύσκολη και θα έχει μεγαλύτερο ρίσκο, καθώς τέτοιου είδους οργανισμοί συνήθως χαρακτηρίζονται από πολύ ισχυρά μέτρα ασφάλειας που είναι δύσκολο να παραβιαστούν. Για αυτόν τον λόγο η επιτυχία μίας επίθεσης με έναν τέτοιο στόχο, θα συνέβαλε θετικά στο γόητρο και την φήμη του επιτιθέμενου.


Πότε Συμβαίνει Μια Επίθεση.

Μία επίθεση σε κάποιο δίκτυο ή σύστημα θα μπορεί να συμβεί οποιαδήποτε στιγμή αυτό είναι συνδεδεμένο στο Internet. Τα σημερινά δίκτυα συνήθως συνδέονται στο Internet 24 ώρες την ημέρα.
Η καταλληλότερη ώρα για να γίνει μια επίθεση, εφόσον γίνεται από κάποιον απομακρυσμένο χρήστη, είναι αργά το βράδυ σε σχέση με την τοποθεσία το στόχου.
Αυτό συμβαίνει για τους παρακάτω λόγους :

  • Την ημέρα οι υποψήφιοι επιτιθέμενοι έχουν συνήθως άλλες ασχολίες της καθημερινής του ζωής, όπως την δουλειά τους ή το σχολείο τους.
  • Αργά το βράδυ υπάρχει μικρότερη δικτυακή κίνηση στο υποψήφιο δίκτυο-στόχο, άρα μεγαλύτερη ταχύτητα μεταφοράς δεδομένων που μπορεί ο επιτιθέμενος να εκμεταλλευτεί προς όφελός του.
  • Το βράδυ δεν υπάρχουν χρήστες που χρησιμοποιούν τα συστήματα του δικτύου τα οποία θα στοχεύσει ο επιτιθέμενος, κάτι που του επιτρέπει να ενεργεί χωρίς η δραστηριότητα του να μπορεί να γίνει άμεσα αντιληπτή από κάποιον χρήστη που δουλεύει στο ίδιο μηχάνημα. Επίσης του δίνεται η δυνατότητα να χρησιμοποιεί όλη την επεξεργαστική ισχύ του συστήματος για να εκτελέσει τις ενέργειές του.
  • Συνήθως αυτή την ώρα δεν υπάρχει κάποιος αρμόδιος υπεύθυνος στο επιτιθέμενο δίκτυο, ώστε να μπορέσει να ανιχνεύσει έγκαιρα την επίθεση και να αντιδράσει.
[Πίσω]
 

Επιτιθέμενοι



Ποιοι Εξαπολύουν Επιθέσεις

Οι επιθέσεις πραγματοποιούνται από άτομα που έχουν πρόσβαση στους στόχους τους μέσω του Internet, από εξουσιοδοτημένους χρήστες που προσπαθούν να αποκτήσουν περισσότερα δικαιώματα από αυτά που τους έχουν δοθεί και από εξουσιοδοτημένους χρήστες οι οποίοι εκμεταλλεύονται τα δικαιώματα που τους έχουν δοθεί με κακό σκοπό.

Συνήθως αυτοί που πραγματοποιούν τις επιθέσεις είναι γνωστοί ως Hackers ή Crackers. Παρόλο που αυτοί ο όροι λανθασμένα χρησιμοποιούνται κατά κόρον για να χαρακτηριστούν οι κακόβουλοι χρήστες, υπάρχουν διάφορες απόψεις που διαφοροποιούν την σημασία των δύο όρων.
Η πιο κοινά αποδεκτή προσέγγιση για τον διαχωρισμό των δύο παραπάνω εννοιών είναι η παρακάτω:

Hackers θεωρούνται αυτοί που συνεχώς προσπαθούν να διευρύνουν την γνώση τους γύρω από τον τρόπο λειτουργίας, οπουδήποτε υπολογιστικού συστήματος, λειτουργικού συστήματος ή λογισμικού γενικότερα. Μέσα από εξαντλητική χρήση των παραπάνω και εξέταση των λειτουργιών τους σε βάθος, εντοπίζουν διάφορα ελαττώματα και ατέλειες που μπορεί αυτά να έχουν, τις οποίες γνωστοποιούν στο ευρύ κοινό ώστε να διορθωθούν από τους αρμόδιους. Συνήθως οι Hackers έχουν ανεπτυγμένες προγραμματιστικές ικανότητες και ευρεία γνώση και ενθουσιασμό για αυτό που κάνουν.
Σημαντικό χαρακτηριστικό των Hackers είναι ότι διαχέουν την γνώση που προκύπτει από την δραστηριότητά τους και σε καμία περίπτωση με τις ενέργειές τους δεν προκαλούν εθελημένα κάποια ζημιά σε άλλους.


Crackers είναι οι Hackers που χρησιμοποιούν τις ικανότητές τους με κακόβουλους σκοπούς. Παραβιάζουν συστήματα στα οποία δεν έχουν εξουσιοδοτημένη πρόσβαση και προκαλούν προβλήματα σε αυτά και στους νόμιμους χρήστες τους.

Συνήθως οι Hackers είναι γνωστοί και σαν Whitehats ενώ οι Crackers σαν Blachats.

Ένας άλλος όρος που επίσης χρησιμοποιείται για να χαρακτηρίσει μία ομάδα χρηστών, οι οποίοι λειτουργούν με κακόβουλες προθέσεις, είναι ο όρος Script Kiddies.

Script Kiddy είναι ο χρήστης που πραγματοποιεί επιθέσεις χρησιμοποιώντας έτοιμες, γνωστές τεχνικές και μεθόδους που έχουν ανακαλυφθεί και χρησιμοποιηθεί πρωτύτερα από άλλους.
Οι ικανότητες ενός Script Kiddy είναι συνήθως κατώτερου επιπέδου από αυτές ενός μέτριου χρήστη ηλεκτρονικού υπολογιστή και στις περισσότερες των περιπτώσεων δεν έχει ιδιαίτερες γνώσεις για αυτό που κάνει.
Για να πραγματοποιήσει τον στόχο του χρησιμοποιεί έτοιμα εργαλεία που αυτοματοποιούν την διαδικασία της επίθεσης, ελπίζοντας να κερδίσει το επιθυμητό αποτέλεσμα χωρίς να καταλαβαίνει τον τρόπο με τον οποίο αυτό συνέβη.
Το μεγαλύτερο μέρος της ύποπτης δραστηριότητας που παρατηρείται στο Internet οφείλεται στον μεγάλο αριθμό των Script Kiddies που υπάρχουν, ενώ ο βαθμός κινδύνου που προκύπτει από τις ενέργειές τους, είναι συνυφασμένος με την αυξημένη περιέργεια και τον ενθουσιασμό που τους διακρίνει, καθώς και από την επικινδυνότητα των εργαλείων που έχουν στην διάθεσή τους.


Το προφίλ του τυπικού Επιτιθέμενου.

Στη συνέχεια περιγράφονται τα χαρακτηριστικά που σχηματίζουν το προφίλ ενός τυπικού επιτιθέμενου. Σε αυτήν την περιγραφή στον όρο επιτιθέμενος δεν συμπεριλαμβάνονται οι Script Kiddies.

  • Γνωρίζει να προγραμματίζει και να κατανοεί προγράμματα σε C ,C++ και Perl, κυρίως γιατί τα περισσότερα εργαλεία ασφάλειας είναι γραμμένα σε αυτές τις γλώσσες.
  • Έχει αρκετή γνώση για το πώς δουλεύει το TCP/IP και γενικότερα το Internet.
  • Χρησιμοποιεί το Internet πολλές ώρες τον μήνα και έχει πλήρη γνώση του συστήματός του.
  • Γνωρίζει καλά την χρήση και τον τρόπο λειτουργίας τουλάχιστον δύο λειτουργικών συστημάτων, το ένα από τα οποία είναι το Unix ή τοVMS. Το είδος των λειτουργικών συστημάτων που συνήθως οι επιτιθέμενοι χρησιμοποιούν έχει να κάνει με το κόστος απόκτησής τους και τις δυνατότητες που τους προσφέρουν για να πραγματοποιήσουν τις ενέργειές τους. Μερικά από αυτά τα συστήματα μπορεί να είναι:

Macintosh
Δεν προσφέρει αρκετά εργαλεία.

SUN (Solaris X86 ή SCO)
Βρίσκονται εύκολα και με μικρό κόστος ιδιαίτερα για τους μαθητές.

UNIX
Χρειάζονται λίγη RAM για να έχουν καλή απόδοση, ενώ προσφέρουν μία μεγάλη γκάμα από εργαλεία.

Microsoft
(Windows 9x και κυρίως Windows NT/2000)
Προσφέρουν πολλά εργαλεία ενώ τα NT είναι πιο αξιόπιστα.
Επίσης είναι χρήσιμο για τους επιτιθέμενους να γνωρίζουν τα NT/2000 καθώς χρησιμοποιούνται σε πολλά δίκτυα που θέλουν να επιτεθούν.

  • Οι πιο έμπειροι έχουν ή είχαν κάποια δουλειά σχετική με την διαχείριση υπολογιστικών συστημάτων και δικτύων ή την ανάπτυξη κώδικα για εφαρμογές.
  • Συλλέγει παλιό hardware και software υλικό καθώς αυτό μπορεί να προσφέρει λειτουργίες που δεν προσφέρονται στα νεότερα.

Ποια είναι τα Κίνητρα των Επιτιθέμενων

Οι λόγοι που οδηγούν κάποια άτομα να εκτελούν επιθέσεις βασίζονται σε κίνητρα που διαφέρουν για τον καθένα και έχουν να κάνουν τόσο με την προσωπικότητα του κάθε επιτιθέμενου, όσο και με το κέρδος που προκύπτει από αυτές τις ενέργειες.
Οι πιο συνήθης λόγοι είναι οι παρακάτω.

Από Κακία ή Εκδίκηση
Σε αυτήν την περίπτωση ο επιτιθέμενος νιώθει μίσος για τον στόχο του και θέλει να προκαλέσει ζημιά σε αυτόν, συνήθως παίρνοντας με αυτόν τον τρόπο εκδίκηση για κάποιο γεγονός που συνέβη στο παρελθόν και για το οποίο νιώθει ότι αδικήθηκε.
Ένα τέτοιο παράδειγμα θα μπορούσε να είναι ένας υπάλληλος μίας εταιρίας που απολύθηκε και θέλει να πάρει εκδίκηση.

Για το Γόητρο
Διεισδύοντας σε υποτιθέμενα γνωστά καλά ασφαλισμένα δίκτυα, προσπαθούν να εντυπωσιάσουν τους ομοειδής τους και να διευρύνουν την φήμη τους. Κάτι τέτοιο θα μπορούσε να τους βοηθήσει και στην μετέπειτα επαγγελματική τους καριέρα.

Για το Κέρδος
Υπάρχουν εταιρίες που στα πλαίσια του ανταγωνισμού με τους αντίπαλούς τους, προσλαμβάνουν επαγγελματίες crackers με σκοπό να εισβάλουν στα συστήματα του ανταγωνιστή και να κατασκοπεύσουν τα σχέδιά του, ή ακόμα και να του προκαλέσουν προβλήματα και καταστροφές.

Από Περιέργεια ή Χόμπι
Είναι αρκετοί που πραγματοποιούν τέτοιου είδους ενέργειες είτε γιατί δεν έχουν κάτι καλύτερο να κάνουν και θέλουν να ξεφύγουν από την ανία τους, είτε γιατί διακατέχονται από αυξημένη περιέργεια και τους αρέσει να ΄ψάχνουν τα ξένα πράγματα΄.
Τέτοιου είδους άτομα, συνήθως δεν γνωρίζουν αρκετά για αυτό που κάνουν και αγνοούν τους κινδύνους που προκύπτουν από αυτήν την δραστηριότητά τους καθώς θεωρείται παράνομη και μπορεί να οδηγήσει στην νομική δίωξή τους.

Για Πολιτικούς Λόγους
Τέτοιου είδους δραστηριότητα έχει στόχο κυρίως κυβερνητικούς οργανισμούς, και έχει να κάνει με ιδεολογικά κίνητρα, που οδηγούν σε εκδηλώσεις διαμαρτυρίας ή σε ενέργειες κατασκοπίας και τρομοκρατίας.


Πως Λειτουργούν οι Επιτιθέμενοι

Οι περισσότεροι επιτιθέμενοι ανήκουν στην κατηγορία των Script Kiddies, οι οποίοι ανταλλάζουν πληροφορίες μεταξύ τους μέσω του διαδικτύου και παίρνουν την γνώση τους από άλλους που έχουν ενεργήσει πριν από αυτούς.
Επίσης χρησιμοποιούν έτοιμα εργαλεία και τεχνικές που άλλοι έχουν επινοήσει και εφαρμόσει στο παρελθόν.

Τέτοιου είδους επιτιθέμενοι συνήθως αντιμετωπίζονται με μεγαλύτερη ευκολία, καθώς οι μέθοδοι και τα εργαλεία που χρησιμοποιούν είναι γενικότερα γνωστά και στους υπεύθυνους ασφάλειας των περισσοτέρων δικτύων.

Παρόλα αυτά όμως υπάρχουν και crackers που φτιάχνουν δικά τους εργαλεία και χρησιμοποιούν δικές τους μεθόδους ή χρησιμοποιούν συνδυασμούς μεθόδων κάνοντας έτσι δυσκολότερη την ανίχνευση τους.

Συνήθως οι σοβαροί Crackes κάνουν διάφορες προσποιητές επιθέσεις πριν εξαπολύσουν την κύρια επίθεσή τους, με σκοπό να εντοπίσουν πως ανταποκρίνονται τα διάφορα μέτρα ασφάλειας του δικτύου που σχεδιάζουν να επιτεθούν.
Επίσης εκτελούν πολλαπλό scanning (ενέργειες με τις οποίες ψάχνουν για ανοιχτές πόρτες και αδυναμίες σε ένα σύστημα ) από διάφορες ψεύτικες IP διευθύνσεις, σε διαφορετικές χρονικές στιγμές, έτσι ώστε να μην γίνονται εύκολα αντιληπτοί. Το scanning θα παρουσιαστεί με λεπτομέρεια παρακάτω.

[Πίσω]
 
Vulnerabilities - Exploits

 

Τι είναι όμως αυτό που επιτρέπει στους επιτιθέμενους να ενεργήσουν και καθιστά δυνατή την υλοποίηση μίας επίθεσης;
Σε αυτό το σημείο είναι που εμφανίζονται οι όροι vulnerability και exploit.

Vulnerability είναι η αδυναμία που προκύπτει από την ύπαρξη ενός ελαττώματος ή προβλήματος, η εκμετάλλευσή της οποίας μπορεί να οδηγήσει στην παραβίαση ενός συστήματος.

Exploit είναι η μέθοδος με την οποία επιτυγχάνεται η εκμετάλλευση μίας αδυναμίας και υλοποιείται μία επίθεση. Από την στιγμή που θα ανακαλυφθεί ένα vulnerability δημιουργείται και το ανάλογο exploit που μπορεί να την εκμεταλλευτεί, το οποίο θα χρησιμοποιηθεί σε μία επίθεση.

Τα vulnerabilities προκύπτουν, από ελαττώματα που υπάρχουν σε διάφορα λογισμικά που οφείλονται σε προγραμματιστικά λάθη, από λάθη που γίνονται στην ρύθμιση των συστημάτων, από ατέλειες σχεδιασμού λογισμικών ή από ανεπαρκή μέτρα ασφάλειας. Πιο αναλυτικά:

  • Ελαττώματα στην ανάπτυξη Λογισμικών
    Τα ελαττώματα που παρουσιάζουν διάφορα λογισμικά τις περισσότερες φορές οφείλονται σε προγραμματιστικά λάθη κατά την ανάπτυξή τους.
    Τέτοιου είδους ελαττώματα μπορούν να κατηγοριοποιηθούν με τον εξής τρόπο:

    Buffer Overflows
    Τα Buffer Overflows ίσως αποτελούν τον στόχο των περισσότερων exploits. Τα Buffer Overflows προκύπτουν από την ανεξέλεγκτη είσοδο δεδομένων που χειρίζεται μία μεταβλητή σε ένα πρόγραμμα, που μπορεί να οδηγήσει σε απρόσμενη συμπεριφορά του προγράμματος.
    Όταν τα δεδομένα που δίνονται από τον χρήστη σε μία μεταβλητή σαν είσοδο, ξεπεράσουν τα όρια της μεταβλητής αυτής, μπορεί η εκτέλεση του προγράμματος να υπερπηδήσει σε κάποιο σημείο της μνήμης του συστήματος εκτός του προγράμματος.
    Αν η ποσότητα των δεδομένων αυτών είναι κατάλληλα υπολογισμένη θα μπορούσε να δώσει την ευκαιρία στον επιτιθέμενο ακόμα και να πάρει τον έλεγχο του συστήματος.
    Τέτοιου είδους προβλήματα παρουσιάζουν γλώσσες προγραμματισμού όπως η C, στην οποία ο έλεγχος των ορίων μίας μεταβλητής δεν γίνεται από τους εσωτερικούς μηχανισμούς της γλώσσας, αλλά είναι στην ευθύνη του προγραμματιστή.

    Απρόσμενη Είσοδο Δεδομένων
    Τέτοιου είδους προβλήματα προκύπτουν όταν ένα πρόγραμμα δεν είναι έτσι σχεδιασμένο ώστε να μπορεί να χειρίζεται όλους τους πιθανούς συνδυασμούς με τους οποίους ο χρήστης μπορεί να δώσει δεδομένα σαν είσοδο σε αυτό. Κάθε πρόγραμμα κατά τον σχεδιασμό του και μετά το τέλος της υλοποίησής του θα πρέπει να δοκιμάζεται και να ελέγχεται εξονυχίστηκα, ώστε να αποτρέπονται προβλήματα που μπορεί να δημιουργηθούν από την μη φυσιολογική χρήση του προγράμματος.

  • Ελαττώματα στην ρύθμιση των συστημάτων και των υπηρεσιών που προσφέρουν

    Τέτοιου είδους προβλήματα προκύπτουν από:

    Εξ ‘ορισμού Ρυθμίσεις
    Οι εξ ορισμού ρυθμίσεις που έχουν τα περισσότερα συστήματα κατά την απόκτησή τους είναι συνήθως ανεπαρκείς και παρουσιάζουν αρκετά προβλήματα ασφάλειας. Ένα τέτοιο παράδειγμα μπορεί να αποτελεί η απόκτηση ενός Windows ΝΤ/2000 συστήματος. Η πρώτη προτεραιότητα σε αυτήν την περίπτωση θα ήταν το σύστημα αυτό να ενημερωθεί με τα τελευταία Service Packs που το αφορούν.

    Λανθασμένη διαχείριση ενός συστήματος.
    Πολλοί διαχειριστές συστημάτων, είτε γιατί έχουν άγνοια, είτε γιατί δεν ενδιαφέρονται αρκετά, δεν ενημερώνουν τακτικά τα συστήματά τους με νέες διορθώσεις ασφάλειας σε πιθανές αδυναμίες που αυτά μπορεί να έχουν. Επίσης δεν τηρούν κάποιους βασικούς κανόνες ασφάλειας στα συστήματα που διαχειρίζονται, όπως την εφαρμογή ασφαλών passwords στους λογαριασμούς των χρηστών και δεν παρακολουθούν συστηματικά τα αρχεία καταγραφής των συστημάτων αυτών.

    Ύπαρξη υπηρεσιών που δεν χρειάζονται.
    Πολλά προβλήματα μπορεί να προκύψουν όταν ένα σύστημα τρέχει υπηρεσίες οι οποίες δεν είναι χρήσιμες και δεν χρησιμοποιούνται από κάποιον. Αυτές οι υπηρεσίες πρέπει σε κάθε περίπτωση να απενεργοποιούνται. Με αυτόν τον τρόπο ελαχιστοποιείται ο κίνδυνος που προκύπτει από την εκμετάλλευση μίας αδυναμίας που μπορεί να έχει κάποια από αυτές τις υπηρεσίες. Επίσης οι υπηρεσίες που είναι ενεργές και δεν χρησιμοποιούνται συνήθως δεν ελέγχονται από τον διαχειριστή του συστήματος και δεν ενημερώνονται με νέες διορθώσεις που μπορεί να υπάρχουν για αυτές.

  • Ατέλειες στον αρχικό σχεδιασμό λογισμικού

    Ακόμα και αν ένα λογισμικό είναι σωστό σύμφωνα με τον σχεδιασμό του υπάρχει η πιθανότητα ο ίδιος ο σχεδιασμός να έχει ατέλειες. Ένα αντιπροσωπευτικό παράδειγμα αποτελεί ο σχεδιασμός των πρωτοκόλλων του TCP/IP.
    Την εποχή που τα πρωτόκολλα αυτά σχεδιάστηκαν, οι ανάγκες που απαιτούνταν να καλύψουν, τόσο σε θέματα λειτουργικότητας όσο και ασφάλειας, ήταν πολύ λιγότερες από αυτές που προκύπτουν σήμερα με την ραγδαία ανάπτυξη του Internet και των υπηρεσιών που προσφέρει.
  • Ανεπαρκή μέτρα ασφάλειας

    Πολλά προβλήματα μπορούν να προκύψουν από την εφαρμογή ανεπαρκών μέτρων ασφάλειας σε ένα σύστημα ή ένα δίκτυο. Πολλοί θεωρούν ότι η εφαρμογή ενός Firewall σε ένα δίκτυο είναι αρκετή για να το προστατέψει επαρκώς από κάθε είδους επιθέσεις που μπορεί να έχουν στόχο το δίκτυο αυτό. Αυτή είναι μία λανθασμένη προσέγγιση που μπορεί να οδηγήσει σε ανεπιθύμητα αποτελέσματα.


Από τα παραπάνω γίνεται εμφανές ότι τα vulnerabilities μπορούν να προέρχονται από διάφορες πηγές, ενώ καθημερινά εμφανίζονται και νέα, για κάθε ένα από τα οποία υπάρχει και το ανάλογο exploit που μπορεί να οδηγήσει σε μία πετυχημένη επίθεση.
Οι εταιρίες ανάπτυξης λογισμικού κάθε τόσο διανέμουν μέσω του διαδικτύου διάφορες διορθώσεις σε vulnerabilities που γνωστοποιούνται για τα προϊόντα τους, οι οποίες πρέπει να παρακολουθούνται συστηματικά και να λαμβάνονται σοβαρά υπόψη από τους διαχειριστές και τους υπεύθυνους ασφάλειας συστημάτων.

Η σημερινή εποχή χαρακτηρίζεται από έναν συνεχή αγώνα, της μίας πλευράς για την ανακάλυψη νέων vulnerabilities και εκμετάλλευσης αυτών και της άλλης πλευράς για την διόρθωσή τους και την προστασία από τα exploits που τα εκμεταλλεύονται.

[Πίσω]
 
Κατηγοριοποίηση των Επιθέσεων


Στις επόμενες σελίδες θα γίνει μία προσπάθεια κατηγοριοποίησης των διαφόρων ειδών επιθέσεων. Οι επιθέσεις μπορούν να ταξινομηθούν λαμβάνοντας υπόψη διαφορετικούς παράγοντες κάθε φορά, οι οποίοι έχουν να κάνουν με την θέση των συστημάτων που παίρνουν μέρος σε μία επίθεση, τον τρόπο που υλοποιείται μία επίθεση, την αλληλεπίδραση του επιτιθέμενου με τον στόχο, αλλά και τα αποτελέσματα μίας επίθεσης.


Τοπικές - Απομακρυσμένες Επιθέσεις

Ο διαχωρισμός αυτός έχει να κάνει με την θέση του επιτιθέμενου σε σχέση με τον στόχο του.

Τοπικές είναι οι επιθέσεις στις οποίες ο επιτιθέμενος έχει φυσική πρόσβαση στο σύστημα στο οποίο επιτίθεται. Στόχος του είναι είτε να αποκτήσει δικαίωμα πρόσβασης στο σύστημα ενώ δεν είναι εξουσιοδοτημένος για κάτι τέτοιο, είτε να αποκτήσει περισσότερα δικαιώματα από αυτά που του έχουν δοθεί ή να χρησιμοποιήσει τα δικαιώματα που του έχουν δοθεί με κακόβουλες προθέσεις.
Η πιο συνηθισμένη μέθοδος για να καταφέρει κάτι τέτοιο είναι με το να αποκτήσει το password (συνθηματικό) ενός εξουσιοδοτημένου λογαριασμού με περισσότερα δικαιώματα από τα δικά του. Η μέθοδος αυτή είναι γνωστή με τον όρο password stealing.
Υπάρχουν διάφορες τεχνικές που κάποιος μπορεί να αποκτήσει ένα password που ανήκει σε κάποιον άλλον και οι περισσότερες από αυτές χρησιμοποιούν εργαλεία που αυτοματοποιούν την διαδικασία. Μερικές από αυτές τις τεχνικές αναφέρονται παρακάτω:

Τεχνικές Password Stealing

Social Engineering
Αυτή είναι μία από τις λιγότερο κοπιαστικές αλλά και πιο σπάνια επιτυχείς τεχνικές. Στην προκειμένη περίπτωση ο επιτιθέμενος καλεί στο τηλέφωνο το κέντρο διαχείρισης του δικτύου και προσποιείται ότι είναι ο κάτοχος του συστήματος. Υποστηρίζοντας ένα αρκετά πειστικό σενάριο, προφασίζεται ότι ξέχασε το password του λογαριασμού του και ότι είναι άμεσα επείγον να του το υπενθυμίσουν ή να το απενεργοποιήσουν ώστε να μπορέσει να ορίσει ένα άλλο. Η τεχνική αυτή έχει λειτουργήσει ικανοποιητικά στο παρελθόν ενώ σήμερα είναι μάλλον απίθανο κάποιος αρμόδιος σε ένα κέντρο διαχείρισης να πέσει σε αυτήν την παγίδα.

Ανεύρεση εύκολων passwords
Αυτή είναι επίσης μία αρκετά εύκολη τεχνική και πολλές φορές έχει θετικά αποτελέσματα. Ο επιτιθέμενος αυτό που έχει να κάνει είναι να προσπαθήσει να μαντέψει το password κάποιου χρήστη. Πολλοί χρήστες που έχουν άγνοια για την καθοριστική σημασία των passwords, επιλέγουν απλά και ανεπαρκή passwords που βάζουν σε κίνδυνο την ασφάλεια του συστήματος. Τέτοια passwords μπορεί να είναι κάποιοι αριθμοί, η ημερομηνία γέννησης του χρήστη, το όνομά του κλπ. Ο επιτιθέμενος το μόνο που έχει να κάνει είναι να δοκιμάσει μερικά από τα κλασσικά passwords που συχνά χρησιμοποιούν αδαής χρήστες μέχρι που να καταφέρει να μπει στο σύστημα.


Dictionary Attacks
Η τεχνική αυτή είναι παρόμοια με την προηγούμενη μόνο που σε αυτήν την περίπτωση ο επιτιθέμενος χρησιμοποιεί ένα εργαλείο που την υλοποιεί. Τέτοιου είδους εργαλεία ονομάζονται password crackers και συνήθως χρησιμοποιούν μία βάση γνώσης η οποία αποτελείται από όλες τις λέξεις ενός λεξικού (συνήθως του Αγγλικού). Ο μηχανισμός του εργαλείου αυτού θα δοκιμάσει όλες τις λέξεις του λεξικού μέχρι να βρει αυτή που αντιστοιχεί στο password.
Αυτό μπορεί να το κάνει με δύο τρόπους. Με τον 1ο θα δοκιμάζει κάθε λέξη που ελέγχει, αν θα του επιτρέψει να μπει στο σύστημα. Αυτό σημαίνει ότι θα κάνει πολλαπλές προσπάθειες για login. Με τον 2ο τρόπο ο επιτιθέμενος θα πρέπει να έχει πρόσβαση στο αρχείο του συστήματος που διατηρεί τα passwords όλων των χρηστών σε κρυπτογραφημένη μορφή. Στην συνέχεια το password cracker, κάθε λέξη του λεξικού που ελέγχει την κρυπτογραφεί και εξετάζει αν αυτή ταιριάζει με κάποια από τα κρυπτογραφημένα passwords του αρχείου.

Brute Force Attacks
Οι επιθέσεις αυτές είναι όμοιες με τις Dictionary Attacks, με την διαφορά ότι το password cracker εργαλείο δεν χρησιμοποιεί κάποιο λεξικό για να βρει το password, άλλα δοκιμάζει όλους τους δυνατούς συνδυασμούς χαρακτήρων, μέχρι να μπορέσει να πετύχει αυτόν που αντιστοιχεί στο password.
Τόσο αυτή όσο και η προηγούμενη τεχνική μπορεί να εκτελούνται για μέρες μέχρι να φτάσουν σε κάποιο θετικό αποτέλεσμα.

Παρακολούθηση
Ο επιτιθέμενος παρακολουθώντας διακριτικά την ώρα που κάνει login ο χρήστης του οποίου θέλει να πάρει το password, προσπαθεί να δει το password την ώρα που το πληκτρολογεί. Αυτή είναι μία αρκετά απλή και καθόλου έξυπνη τεχνική.

Keystroke Logging - Sniffing
Αυτή η τεχνική μοιάζει κάπως με την προηγούμενη αλλά χρησιμοποιεί μία αρκετά πιο έξυπνη μέθοδο. Ο επιτιθέμενος εγκαθιστά στο σύστημα ένα εργαλείο το οποίο έχει την δυνατότητα να καταγράφει σε ένα αρχείο οτιδήποτε ο χρήστης πληκτρολογεί. Τα εργαλεία αυτά ονομάζονται Keyloggers. Μέσω ενός Keylogger ο επιτιθέμενος μπορεί να υποκλέψει διάφορες πληροφορίες που πληκτρολογεί ο χρήστης, όπως διάφορα passwords που έχει για διαφορετικές εφαρμογές ή και αριθμούς πιστωτικών καρτών όταν ο χρήστης κάνει συναλλαγές μέσω του Internet.
Η τεχνική του sniffing παρουσιάζεται παρακάτω.

Απομακρυσμένες είναι οι επιθέσεις που υλοποιούνται σε δικτυωμένα συστήματα. Ο επιτιθέμενος προσπαθεί μέσω δικτύου να επιτεθεί σε ένα απομακρυσμένο σύστημα με στόχο είτε να αποκτήσει πρόσβαση στο μηχάνημα αυτό εκτελώντας κάποιο exploit, είτε να του προκαλέσει προβλήματα εμποδίζοντας την κανονική λειτουργία του.

Εσωτερικές - Εξωτερικές Επιθέσεις

Αυτός ο διαχωρισμός έχει να κάνει με τις απομακρυσμένες επιθέσεις όσο αναφορά την θέση του επιτιθέμενου σε σχέση με το δίκτυο στο οποίο επιτίθεται.

Εσωτερικές θεωρούνται οι επιθέσεις που πραγματοποιούνται από κάποιον που βρίσκεται εντός του δικτύου στο οποίο και επιτίθεται. Σε αυτήν την περίπτωση ο επιτιθέμενος έχει κάποια εξουσιοδοτημένα δικαιώματα για τις ενέργειές του μέσα στο δίκτυο και προσπαθεί να αποκτήσει περισσότερα. Στατιστικά οι περισσότερες πετυχημένες επιθέσεις που συμβαίνουν σήμερα σε δικτυωμένα συστήματα, προέρχονται από άτομα που ανήκουν στο εσωτερικό του δικτύου, καθώς για αυτούς υπάρχει κάποιος βαθμός εμπιστοσύνης τον οποίο και εκμεταλλεύονται.
Τα άτομα αυτά συνήθως έχουν κάποιο λογαριασμό, έστω και με περιορισμένα δικαιώματα, στο σύστημα που επιτίθενται, γνωρίζουν κάποιες χρήσιμες πληροφορίες για το δίκτυο και το σύστημα που θα επιτεθούν, όπως τι είδους είναι και τι αδυναμίες μπορεί να παρουσιάζει, συνήθως έχουν συγκεκριμένο στόχο και λόγους που υλοποιούν την επίθεση και δεν χρειάζεται να αντιμετωπίσουν τους μηχανισμούς ασφάλειας που προστατεύουν το δίκτυο από εξωτερικούς κινδύνους.

Εξωτερικές είναι οι επιθέσεις που πραγματοποιούνται από άτομα που βρίσκονται εκτός του δικτύου. Σε αυτήν την περίπτωση η αποστολή του επιτιθέμενου είναι σαφώς πιο δύσκολη, καθώς υποτίθεται ότι γνωρίζει λίγα για το δίκτυο στο οποίο επιτίθεται, δεν έχει κάποιον εξουσιοδοτημένο λογαριασμό και για να μπορέσει να πετύχει το στόχο του πρέπει να καταφέρει να προσπεράσει τους μηχανισμούς προστασίας που προφυλάσσουν το δίκτυο από εξωτερικούς κινδύνους. Σε μία εξωτερική επίθεση ο επιτιθέμενος μπορεί και να μην έχει κάποιο συγκεκριμένο στόχο και απλά να ψάχνει να εντοπίσει κάτι που θα του φανεί χρήσιμο.

Παθητικές - Ενεργητικές Επιθέσεις

Ο διαχωρισμός αυτός έχει να κάνει με τον βαθμό της αλληλεπίδρασης που έχει ο επιτιθέμενος με τον στόχο του.

Παθητικές είναι οι επιθέσεις στις οποίες ο επιτιθέμενος εκτελεί ενέργειες που απαιτούν την ελάχιστη αλληλεπίδραση με τον στόχο του. Οι επιθέσεις αυτού του είδους δεν προκαλούν κάποια αλλαγή στην κατάστασή του θύματος και δεν έχουν σαν στόχο να το βλάψουν άμεσα. Οι ενέργειες του επιτιθέμενου έχουν να κάνουν με την παρακολούθηση του στόχου και συλλογή πληροφοριών για αυτόν.
Οι παθητικές επιθέσεις αποτελούν στην ουσία ενέργειες που προηγούνται μίας άλλης επίθεσης, καθώς τις πληροφορίες που θα συλλέξει ο επιτιθέμενος μέσω αυτών θα τις εκμεταλλευτεί ώστε να υλοποιήσει την κύρια επίθεση του.
Μία τέτοιου είδους ενέργεια είναι και το sniffing. Με το sniffing ο επιτιθέμενος είναι ικανός να βλέπει όλα τα πακέτα που ανήκουν στην δικτυακή κίνηση (traffic), που δημιουργείται από την επικοινωνία του θύματος με τα υπόλοιπα δικτυωμένα συστήματα και το Internet. To sniffing συνήθως υλοποιείται από ειδικά προγράμματα τα οποία ονομάζονται sniffers και εκτελούνται σε κάποιο σημείο του δικτύου από το οποίο περνάει το traffic που αφορά το σύστημα-στόχο.
Για παράδειγμα σε ένα τοπικό LAN, που διάφορα συστήματα συνδέονται με ένα Hub, αν σε κάποιο από αυτά έχει εγκατασταθεί και λειτουργεί ένα sniffer, τότε αυτό μπορεί να βλέπει όλο το traffic του LAN και τις πληροφορίες που ανταλλάσσονται μεταξύ των συστημάτων του.
Μέσω του sniffing ο επιτιθέμενος μπορεί να συλλέξει σημαντική πληροφορία η οποία μεταφέρεται μέσα στα πακέτα που ανταλλάσσει το σύστημα-θύμα, όπως διάφορα passwords και usernames.

Ενεργητικές είναι οι επιθέσεις στις οποίες ο επιτιθέμενος έχει αυξημένη αλληλεπίδραση με τον στόχο του. Στην ουσία όλες οι επιθέσεις που δεν ανήκουν στις παθητικές είναι ενεργητικές. Ο επιτιθέμενος στέλνει διάφορα πακέτα στον στόχο του, μέσω των οποίων μπορεί να συλλέξει πληροφορίες για αυτόν ή και να υλοποιήσει ένα exploit.

Αναγνωριστικές - Penetration - ¶ρνησης Υπηρεσιών

Όλες ο επιθέσεις ανήκουν σε μία από αυτές τις κατηγορίες. Η διαφορά τους έχει να κάνει με το αποτέλεσμα που έχουν τόσο για το θύμα, όσο και για τον επιτιθέμενο.

Αναγνωριστικές είναι οι επιθέσεις τις οποίες εκτελεί ο επιτιθέμενος για να μαζέψει πληροφορίες για το θύμα του. Τέτοιες πληροφορίες μπορεί να είναι η τοπολογία του δικτύου στο οποίο θα επιτεθεί, το Λειτουργικό Σύστημα (Λ.Σ) του στόχου του, οι ανοιχτές πόρτες και οι υπηρεσίες που είναι διαθέσιμες προς εκμετάλλευση.
Οι αναγνωριστικές επιθέσεις είναι κυρίως μέθοδοι που χρησιμοποιεί ο επιτιθέμενος για μπορέσει να συγκεντρώσει πληροφορίες για το θύμα του, που θα του επιτρέψουν να εξαπολύσει στην συνέχεια την κύρια επίθεση με μεγαλύτερη πιθανότητα επιτυχίας. Η πιο διαδεδομένη μέθοδος αναγνώρισης του στόχου είναι το Scanning.
Καθώς το scanning είναι το πιο συχνό φαινόμενο σήμερα στο Internet, όσο αναφορά τις δικτυακές επιθέσεις θα γίνει ειδική αναφορά για αυτό παρακάτω.

Penetration είναι οι επιθέσεις με τις οποίες ο επιτιθέμενος θα καταφέρει να παραβιάσει το σύστημα - στόχο και ως αποτέλεσμα θα αποκτήσει πρόσβαση σε αυτό.
Για να το καταφέρει, θα υλοποιήσει ένα exploit το οποίο θα εκμεταλλεύεται ένα συγκεκριμένο vulnerability που ο επιτιθέμενος εντόπισε στο θύμα του.
Η ζημιά που μπορεί να προκληθεί ως αποτέλεσμα μίας τέτοιας ενέργειας, εξαρτάται από τον βαθμό εξουσιοδότησης που θα έχει ο λογαριασμός με τον οποίο απέκτησε πρόσβαση ο επιτιθέμενος και την κρισιμότητα των πληροφοριών που περιέχονται στο σύστημα που παραβίασε.
Πολλές φορές ένα σύστημα που καταφέρνει να παραβιάσει ο επιτιθέμενος, το χρησιμοποιεί για να επιτεθεί στην συνέχεια μέσω αυτού σε άλλα συστήματα προσπαθώντας με αυτόν τον τρόπο να κρύψει κατά κάποιο τρόπο τα ίχνη του.

¶ρνησης Υπηρεσιών είναι οι επιθέσεις που έχουν σαν στόχο να προκαλέσουν προβλήματα στην λειτουργία του συστήματος ή του δικτύου που πλήττουν ώστε να το εμποδίσουν να προσφέρει τις υπηρεσίες για τις οποίες είναι προορισμένο στους νόμιμους χρήστες του.
Τέτοιου είδους προβλήματα μπορεί να είναι η επανεκκίνηση, η παύση, η κατάρρευση ενός συστήματος ή η δημιουργία αυξημένου traffic και η συμφόρηση ενός δικτύου.
Οι επιθέσεις αυτές ονομάζονται (D)DoS - (Distributed) Denial Of Service επιθέσεις και εξηγούνται με περισσότερη λεπτομέρεια παρακάτω.

Αυτοματοποιημένες - Χειροκίνητες Επιθέσεις

Ο διαχωρισμός αυτός έχει να κάνει με τις επιθέσεις που υλοποιούνται αυτόματα από ένα πρόγραμμα και με αυτές που υλοποιεί ο ίδιος ο επιτιθέμενος έχοντας συνεχή αλληλεπίδραση με τον στόχο του.

Αυτοματοποιημένες είναι οι επιθέσεις που μέρος τους ή και ολόκληρες εκτελούνται από ένα πρόγραμμα που έχει γραφτεί για αυτόν τον σκοπό. Τέτοιου είδους προγράμματα μπορεί να είναι:

Viruses (ιοί)
Είναι βλαβερά προγράμματα που έχουν την ιδιότητα να συνυπάρχουν με κάποιο εκτελέσιμο αρχείο και να ενεργοποιούνται με την εκτέλεσή του. Η ενεργοποίηση του ιού έχει σαν αποτέλεσμα να εκτελεστεί ο κώδικάς του και να αναπαραχθεί, μολύνοντας και άλλα αρχεία του συστήματος με απρόβλεπτα αποτελέσματα για το σύστημα. Για να μολυνθεί κάποιο σύστημα με ιό θα πρέπει πρώτα το αρχείο που τον περιέχει να μπει με κάποιο τρόπο στο σύστημα και να εκτελεστεί. Ο πιο συνηθισμένος τρόπος που μπορεί να συμβεί αυτό, είναι με την μορφή επισυναπτόμενων μολυσμένων αρχείων που ανταλλάσσονται μέσω mail μηνυμάτων.

Worms
Είναι βλαβερά προγράμματα που έχουν την ικανότητα να μεταδίδονται από το ένα σύστημα στο άλλο μέσω δικτύου και να το μολύνουν. Τα worms αναπαράγονται αυτόματα και δεν απαιτείται η εκτέλεση του κώδικά τους από κάποιον.

Trojans
Τα Trojans είναι βλαβερά προγράμματα που έχουν την ικανότητα να συνυπάρχουν με άλλα προγράμματα του συστήματος, μεταβάλλοντας την λειτουργία τους όταν αυτά εκτελεστούν.

Rootkits
Τα rootkits είναι εργαλεία τα οποία ο επιτιθέμενος εγκαθιστά σε ένα σύστημα-θύμα και εκτελούν διάφορες λειτουργίες προς όφελός του. O επιτιθέμενος πρέπει προηγουμένως να έχει αποκτήσει πρόσβαση στο σύστημα-θύμα έτσι ώστε να μπορέσει να εγκαταστήσει ένα rootkit. Ένα rootkit είναι ένα σύνολο προγραμμάτων τα οποία επιτρέπουν στον επιτιθέμενο να συλλέγει κωδικούς από το θύμα, να βλέπει τα πακέτα που κινούνται από και προς το θύμα , να αφήσει ένα backdoor το οποίο θα του επιτρέπει μελλοντική πρόσβαση στο σύστημα-θύμα διατηρώντας έτσι τα δικαιώματα που είχε προηγουμένως αποκτήσει, να διατηρεί κρυφή την παρουσία του.

Μερικά από τα κύρια συστατικά ενός rootkit είναι τα παρακάτω :

Backdoors
Η κύρια λειτουργία ενός rootkit είναι να δώσει την δυνατότητα στον επιτιθέμενο να μπορεί μελλοντικά να μπαίνει στο σύστημα-θύμα χωρίς να γίνεται αντιληπτός. Αυτό γίνεται εγκαθιστώντας ένα backdoor, συνήθως trojaned προγράμματα που χρησιμοποιούνται για απομακρυσμένη πρόσβαση στο σύστημα όπως telnet ή ssh.
Αυτά τα προγράμματα τρέχουν σε διαφορετική TCP ή UDP πόρτα από αυτή που προορίζονται στην κανονική τους λειτουργία.

Trojaned System Utilities
Τα rootkits για να κρύψουν τα ίχνη του επιτιθέμενου αντικαθιστούν κάποια διαγνωστικά εργαλεία του λειτουργικού συστήματος τα οποία χρησιμεύουν για να γίνεται παρακολούθηση των δραστηριοτήτων που συμβαίνουν στο σύστημα, όπως τα ps, w, who, netstat, ls, find , με κάποια παραλλαγή τους που έχει την ίδια λειτουργία, κρύβοντας όμως τις δραστηριότητες του επιτιθέμενου.

Παρακάτω παρουσιάζονται κάποια από τα πιο συνήθη προγράμματα ενός συστήματος που αντικαθιστούνται με trojaned εκδόσεις τους από ένα rootkit και οι λειτουργίες τους.



Πίνακας 1-1: Trojaned Προγράμματα από ένα rootkit


Log - wiping utilities
Μια άλλη τεχνική που χρησιμοποιούν τα rootkits για να κρύψουν τα ίχνη του επιτιθέμενου είναι η χρήση κάποιων λειτουργιών με τις οποίες αλλάζουν τα log files του συστήματος, όπως τα messages, και syslog τα οποία κοιτάει ένας χρήστης για να ελέγξει τις δραστηριότητες που παίρνουν μέρος κάθε χρονική στιγμή στο σύστημα. Σε μερικές περιπτώσεις τα rootkits απενεργοποιούν τελείως την δυνατότητα του συστήματος να καταγράφει την δραστηριότητα που λαμβάνει μέρος. Κάτι τέτοιο όμως μπορεί να κινήσει υποψίες σε έναν χρήστη και δεν είναι χρήσιμο στον επιτιθέμενο σε περίπτωση που θέλει να μείνει αρκετή ώρα στο σύστημα.
Συνήθως τα rootkits τροποποιούν τα log files και διαγράφουν μόνο τις εγγραφές που αφορούν τις ενέργειες του επιτιθέμενου.


Sniffers and Keyloggers
Ορισμένα rootkits περιέχουν προγράμματα τα οποία χρησιμοποιούνται για να συλλέγουν κωδικούς για άλλα συστήματα και να ακούνε την κίνηση των πακέτων σε ένα δίκτυο. Για να το καταφέρουν αυτό τα rootkits θέτουν την λειτουργία της κάρτας δικτύου (NIC) του συστήματος-θύμα σε Promiscious mode.
Κατά την κανονική λειτουργία της η NIC ενός συστήματος που είναι συνδεδεμένο σε ένα τοπικό δίκτυο, ακούει στο κοινό μέσο σύνδεσης και κρατάει τα πακέτα που προορίζονται γι’αυτήν ενώ απορρίπτει όλα τα άλλα. Όταν όμως η NIC έχει τεθεί σε Promiscious mode έχει την δυνατότητα να ακούει την κίνηση που προορίζεται για άλλα συστήματα του δικτύου, και έτσι μπορεί κάποιος να συλλέξει ευαίσθητες πληροφορίες για άλλα συστήματα που ενδεχομένως να μην του επιτρεπόταν.
Τέτοιου είδους πληροφορίες μπορεί να είναι userids και passwords συμπεριλαμβανομένου και του root, για διάφορα σημαντικά συστήματα του δικτύου στο οποίο είναι συνδεδεμένο το σύστημα-θύμα.

Τα RootKits διατίθενται για μία μεγάλη ποικιλία από πλατφόρμες αλλά κυρίως για Unix συστήματα όπως Solaris, SunOS, Linux, AIX, HP-UX και άλλα.
Επίσης υπάρχουν και rootKits για Windows NT/2000 συστήματα τα οποία αντικαθιστούν κάποια DLL’s (Dynamic Link Libraries) του συστήματος.

Scanners
Είναι προγράμματα που αυτοματοποιούν την διαδικασία του Scanning που αναφέρθηκε παραπάνω και θα παρουσιαστεί με λεπτομέρεια στη συνέχεια.

Autorouters
Είναι προγράμματα που κάνουν την ζωή των Script Kiddies πιο εύκολη. Οι autorouters είναι η πιο προχωρημένη μορφή της αυτοματοποιημένης επίθεσης καθώς εκτελούν όλα τα βήματα που απαιτούνται για την υλοποίησής της. Ένας autorouter θα εκτελέσει το απαραίτητο scanning για να εντοπίσει επιρρεπή συστήματα, θα δοκιμάσει να εκτελέσει το ανάλογο exploit σε αυτά ώστε να εκμεταλλευτεί τα πιθανά vulnerabilities που θα έχει το κάθε σύστημα και στην συνέχεια στα συστήματα που θα καταφέρει να πάρει πρόσβαση θα εγκαταστήσει κάποιο rootkit ώστε να κρύψει τα ίχνη της επίθεσης και να εγκαταστήσει κάποιο backdoor που θα επιτρέψει στον επιτιθέμενο να έχει πρόσβαση στο σύστημα όποτε επιθυμεί.
Το μόνο που έχει να κάνει ο επιτιθέμενος που έχει στην κατοχή του έναν autorooter, είναι απλά κάποιες απλές ρυθμίσεις και κυρίως να ορίσει το εύρος των IP διευθύνσεων στις οποίες επιθυμεί o autorouter να ενεργήσει.


Χειροκίνητες είναι οι επιθέσεις στις οποίες το κάθε βήμα υλοποίησής τους γίνεται από ενέργειες του ίδιου του επιτιθέμενου και όχι από κάποιο έτοιμο πρόγραμμα. Οι επιθέσεις αυτού του είδους συνήθως υλοποιούνται από πιο έμπειρους επιτιθέμενους που έχουν πιο σοβαρούς σκοπούς και είναι πιο επικίνδυνοι.


[Πίσω]