Cloud, DevOps & Architecture

Πώς κρύβονται οι επιτιθέμενοι σε GitHub λογαριασμούς και πώς να προστατευτείς

Παλιοί ή παρατημένοι GitHub λογαριασμοί μπορούν να γίνουν κάλυψη για reconnaissance και phishing. Δες τι να ελέγξεις άμεσα σε λογαριασμούς, tokens και δικαιώματα.

Ένας παλιός GitHub λογαριασμός που έχει μείνει ανοιχτός, ένα ξεχασμένο OAuth token ή ένα account συνεργάτη που δεν απενεργοποιήθηκε ποτέ μπορεί να γίνει το ιδανικό καμουφλάζ για επιτιθέμενους. Δεν μιλάμε μόνο για developers. Μικρές επιχειρήσεις, agencies, e-shops και ομάδες που μοιράζονται κώδικα, πρόσβαση ή τεκμηρίωση έχουν πλέον ένα πολύ πρακτικό ρίσκο: οι επιτιθέμενοι δεν χτυπούν πάντα πόρτες. Μπαίνουν από λογαριασμούς που μοιάζουν νόμιμοι.

Το πρόβλημα δεν είναι θεωρητικό. Η χαρτογράφηση οργανισμών στο GitHub, με αυτοματοποιημένα εργαλεία και παλιούς ή παραβιασμένους λογαριασμούς, βοηθά έναν εισβολέα να βρει ποιος δουλεύει πού, τι repositories υπάρχουν, ποια ονόματα χρηστών συνδέονται με την εταιρεία και ποια συστήματα αξίζει να στοχεύσει μετά με phishing ή credential theft. Για μια ελληνική μικρομεσαία επιχείρηση, αυτό μπορεί να σημαίνει από ψεύτικο email σε λογιστήριο μέχρι πρόσβαση σε CI/CD, cloud keys ή εσωτερικά tickets.

Πώς ένα «αθώο» GitHub account γίνεται εργαλείο reconnaissance

Ο στόχος του attacker δεν είναι πάντα να σπάσει άμεσα κώδικα. Συχνά θέλει πρώτα να καταλάβει το σχήμα του οργανισμού. Ποιοι developers έχουν δημόσια προφίλ, ποια repositories συνδέονται με την εταιρεία, ποια packages χρησιμοποιεί η ομάδα, ποιοι συντηρητές εμφανίζονται σε issues και pull requests. Ένας λογαριασμός που υπάρχει χρόνια, δεν γράφει τίποτα ύποπτο και έχει «φυσική» δραστηριότητα δίνει πιο εύκολα πρόσβαση σε αυτά τα στοιχεία χωρίς να τραβάει την προσοχή.

Το πιο επικίνδυνο κομμάτι είναι ο συνδυασμός: παλιά accounts, compromised OAuth tokens και προσωπικά access tokens που δεν έχουν λήξει ποτέ. Αν ένα token μείνει ενεργό μετά από αποχώρηση εργαζόμενου ή μετά από αλλαγή laptop, ο επιτιθέμενος δεν χρειάζεται καν κωδικό. Χρειάζεται μόνο το token για να διαβάσει repositories, να δει οργανωτική δομή ή να ανιχνεύσει πού θα κρύψει το επόμενο βήμα της επίθεσης.

Τι να ελέγξεις σήμερα σε GitHub, Google Workspace και Slack

Αν διαχειρίζεσαι μικρή ομάδα ή εταιρικό λογαριασμό, ξεκίνα από τα βασικά. Έλεγξε ποιοι έχουν πρόσβαση στο GitHub organization, ποιοι είναι outside collaborators και ποια tokens παραμένουν ενεργά. Κάνε άμεσα ανασκόπηση σε όλα τα OAuth apps που έχουν πρόσβαση στο account και αφαίρεσε όσα δεν χρειάζονται. Αν δεν υπάρχει σαφής ιδιοκτήτης για ένα repository, ένα bot account ή ένα CI integration, αντιμετώπισέ το σαν ρίσκο, όχι σαν λεπτομέρεια.

Και μην σταματήσεις στο GitHub. Πολλά συμβάντα ασφάλειας ξεκινούν από email και chat. Ένας παρατημένος Google Workspace λογαριασμός, ένα Slack guest account ή ένα Microsoft 365 mailbox με χαλαρή ρύθμιση μπορεί να βοηθήσει τον attacker να βρει ονόματα, ρόλους και εσωτερικές ρουτίνες. Αν μια επιχείρηση στην Ελλάδα έχει συνεργάτες από εξωτερικούς developers, accountants ή marketing agencies, πρέπει να ξέρει ποιοι μπαίνουν πού και για πόσο.

  • Κλείσε αμέσως accounts που δεν ανήκουν πλέον σε ενεργό άτομο ή συνεργάτη.
  • Γύρισε όλα τα προσωπικά access tokens σε λογική λήξη ή ανάκληση όπου γίνεται.
  • Ενεργοποίησε 2FA ή, ακόμη καλύτερα, passkeys για διαχειριστικούς λογαριασμούς.
  • Καθάρισε παλιά OAuth apps και CI/CD integrations που δεν χρησιμοποιούνται.
  • Έλεγξε logs για ασυνήθιστα API calls, πολλαπλά failed logins και μαζική ανάγνωση οργανωτικών δεδομένων.

