Offline ανίχνευση και αφαίρεση κακόβουλου λογισμικού

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

  • Ιός (virus): Ο ιος είναι ένας κακόβουλος κώδικας (πρόγραμμα) που προσκολλάται στα υπάρχοντα αρχεία του υπολογιστή μας. Όταν το προσβεβλημένο εκτελέσιμο αρχείο εκκινηθεί από τον χρήστη, παράλληλα με την εφαρμογή εκκινείται και ο ιος. Αυτός αφενός προκαλεί τη ζημιά για την οποία έχει δημιουργηθεί (διαγραφή αρχείων, υποκλοπή πληροφοριών, κλπ) αφετέρου προσπαθεί να προβάλλει και άλλα αρχεία του συστήματος. Η συμπεριφορά τους, δηλαδή η απόπειρα εξάπλωσης σε “γειτονικά”  αρχεία θυμίζει τη συμπεριφορά των βιολογικών ιών, από τους έχουν πάρει την ονομασία τους. Ένα μηχάνημα που έχει προσβληθεί από ιο πιθανότατα έχει πολλά αρχεία που έχουν προσβληθεί από τον ίδιο κακόβουλο κώδικά. Υπάρχουν δηλαδή όπως λέμε “πολλαπλά instances (αντίγραφα)” του ιού στο σύστημα.
  • Σκουλήκια (worms): Κάνουν ότι και ένας ιός, με τη διαφορά ότι δημιουργούν μονάχα ένα instance σε κάθε υπολογιστή. Η προσπάθεια εξάπλωσης γίνεται μέσω δικτύου σε άλλους υπολογιστές και όχι σε αρχεία του ίδιου υπολογιστή.
  • Trojan horses (Δούρειοι ίπποι): Κακόβουλο λογισμικό που δημιουργεί μία σύνδεση μέσω Internet με τον υπολογιστή του δημιουργού του. Η σύνδεση αυτά επιτρέπει στον κακόβουλο hacker που τον δημιούργησε να ελέγχει τα αρχεία και τη συμπεριφορά του προσβεβλημένου υπολογιστή. Ο κακόβουλος hacker συχνά έχει τον έλεγχο εκατομμυρίων υπολογιστών ταυτόχρονα. Ο ηλεκτρονικός αυτός “στόλος” καλείται συχνά zombie PCs, διότι ελέγχονται από έναν κεντρικό χειριστή σαν μαριονέτες. Σκοπός των trojan horses είναι η κατασκοπία και, συχνότερα, η εξαπόλυση επιθέσεων σε άλλους στόχους χρησιμοποιώντας τα zombie PCs. Έτσι, συχνά γίνονται μαζικές επιθέσεις σε κυβερνητικά και πολυεθνικών εταιριών sites οι οποίες πραγματοποιούνται από τα ίδια τα zombie PCs, χωρίς να είναι δυνατός ο εντοπισμός του hacker που κρύβεται πίσω από την επίθεση. Η ονομασία τους (Trojan horse) προέρχεται από τον Δούρειο Ίππο της Τροίας που αποτέλεσε το όχημα για μία επίθεση “εκ των έσω”.
  • Rootkit: Όλες οι παραπάνω απειλές είναι λίγο πολύ ανιχνεύσιμες από όλα τα Antivirus προγράμματα της αγοράς. Ωστόσο, το κάθε Antivirus “βλέπει” μόνο τα αρχεία που του “δείχνει” το λειτουργικό σύστημα του υπολογιστή (πχ τα Windows). Ένα Rootkit προσβάλλει τα αρχεία του ίδιου του λειτουργικού συστήματος. Όταν ο υπολογιστής επανεκκινηθεί τότε εκκινεί και το Rootkit το οποίο δρα ως κομμάτι του λειτουργικού. Ως μέριμνα έχει την απόκρυψη του εαυτού του καθώς και των “συγγενών” του ιών, worms και trojans καθιστώντας τα αόρατα στα προγράμματα Antivirus. Συνεπώς, ένας υπολογιστής που έχει προσβληθεί με Rootkit δεν μπορεί να καθαρίσει χρησιμοποιώντας το εγκατεστημένο Antivirus. Κάθε σοβαρή ηλεκτρονική επίθεση ξεκινάει με ένα Rootkit που παρέχει την κάλυψη στην υπόλοιπη επίθεση και ακολουθείται από μία σειρά ιών, worms και trojans που κάνουν την ουσιαστική ζημιά υπό την κάλυψη του Rootkit. Όταν ολοκληρωθεί αυτό, η επίθεση είναι σε πλήρη εξέλιξη και πλέον απαιτείται δραστική επέμβαση από έναν ειδικό. Οι πιο παλιοί θα θυμούνται ίσως τα προγράμματα TSR (Terminate and Stay Resident) που στις εποχές του DOS (80’s και 90’s) δρούσαν παρόμοια με τα σημερινά Rootkits.

