English · Ελληνικά
Τα build posts δείχνουν πώς πρέπει να μοιάζει ένα δίκτυο. Αυτό είναι πώς συνήθως μοιάζουν όταν κανείς δεν έχει ελέγξει — ένα ανωνυμοποιημένο write-up ενός security audit σε τρία μικρά οικογενειακά ξενοδοχεία που μοιράζονται μία part-time επαφή IT. Καμία παραβίαση, καμία δραματοποίηση· απλά μια ώρα scanning που μετέτρεψε το «το Wi-Fi μας είναι εντάξει» σε μια λίστα ευρημάτων δύο σελίδων, και το ένα finding που θα τους κόστιζε ένα περιστατικό GDPR.
Διεξήχθη κάτω από υπογεγραμμένο engagement με γραπτό scope. Ο πελάτης, οι διευθύνσεις, και τα αναγνωριστικά στοιχεία έχουν αλλαχθεί ή γενικευθεί· τα ευρήματα είναι αντιπροσωπευτικά των πραγματικών, όχι αντίγραφο. Μοιράστηκε με άδεια. Το θέμα είναι το pattern — γιατί είναι το ίδιο pattern στα περισσότερα μικρά δίκτυα φιλοξενίας.
Τρία μικρά ξενοδοχεία, ίδιος όμιλος ιδιοκτησίας, ίδια ιστορία με χιλιάδες άλλα: το δίκτυο μεγάλωσε από όποιον ήταν φθηνότερος εκείνη τη χρονιά, και «ασφάλεια» σήμαινε έναν κωδικό Wi-Fi. Έκλεισαν το audit επειδή μια πλατφόρμα κρατήσεων ρώτησε αν τα δεδομένα επισκεπτών τους ήταν «segmented» και κανείς δεν ήξερε ποια ήταν η ειλικρινής απάντηση. Η ειλικρινής απάντηση ήταν όχι.
Ένα audit σαν αυτό δεν είναι red-team engagement — είναι μια δομημένη ματιά στην έκθεση και το config, ο αμυντικός καθρέφτης του Attacking MikroTik Gear και του Attacking Cisco Gear. Κοιτάς τι είναι προσβάσιμο, τι είναι default, τι είναι flat, και τι θα συνέβαινε αν ένα laptop επισκέπτη γινόταν εχθρικό. Το μεγαλύτερο μέρος της αξίας βρίσκεται στην πρώτη ώρα· το υπόλοιπο είναι να το γράψεις ώστε ο ιδιοκτήτης να μπορεί να δράσει πάνω του. Να τι έφερε στην επιφάνεια αυτή η ώρα.
01
Πριν από οποιοδήποτε έξυπνο testing, χαρτογραφείς τι υπάρχει. Ένα μόνο σάρωμα του LAN κάθε site έλεγε όλη την ιστορία: ένα subnet, τα πάντα πάνω του, τίποτα ανάμεσα σε τίποτα.
# Συνδεδεμένος στο guest Wi-Fi. Ένα /24, και τα πάντα απαντάνε πάνω του: $ nmap -sn 192.168.0.0/24 192.168.0.1 router (MikroTik) 192.168.0.10 RECEPTION-PC # the booking / PMS terminal 192.168.0.23 NVR-LOBBY # camera recorder 192.168.0.41 guest laptop (me) 192.168.0.55 BOOKING-BACKUP # a NAS with... everything # Χωρίς VLANs. Μια συσκευή guest είναι peer του PC κρατήσεων και των καμερών.
Η κίνηση guest, staff, payment, και CCTV μοιραζόταν όλη το ίδιο broadcast domain σε κάθε site. Ο κωδικός Wi-Fi κρατούσε τους αγνώστους έξω από το link internet· δεν έκανε τίποτα για να σταματήσει έναν επισκέπτη — ή malware στη συσκευή ενός επισκέπτη — από το να φτάσει τη μηχανή που επεξεργάζεται κρατήσεις και στοιχεία κάρτας. Αυτό είναι το finding πίσω από την ερώτηση της πλατφόρμας κρατήσεων, και ο λόγος που το guest Wi-Fi χρειάζεται δικό του δίκτυο. Αποκατάσταση: VLAN segmentation με default-deny ανάμεσα σε ζώνες — ο σχεδιασμός από το field build ξενοδοχείου.
02
Η επόμενη ματιά είναι πάντα το ίδιο το router. Στα δύο sites MikroTik, η επιφάνεια διαχείρισης ήταν προσβάσιμη και οι εκδόσεις παλιές — ακριβώς ο συνδυασμός που προειδοποιεί το offensive post.
| Τι βρηκαμε | Γιατι ειναι finding |
|---|---|
| Winbox προσβάσιμο από το WAN | Management plane εκτεθειμένο στο internet — η ριζική αιτία κάθε μαζικής παραβίασης RouterOS (High) |
| RouterOS δύο+ χρόνια πίσω | Γνωστά CVEs ισχύουν για μια εκτεθειμένη υπηρεσία (High) |
Default admin, αδύναμος κωδικός | Δεν χρειάζεται exploit για να πάρεις το router (Critical σε ένα site) |
| Χωρίς off-box logging | Μια παραβίαση θα ήταν αόρατη· τα τοπικά logs σβήνονται σε reboot (Medium) |
| Bandwidth-test server ενεργός | Επιφάνεια DoS και brute-force αφημένη ενεργή (Low) |
Τίποτα από αυτά δεν χρειαζόταν νέο hardware. Χρειαζόταν το checklist Securing RouterOS: ένα firewall input default-drop ώστε το Winbox να είναι απρόσιτο από το WAN, ένα upgrade (packages και firmware), ονομαστικοί λογαριασμοί με ισχυρούς κωδικούς, το default admin εξαφανισμένο, περιττές υπηρεσίες σβησμένες, και remote syslog στραμμένο σε έναν φθηνό collector. Μισή μέρα ανά site, και η internet-facing attack surface πήγε ουσιαστικά στο μηδέν.
03
Κάθε audit έχει ένα headline finding — αυτό που μετατρέπει μια αφηρημένη αναφορά σε απόφαση. Εδώ ήταν η ευθεία γραμμή από το guest Wi-Fi μέχρι τη μηχανή που κρατούσε διαβατήρια και στοιχεία κάρτας.
Επειδή τα πάντα μοιράζονταν ένα subnet, μια συσκευή guest μπορούσε να ανοίξει τα file shares του PC κρατήσεων και να φτάσει το NAS με ετικέτα BOOKING-BACKUP — που κρατούσε, σε απλούς φακέλους, σαρωμένα διαβατήρια, αρχεία πληρωμών κάρτας, και χρόνια εξαγωγών κρατήσεων. Καμία authentication πρόκληση που να αξίζει το όνομά της, κανένα όριο δικτύου στη μέση. Ένας μόνο επισκέπτης με παραβιασμένο laptop, ή απλά ένας περίεργος, ήταν ένα κλικ μακριά από ένα αναφερτέο περιστατικό προσωπικών δεδομένων κάτω από το GDPR — με τα πρόστιμα και το καθήκον ειδοποίησης που ακολουθούν.
Αυτό είναι το finding που νιώθουν πραγματικά οι ιδιοκτήτες, γιατί δεν είναι «το config σου είναι ατακτοποίητο» — είναι «ένας επισκέπτης μπορεί να φτάσει τα διαβατήρια». Η διόρθωση είναι το ίδιο segmentation από το Finding #1 συν σφίξιμο του ίδιου του NAS (authentication, χωρίς ανώνυμα shares, κρυπτογράφηση at rest). Διατυπωμένο σε επιχειρηματικούς όρους — κανονιστική έκθεση, όχι διαγράμματα πακέτων — είναι επίσης το finding που έφερε την έγκριση όλης της αποκατάστασης εκείνο το απόγευμα.
04
Τα ευρήματα δεν αξίζουν τίποτα αν αυτός που πληρώνει δεν μπορεί να δράσει πάνω τους. Το παραδοτέο γράφτηκε πρώτα για τον ιδιοκτήτη και δεύτερα για την επαφή IT — σοβαρότητα, αντίκτυπος σε απλή γλώσσα, και μια διόρθωση ανά αντικείμενο.
Η αναφορά κατέταξε κάθε finding με βάση το πραγματικό ρίσκο, είπε τι σήμαινε το καθένα σε όρους που καταλαβαίνει ένας ξενοδόχος («ένας επισκέπτης μπορεί να φτάσει τον υπολογιστή κρατήσεων»), και έδωσε μια συγκεκριμένη αποκατάσταση με εκτίμηση προσπάθειας. Τίποτα σε αυτήν δεν απαιτούσε forklift upgrade — segmentation πάνω στα υπάρχοντα MikroTik, ένα πέρασμα hardening, ένα upgrade, και κλείδωμα του NAS. Ξαναδοκιμάσαμε μετά τις διορθώσεις και εκδώσαμε ένα σύντομο σημείωμα επαλήθευσης που ο ιδιοκτήτης μπορούσε να δείξει στην πλατφόρμα κρατήσεων. Αυτό το σημείωμα επαλήθευσης, όχι η λίστα ευρημάτων, ήταν αυτό που στην πραγματικότητα είχαν ζητήσει χωρίς να το ξέρουν.
Τίποτα εδώ δεν ήταν εξωτικό. Flat δίκτυο, εκτεθειμένο management, αδύναμα credentials, ευαίσθητα δεδομένα προσβάσιμα από την πλευρά του επισκέπτη — είναι τα ίδια τέσσερα findings στα περισσότερα μικρά δίκτυα φιλοξενίας, και το καθένα χαρτογραφείται σε μια διόρθωση που είναι ήδη γραμμένη σε αυτά τα posts. Η αξία του audit δεν είναι η ανακάλυψη κάτι καινούργιου· είναι το να βρεις τα συνηθισμένα προβλήματα πριν τα βρει κάποιος άλλος, και να τα μεταφράσεις σε αποφάσεις που μπορεί να πάρει ο ιδιοκτήτης.
Βασικα Συμπερασματα
Έτσι μοιάζει ένα πραγματικό security audit για ένα ακίνητο φιλοξενίας όταν το τρέχω εγώ — έκθεση, segmentation, και τι δεδομένα είναι πραγματικά προσβάσιμα από πού, γραμμένα σε απλή γλώσσα πάνω στην οποία μπορεί να δράσει ο ιδιοκτήτης, όχι μόνο η ομάδα IT.
Κλεισε μια Discovery Call →