Οι ρυθμίσεις που μειώνουν τον κίνδυνο σε μικρές ομάδες

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

Ο πιο καθαρός τρόπος να περιορίσεις το πρόβλημα είναι να βάλεις κανόνες που δεν εξαρτώνται από μνήμη. Μόνο συγκεκριμένα άτομα με admin ρόλο στα repositories. Μόνο approved SSO όπου υπάρχει. Υποχρεωτική πολυπαραγοντική ταυτοποίηση. Περιοδικός έλεγχος των tokens. Και επιβολή του «λιγότερου δυνατού δικαιώματος» σε κάθε integration. Αν χρησιμοποιείτε GitHub Copilot ή άλλα εργαλεία προγραμματισμού με telemetry, δώστε και εκεί σαφή πολιτική για το πού φεύγουν τα δεδομένα και ποιος τα βλέπει.

Για επιχειρήσεις που δουλεύουν με outsourcing ή εξωτερικούς συνεργάτες, η μεγάλη παγίδα είναι οι μισοκλειστές προσβάσεις. Μείνετε μετρημένοι: όποιος δεν χρειάζεται πλέον πρόσβαση, την χάνει την ίδια μέρα. Όποιος αλλάζει ρόλο, παίρνει νέο set δικαιωμάτων. Όποιος φεύγει, δεν κρατά backdoor σε repositories, cloud console ή shared password manager.

Πότε το GitHub γίνεται αφετηρία για phishing και απάτες

Όταν ένας επιτιθέμενος έχει χτίσει ένα πειστικό προφίλ με πραγματικά repositories, παλιά δραστηριότητα και ονόματα που μοιάζουν με μέλη ομάδας, το επόμενο βήμα είναι συνήθως κοινωνική μηχανική. Μπορεί να σταλεί μήνυμα για «επείγον review», ψεύτικο security alert, request για reset κωδικού ή παραπλανητικό invoice σε email που βρέθηκε από δημόσιο προφίλ. Το ίδιο μοτίβο βλέπουμε και εκτός GitHub: τα δεδομένα ενός λογαριασμού βοηθούν να φτιαχτεί μια επίθεση που δείχνει εσωτερική.

Γι’ αυτό και οι απλοί χρήστες δεν πρέπει να κοιτάνε μόνο αν «έχουν password». Πρέπει να ξέρουν πού έχουν αφήσει συνδεδεμένους λογαριασμούς, ποια apps έχουν άδεια να διαβάζουν δεδομένα και ποια παλιά sessions συνεχίζουν να δουλεύουν από συσκευή που δεν χρησιμοποιούν πια. Ένα ξεχασμένο login σε παλιό laptop ή ένα token σε IDE μπορεί να γίνει ο πιο εύκολος δρόμος για προβολή κώδικα, ιδιωτικών issues ή εταιρικών στοιχείων.

Αν χρησιμοποιείς GitHub και σε προσωπική βάση, έλεγξε τουλάχιστον δύο πράγματα: ενεργοποίησε passkeys ή 2FA και κάνε ανασκόπηση στα authorized OAuth apps. Αν έχεις αλλάξει κινητό, laptop ή εταιρεία, βεβαιώσου ότι δεν έχει μείνει ενεργό κανένα token που δεν χρειάζεσαι. Είναι από τις λίγες κινήσεις ασφάλειας που παίρνουν λίγα λεπτά και κόβουν αρκετό ρίσκο.

Τελικό συμπέρασμα για ελληνικές ομάδες και freelancers

Η ιστορία εδώ δεν είναι «οι χάκερς κοιτάνε GitHub». Είναι ότι το identity layer της δουλειάς σου απλώνεται σε πάρα πολλά σημεία: code hosting, email, chat, cloud, password manager, developer tools. Όσο περισσότερα accounts μένουν μισάνοιχτα, τόσο πιο εύκολα ένας επιτιθέμενος θα περάσει για κανονικός χρήστης. Για freelancers και μικρές επιχειρήσεις στην Ελλάδα, η σωστή κίνηση δεν είναι να αγοράσουν άλλο εργαλείο. Είναι να κλείσουν ό,τι δεν χρειάζεται, να ελέγξουν τα tokens, να βάλουν 2FA παντού και να κάνουν έναν τακτικό έλεγχο πρόσβασης πριν γίνει πρόβλημα.

Τεκμηρίωση