Στις παραπάνω απειλές προστίθενται πολλές άλλες όπως keyloggers, spywares, addwares, κλπ που κάνουν παρόμοιες αλλά περισσότερο εξειδικευμένες επιθέσεις. Όλα αυτά ονομάζονται κακόβουλο λογισμικό ή απλά malware (από το MALicious softWARE). Εδώ μας ενδιαφέρει περισσότερο η περίπτωση του Rootkit, που είναι η σοβαρότερη περίπτωση ως η ρίζα του κακού. Σε αυτό το σημείο αξίζει να παρατηρήσουμε ότι δεν υπάρχει σίγουρος τρόπος να αποφανθούμε αν ο υπολογιστής μας έχει προσβληθεί από Rootkit. Αν παρατηρήσουμε:

  • Σημαντικές καθυστερήσεις στη λειτουργία του
  • Το Antivirus, ακόμα και όταν κάνουμε πλήρη σάρωση, μας αναφέρει διαρκώς ότι ανιχνεύτηκε κάποιος ιος και παρότι τον καθαρίζουμε αυτός επανεμφανίζεται.
  • Υπάρχει περίεργη συμπεριφορά. Κάποια προγράμματα δεν εκκινούν, εμφανίζονται σελίδες που δεν ζητήσαμε ή ανοίγει κάποιο antivirus που δεν έχουμε εγκαταστήσει (πχ Antivirus 2012) και μας αναφέρει ότι ανιχνεύτηκαν ιοί, οι οποίο για να απομακρυνθούν θα πρέπει να αγοράσουμε με πιστωτική κάρτα την πλήρη έκδοση (ΕΝΝΟΕΙΤΑΙ ΟΤΙ ΔΕ ΔΙΝΟΥΜΕ ΤΗΝ ΠΙΣΤΩΤΙΚΗ ΜΑΣ).

τότε είναι πολύ πιθανό να έχουμε “τσιμπήσει” κάποιο Rootkit.

Για την αποτελεσματική αντιμετώπιση αυτών των περιπτώσεων σχεδόν όλες οι εταιρίες του κλάδου Antivirus ή, πιο σωστά, του Antimalware, διαθέτουν δωρεάν εργαλεία ανίχνευσης και αφαίρεσης των παραπάνω απειλών. Αυτά έρχονται σε μορφή ISO images που μπορούμε να τα εγγράψουμε σε ένα δίσκο CD, να εκκινήσουμε τον υπολογιστή μας από αυτόν και στη συνέχεια να διενεργήσουμε τον έλεγχο και καθαρισμό. Αυτές οι λύσεις συχνά αναφέρονται ως Live rescue CD ή Offline Antivirus Disk, κλπ.

Οι λύσεις αυτές βασίζονται συνήθως σε μία διανομή linux (πάλι το linux βγάζει το φίδι από την τρύπα…) η οποία παρέχει το γραφικό περιβάλλον, τη διασύνδεση με το Internet ώστε να ενημερωθεί το Antivirus για τις τελευταίες απειλές, τον οπλισμό του δίσκου (partition mount) με την εγκατάσταση Windows και την πλατφόρμα πάνω στην οποία θα εκτελεστεί το ίδιο το πρόγραμμα Antivirus. Κάποιες λύσεις περιλαμβάνουν επιπλέον χρήσιμα εργαλεία, όπως πχ ο εξαιρετικός Registry Editor του Kasperksy Rescue Disk.

