Μετάβαση στο περιεχόμενο

Ρυθμίσεις cookies

Επιλέξτε ανά κατηγορία ποια cookies επιτρέπετε. Μπορείτε να αλλάξετε την επιλογή σας οποιαδήποτε στιγμή μέσω των Ρυθμίσεων cookies στο κάτω μέρος κάθε σελίδας. Δήλωση απορρήτου

Απαραίτητα

Πάντα ενεργά

Χρειάζονται για τη σύνδεση, για να διατηρείται το καλάθι σας και για να θυμόμαστε τις επιλογές σας. Είναι πάντα ενεργά.

Ποια cookies;
  • weboke_sessie, weboke_klant, weboke_remember: η συνεδρία σας και η παραμονή σε σύνδεση
  • weboke_basket: το καλάθι σας
  • wkBtwIncl: εμφάνιση τιμών με ή χωρίς ΦΠΑ
  • wok_cookies: η επιλογή σας για τα cookies, 12 μήνες

Μετρούν ποια διαφήμιση οδηγεί σε επίσκεψη ή παραγγελία, ώστε να μην πληρώνουμε για διαφημίσεις που δεν αποδίδουν.

Ποια cookies;
  • Google Ads μέσω Google Tag Manager (_gcl_au, _gcl_aw), έως 90 ημέρες
  • OpenAI Ads, διαφημίσεις στο ChatGPT
  • wok_aff: μέσω ποιου συνεργάτη ήρθατε σε εμάς (πρόγραμμα συνεργατών), 60 ημέρες

4,6

Χώρα και γλώσσα

Κάθε χώρα έχει τη δική της ιστοσελίδα, με τιμές και ΦΠΑ της χώρας αυτής.

Προβολή

Όταν κάτι πάει στραβά

Ενότητα 10: Παραμείνετε ασφαλείς · Χρόνος ανάγνωσης: 11 λεπτά

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

Βασικές έννοιες: περιστατικό, σημάδια, απομόνωση, snapshot ως αποδεικτικό στοιχείο, ημερολόγιο του περιστατικού, επανεγκατάσταση, αντικατάσταση κλειδιών και κωδικών πρόσβασης, καθαρό αντίγραφο ασφαλείας, υποχρέωση γνωστοποίησης παραβίασης δεδομένων (72 ώρες), Αρχή Προστασίας Δεδομένων Προσωπικού Χαρακτήρα (ΑΠΔΠΧ), σχέδιο έκτακτης ανάγκης

Αναγνώριση ενός περιστατικού

Μια εισβολή σπάνια προαναγγέλλεται. Συνήθως βλέπετε κάτι που είναι "περίεργο". Σημάδια που πρέπει να πάρετε στα σοβαρά:

  • Υψηλό φορτίο χωρίς λόγο: ο επεξεργαστής βρίσκεται συνεχώς στο 100%, για παράδειγμα λόγω ενός cryptominer. Ελέγξτε με top ή htop ποια διεργασία είναι και με ποιον χρήστη εκτελείται.
  • Άγνωστες διεργασίες ή υπηρεσίες: ένα πρόγραμμα με παράξενο όνομα, συχνά στο /tmp, στο /dev/shm ή στο /var/tmp, ή μια υπηρεσία ή ένα timer του systemd που δεν δημιουργήσατε εσείς.
  • Εξερχόμενη κίνηση που δεν ταιριάζει: ο πάροχός σας ενημερώνει ότι ο server σας στέλνει spam ή επιτίθεται σε άλλους servers, ή τα γραφήματα δικτύου στον πίνακα ελέγχου δείχνουν αιχμές.
  • Νέοι χρήστες ή κλειδιά: μια γραμμή στο ~/.ssh/authorized_keys που δεν αναγνωρίζετε, ένας χρήστης στο /etc/passwd με UID 0, μια νέα γραμμή στο /etc/sudoers.d/.
  • Τροποποιημένα αρχεία: άγνωστα αρχεία PHP στον ιστότοπό σας, ένα τροποποιημένο crontab.
  • Αρχεία καταγραφής που εξαφανίστηκαν ή είναι κενά: οι επιτιθέμενοι συχνά σβήνουν τα ίχνη τους.

Μερικές εντολές για μια γρήγορη ματιά:

anna@web1:~$ top -o %CPU
anna@web1:~$ sudo ss -tunap | grep ESTAB
anna@web1:~$ sudo last -n 20
anna@web1:~$ awk -F: '$3 == 0 {print $1}' /etc/passwd
anna@web1:~$ sudo find /etc/systemd/system /etc/cron* -newer /etc/hostname -type f
anna@web1:~$ for u in /root /home/*; do sudo cat $u/.ssh/authorized_keys 2>/dev/null; done

Η last δείχνει ποιος συνδέθηκε και πότε, η γραμμή με awk εμφανίζει όλους τους λογαριασμούς με UID 0 (αυτός πρέπει να είναι μόνο ο root), και η γραμμή με find αναζητά units και αρχεία cron που είναι νεότερα από ένα αρχείο που δημιουργήθηκε κατά την εγκατάσταση.

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

Τα πρώτα βήματα: ψυχραιμία, απομόνωση, καταγραφή

Το σημαντικότερο τα πρώτα λεπτά είναι να μη σβήνετε πράγματα πανικόβλητοι. Εργαστείτε με την εξής σειρά.

1. Ξεκινήστε ένα ημερολόγιο. Σημειώστε σε χαρτί ή στον φορητό σας υπολογιστή (όχι στον server) τι βλέπετε, πότε, και τι κάνετε. Θα το χρειαστείτε αργότερα για να βρείτε την αιτία, για μια γνωστοποίηση, μια καταγγελία ή την ασφαλιστική σας εταιρεία. Αυτό συνιστά και το ολλανδικό NCSC.

2. Απομονώστε τον server. Αποτρέψτε να προκαλέσει περαιτέρω ζημιά (spam, επιθέσεις, αποστολή δεδομένων) χωρίς να τον απενεργοποιήσετε:

  • κλείστε στο firewall του παρόχου σας (αν υπάρχει) τα πάντα εκτός από το SSH από τη δική σας διεύθυνση· ή
  • κάντε το ίδιο στον ίδιο τον server, μέσω της κονσόλας·
  • αν δεν γίνεται αλλιώς: απενεργοποιήστε τον server από τον πίνακα ελέγχου. Τότε όμως χάνετε το περιεχόμενο της μνήμης.

3. Δημιουργήστε ένα snapshot. Ένα snapshot στον πίνακα ελέγχου καταγράφει την κατάσταση όπως είναι τώρα. Αυτό είναι το αποδεικτικό σας στοιχείο και η πηγή σας για να διερευνήσετε αργότερα πώς μπήκε ο επιτιθέμενος, ακόμη κι αν στη συνέχεια εγκαταστήσετε ξανά τον server.

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

Καθαρισμός ή επανεγκατάσταση;

Η δελεαστική απάντηση είναι: αφαιρείτε το ύποπτο αρχείο, σταματάτε τον cryptominer, τέλος. Όμως δεν ξέρετε τι άλλο έκανε ο επιτιθέμενος: μια δεύτερη κερκόπορτα, ένα τροποποιημένο πρόγραμμα, ένα επιπλέον κλειδί, ένα timer που επαναφέρει τα πάντα. Σε έναν server όπου κάποιος είχε δικαιώματα root δεν μπορείτε πλέον να έχετε εμπιστοσύνη.

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

  1. Μια νέα εγκατάσταση (επανεγκατάσταση από τον πίνακα ελέγχου ή ένας νέος server).
  2. Αμέσως τα βασικά από αυτό το μάθημα: ενημερώσεις, κανονικός χρήστης με sudo, SSH με νέα κλειδιά, firewall (ενότητες 2 έως 5).
  3. Επανεγκατάσταση των εφαρμογών σας από επίσημες πηγές, κατά προτίμηση με τα αρχεία compose ή τις σημειώσεις σας (μάθημα 10.4).
  4. Επαναφορά των δεδομένων (βάση δεδομένων, μεταφορτωμένα αρχεία) από αντίγραφο ασφαλείας πριν από το περιστατικό. Μην επαναφέρετε τυφλά κώδικα ή ρυθμίσεις: μπορεί να περιέχουν την κερκόπορτα. Εξετάστε κριτικά και τα δεδομένα που επαναφέρετε· ένας επιτιθέμενος μπορεί να βρισκόταν μέσα περισσότερο καιρό απ' όσο νομίζετε.
  5. Κλείσιμο του κενού από το οποίο μπήκε ο επιτιθέμενος. Διαφορετικά θα ξανασυμβεί. Το snapshot από το βήμα 3 βοηθά στη διερεύνηση.

Αντικαταστήστε ό,τι μπορεί να έχει διαρρεύσει

Θεωρήστε ότι ό,τι υπήρχε στον server βρίσκεται στα χέρια του επιτιθέμενου:

  • Κλειδιά SSH: αφαιρέστε παντού τα δημόσια κλειδιά που βρίσκονταν στον server και δημιουργήστε νέα ζεύγη κλειδιών, αν υπήρχαν ιδιωτικά κλειδιά στον server.
  • Κωδικοί πρόσβασης βάσεων δεδομένων, πινάκων διαχείρισης και χρηστών της εφαρμογής σας.
  • Κλειδιά API και tokens (email, πληρωμές, cloud αποθήκευση, χώρος αντιγράφων ασφαλείας) από αρχεία .env και ρυθμίσεις: ανακαλέστε τα στην αντίστοιχη υπηρεσία και αντικαταστήστε τα.
  • Πιστοποιητικά: το ιδιωτικό κλειδί του πιστοποιητικού σας βρισκόταν στον server. Ζητήστε την ανάκληση του πιστοποιητικού και εκδώστε νέο (με το Let's Encrypt γίνεται γρήγορα, μάθημα 7.3).

Γνωστοποίηση: ο GDPR (ΓΚΠΔ) και άλλοι

Αν υπήρχαν δεδομένα προσωπικού χαρακτήρα στον server (στοιχεία πελατών, λογαριασμοί, διευθύνσεις email), τότε ενδέχεται να υπάρχει παραβίαση δεδομένων. Ο GDPR (ΓΚΠΔ) (άρθρο 33) ορίζει ότι ο υπεύθυνος επεξεργασίας γνωστοποιεί την παραβίαση στην εποπτική αρχή αμελλητί και, αν είναι δυνατόν, εντός 72 ωρών από τη στιγμή που έλαβε γνώση της. Στην Ελλάδα αυτή είναι η Αρχή Προστασίας Δεδομένων Προσωπικού Χαρακτήρα (ΑΠΔΠΧ). Μερικά βασικά σημεία:

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

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

Επιπλέον: αναφέρετε στον πάροχό σας κάθε κατάχρηση που έγινε από τον server σας (συχνά την έχει ήδη εντοπίσει), και σε περίπτωση σοβαρής επίθεσης υποβάλετε καταγγελία στην Ελληνική Αστυνομία, Δίωξη Ηλεκτρονικού Εγκλήματος (https://www.cyberalert.gr/). Αν ο οργανισμός σας υπάγεται στον νόμο 5160/2024 (ενσωμάτωση της NIS2), ισχύουν ξεχωριστές, συντομότερες προθεσμίες γνωστοποίησης.

Προετοιμασία: το σχέδιο έκτακτης ανάγκης

Ένα περιστατικό συμβαίνει πάντα σε κακή στιγμή. Ό,τι έχετε ρυθμίσει από πριν σας γλιτώνει ώρες:

  • Να γνωρίζετε πώς φτάνετε στην κονσόλα και στο κουμπί snapshot του παρόχου σας, και να έχετε τα στοιχεία σύνδεσης του πίνακα ελέγχου (με έλεγχο ταυτότητας δύο βημάτων) κάπου εκτός του server.
  • Να γνωρίζετε πού βρίσκονται τα αντίγραφα ασφαλείας σας, πώς τα επαναφέρετε και ότι λειτουργούν (μάθημα 8.2).
  • Να τηρείτε μια λίστα με όλα τα μυστικά που βρίσκονται στον server, ώστε να ξέρετε τι πρέπει να αντικαταστήσετε.
  • Να τηρείτε μια λίστα επικοινωνίας: τον πάροχό σας, όποιον άλλον πρέπει να ενημερωθεί για τον server (πελάτης, συνάδελφος), και τα στοιχεία επικοινωνίας για τη γνωστοποίηση παραβίασης δεδομένων.

Στην πράξη

Στην οθόνη VPS του WebOké βρίσκετε την κονσόλα, τα snapshots, τα αντίγραφα ασφαλείας και το κουμπί επανεγκατάστασης· σε άλλους παρόχους έχουν περίπου τα ίδια ονόματα (console ή VNC, snapshot, rescue, reinstall). Αυτό το μάθημα είναι αυτοβοήθεια: κανείς δεν παρακολουθεί τον server σας και κανείς δεν αντιμετωπίζει ένα περιστατικό για λογαριασμό σας. Ακριβώς γι' αυτό είναι τόσο σημαντικό ένα σχέδιο έκτακτης ανάγκης που μπορείτε να εφαρμόσετε μόνοι σας.

Σύνοψη

  • Σημάδια: ανεξήγητο φορτίο, άγνωστες διεργασίες, υπηρεσίες ή κλειδιά, παράξενη εξερχόμενη κίνηση, τροποποιημένα ή χαμένα αρχεία και αρχεία καταγραφής.
  • Πρώτα βήματα: τήρηση ημερολογίου, απομόνωση του server, δημιουργία snapshot ως αποδεικτικό στοιχείο, προστασία των αντιγράφων ασφαλείας.
  • Έναν server όπου κάποιος είχε root δεν τον καθαρίζετε, αλλά τον εγκαθιστάτε ξανά· επαναφέρετε τα δεδομένα από καθαρό αντίγραφο ασφαλείας και κλείνετε το κενό.
  • Αντικαταστήστε όλα τα κλειδιά, τους κωδικούς πρόσβασης, τα tokens και τα πιστοποιητικά που βρίσκονταν στον server.
  • Επηρεάστηκαν δεδομένα προσωπικού χαρακτήρα; Γνωστοποιείτε την παραβίαση στην ΑΠΔΠΧ, αν είναι δυνατόν εντός 72 ωρών, και καταγράφετε κάθε παραβίαση.

Κουίζ

1. Εντοπίζετε μια άγνωστη διεργασία που εδώ και ώρες χρησιμοποιεί τον επεξεργαστή στο 100% και έχει ξεκινήσει από το /tmp. Τι κάνετε πρώτα;



2. Γιατί η επανεγκατάσταση είναι καλύτερη από τον καθαρισμό μετά από εισβολή με δικαιώματα root;



3. Μετά από μια εισβολή επαναφέρετε ένα αντίγραφο ασφαλείας. Τι επαναφέρετε;



4. Στον παραβιασμένο server σας υπήρχαν στοιχεία πελατών του ηλεκτρονικού σας καταστήματος. Τι ορίζει ο GDPR (ΓΚΠΔ) για τη γνωστοποίηση;



5. Ποια μυστικά πρέπει να αντικαταστήσετε μετά από μια εισβολή;



Άσκηση

Άσκηση O10.3: Το σχέδιο έκτακτης ανάγκης σας σε μία σελίδα. Γράψτε για τον δικό σας server ένα σχέδιο έκτακτης ανάγκης το πολύ μίας σελίδας A4: πώς αποκτάτε πρόσβαση στον πίνακα ελέγχου, στην κονσόλα και στα snapshots· πού βρίσκονται τα αντίγραφα ασφαλείας σας και πώς τα επαναφέρετε· ποια μυστικά βρίσκονται στον server· ποιον πρέπει να ενημερώσετε (και αν πρέπει να κάνετε γνωστοποίηση σε περίπτωση παραβίασης δεδομένων)· και ποια πέντε πρώτα βήματα κάνετε όταν υποψιάζεστε εισβολή. Φυλάξτε το σχέδιο εκτός του server.

Άσκηση O10.3: Το σχέδιο έκτακτης ανάγκης σας σε μία σελίδα

Αυτή την άσκηση την κάνετε μόνοι σας: κανείς δεν την ελέγχει. Σημειώστε τι έχετε κάνει και επισημάνετε την άσκηση ως ολοκληρωμένη.





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

Για περαιτέρω μελέτη

Μια στιγμή…

Ρυθμίστε τα domains σας

Ρυθμίστε για κάθε domain τους nameservers, τη σύνδεση με το hosting σας και ποιος θα είναι ο κάτοχος.

Φόρτωση των domains σας…