Δύο πολύ χρήσιμα εργαλεία είναι το Kaspersky Rescue Disk 10 και το Bitdefender Rescue CD. Και τα δύο εργαλεία κάνουν εξαιρετική δουλειά και είναι εντελώς δωρεάν. Ωστόσο, υπάρχουν πολλά άλλα αντίστοιχα εργαλεία, ένα σχεδόν από κάθε εταιρία Antimalware. Κάποια είναι αξιόλογα, κάποια όχι και τόσο. Οπότε, μία ασφαλής επιλογή για να μη μπλέκει κανείς είναι ένα από τα δύο παραπάνω.

Καθώς η διαδικασία εκκίνησης από δίσκο CD είναι αρκετά χρονοβόρα (τα CD είναι εκατοντάδες φορές πιο αργά από το σκληρό δίσκο του υπολογιστή μας) αξίζει κανείς να χρησιμοποιήσει ένα USB stick για αυτή τη δουλειά. Ειδικά αν καλείται συχνά να “καθαρίσει” υπολογιστές που έχουν προσβληθεί από Rootkit, τότε αυτό επιβάλλεται. Προσωπικά έχω αγοράσει δύο USB sticks 4GB αξίας 7€ το καθένα στα οποία έχω εγκατεστημένα μόνιμα τα δύο παραπάνω Rescue Disks. Σημειώστε ότι καλό είναι τα USB stick που θα επιλέξουμε να μην είναι πολύ αργά γιατί τότε η βελτίωση της ταχύτητας σε σχέση με το CD είναι μηδαμινή. Οπότε αφήστε αυτά που έχουν Read speed έως 15MB/sec και προτιμήστε κάτι με Read speed τουλάχιστον 25-30MB/sec. Η διαφορά τιμής είναι μηδαμινή σε αυτές τις χωρητικότητες (δεν χρειαζόμαστε πάνω από 2 ή 4GB).

Οι οδηγοί για τη δημιουργία των Live USB sticks βρίσκονται εδώ για το Kasperky και εδώ για το Bitdefender. Είναι αναλυτικότατοι και παρέχουν όλα τα απαιτούμενα βήματα, από το κατέβασμα του ISO image και των εργαλείων για την μεταφορά στο USB stick μέχρι την εκκίνηση του υπολογιστή μας από αυτό.

Τέλος, υπενθυμίζω το πολύ χρήσιμο παλαιότερο οδηγό που είχα συντάξει (στα εγγλικά) και που αναφέρει, μεταξύ άλλων, τα προκαταρκτικά βήματα για την γρηγορότερη σάρωση στο βήμα “i) Removing temporary files”.

Enjoy! 8)

 

Ενημέρωση: Στο Kaspersky Rescue Disk 10.0 η ενημέρωση (update) για νέες απειλές διαρκεί αρκετή ώρα, ειδικά αν το ISO image που κατεβάσαμε δεν είναι αρκετά πρόσφατο. Αν έχουμε την εγκατάσταση σε USB, σύμφωνα με τον οδηγό που αναφέρεται στο άρθρο, υπάρχει τρόπος να μειώσουμε δραματικά τον απαιτούμενο χρόνο. Ακολουθούμε τα παρακάτω βήματα:

  1. Εκκινούμε έναν Η/Υ από το USB stick με το Kaspersky Rescue Disk 10.0 .
  2. Από το My Update Center κάνουμε κανονικά ενημέρωση.
  3. Μόλις ολοκληρωθεί, θα βρούμε στο δίσκο C: ή D: (στα αντίστοιχα εικονίδια της επιφάνειας εργασίας) έναν φάκελο με όνομα “Kaspersky Rescue Disk 10.0” με μέγεθος αρκετά MB. Τον αντιγράφουμε στο USB stick, το οποίο αναφέρεται ως sda1, sdb1, sdc1 ή κάπως έτσι.
  4. Κάνουμε επανεκκίνηση και εκκινούμε ξανά από το USB stick. Θα διαπιστώσουμε ότι πλέον το Kaspersky Rescue Disk χρησιμοποιεί για τα updates, τα logs, την καραντίνα, κλπ τον φάκελο στο USB stick.

Με αυτόν τον τρόπο το USB stick έχει πάντοτε τις ενημερώσεις που περάσαμε την τελευταία φορά που το χρησιμοποιήσαμε και στο επόμενο update θα πάρει μόνο τις αλλαγές και όχι ξανά όλες τις ενημερώσεις από την αρχή. 🙂

Δυστυχώς, δεν έχω καταφέρει ακόμα να κάνω κάτι αντίστοιχο στο BitDefender.

email