Ένα κρίσιμο κενό ασφαλείας μέγιστης επικινδυνότητας στο GitLab επιτρέπει σε μη εξουσιοδοτημένους εισβολείς να υποκλέψουν ευαίσθητα αρχεία συστήματος με ένα μόνο HTTP αίτημα. Η ευπάθεια CVE-2026-85706 χτυπά απευθείας το API των commits και ήδη καταγράφονται μαζικές επιθέσεις σάρωσης στο διαδίκτυο. Αν διαχειρίζεσαι self-hosted εγκατάσταση, η άμεση αναβάθμιση αποτελεί μονόδρομο πριν εκτεθούν τα διαπιστευτήρια της υποδομής σου.
✂️ Σύνοψη άρθρου
- Τι συνέβη: Εντοπίστηκε path traversal zero-day (CVE-2026-85706) στο GitLab CE/EE που εκθέτει αρχεία συστήματος χωρίς απαίτηση login.
- Ποιοι κινδυνεύουν: Όλοι οι διαχειριστές self-hosted GitLab servers σε εκδόσεις πριν τις 19.3.2, 19.2.6 και 19.1.
- Τι πρέπει να κάνεις: Εγκατάσταση των επίσημων patches άμεσα και έλεγχος των server access logs για ύποπτα HTTP POST requests.
Ανατομία του Path Traversal στο API
Η ρίζα του προβλήματος εντοπίζεται στον ελλιπή έλεγχο ταυτότητας και τον κακό περιορισμό διαδρομών (path confinement) στο Repository Commits API. Το κενό ανέφερε ο ερευνητής ασφαλείας s3ntago μέσω του επίσημου προγράμματος bug bounty στο HackerOne.
Όταν ένας επιτιθέμενος εκτελεί ένα στοχευμένο αίτημα, μπορεί να παρακάμψει το ριζικό κατάλογο του αποθετηρίου. Έτσι, αποκτά ανάγνωση σε αρχεία ρυθμίσεων, μυστικά κλειδιά SSH και tokens σύνδεσης βάσεων δεδομένων. Όπως εξηγούμε συχνά στον οδηγό μας για την προστασία self-hosted servers από zero-day επιθέσεις, τα endpoints χωρίς authentication αποτελούν τον πιο επικίνδυνο φορέα εισβολής.
Η εταιρεία κυβερνοασφάλειας watchTowr επιβεβαίωσε ότι bots σαρώνουν ήδη το διαδίκτυο αναζητώντας εκτεθειμένες εγκαταστάσεις. Η εκμετάλλευση απαιτεί ένα μόνο HTTP POST request, γεγονός που καθιστά την αυτοματοποίηση των επιθέσεων ζήτημα ελάχιστων δευτερολέπτων.
Έλεγχος logs και άμεση αντιμετώπιση
Αν τρέχεις δικό σου instance, το patch είναι η πρώτη κίνηση, αλλά ο έλεγχος για ίχνη παραβίασης είναι εξίσου κρίσιμος. Πρέπει να εξετάσεις άμεσα τα reverse proxy logs (Nginx, Traefik, HAProxy) καθώς και τα production logs του ίδιου του GitLab.
Αναζήτησε αιτήματα HTTP POST προς τη διαδρομή /api/v4/projects/{id}/repository/commits/ που περιλαμβάνουν την παράμετρο file.path. Ύποπτα μοτίβα όπως διαδοχικά ../ ή απόλυτες διαδρομές προς το /etc/gitlab/gitlab-secrets.json υποδεικνύουν απόπειρα υποκλοπής.
Για την πλήρη κατανόηση του πώς ταξινομούνται τέτοιες απειλές, διάβασε την αναλυτική μας προσέγγιση στην ανάλυση των δεικτών ευπάθειας CVE. Η έγκαιρη ανίχνευση αποτρέπει την πλευρική μετακίνηση (lateral movement) του εισβολέα στο εσωτερικό σου δίκτυο.
Το δεύτερο ρήγμα στο Duo Chat
Μαζί με το path traversal, η ομάδα του GitLab διόρθωσε το CVE-2026-87719. Πρόκειται για σφάλμα μη ασφαλούς αποσειριοποίησης (insecure deserialization) στον serializer συνδρομών του GraphQL.
Αυτό το κενό επηρεάζει αποκλειστικά το GitLab Enterprise Edition (EE). Επιτρέπει σε πιστοποιημένους χρήστες με πρόσβαση στη λειτουργία AI Duo Chat να υποκλέψουν ευαίσθητα δεδομένα και ρυθμίσεις του Advanced Search.
Η ενσωμάτωση εργαλείων τεχνητής νοημοσύνης σε enterprise περιβάλλοντα δημιουργεί συχνά απρόβλεπτες επιφάνειες επίθεσης. Στην πράξη, βλέπουμε σύνθετες διεπαφές όπως το GraphQL να παραδίδουν δικαιώματα διαχειριστή σε απλούς εσωτερικούς χρήστες εξαιτίας κακού object parsing.
Γιατί επιμένουν τα απαράδεκτα σφάλματα
Ήδη από το 2007, οργανισμοί όπως η CISA και το FBI έχουν χαρακτηρίσει τα σφάλματα τύπου path traversal ως «ασυγχώρητα». Πρόκειται για αδυναμίες επικύρωσης εισόδου που θεωρητικά θα έπρεπε να έχουν εξαλειφθεί από σύγχρονα frameworks.
Το GitLab αντιμετώπισε παρόμοιο περιστατικό μέγιστης σοβαρότητας το 2023 με το CVE-2023-2825. Η επανάληψη του ίδιου δομικού λάθους σε διαφορετικό σημείο του codebase αποδεικνύει τις προκλήσεις διαχείρισης ενός τεράστιου monolithic συστήματος γραμμένου σε Ruby on Rails και Go.
| Ευπάθεια | Τύπος Απειλής | Απαίτηση Σύνδεσης | Αποτέλεσμα |
|---|---|---|---|
| CVE-2026-85706 | Path Traversal (API) | Όχι (Unauthenticated) | Ανάγνωση αρχείων συστήματος / Secrets |
| CVE-2026-87719 | Insecure Deserialization | Ναι (Duo Chat Access) | Υποκλοπή credentials & instance data |
| CVE-2023-2825 | Path Traversal (Directories) | Όχι (Unauthenticated) | Πλήρης διαρροή πηγαίου κώδικα |
Η άποψή μας στο TechNoid
Η ευκολία ανάπτυξης ενός self-hosted GitLab server αποτελεί δίκοπο μαχαίρι. Προσφέρει ανεξαρτησία από τρίτους παρόχους, αλλά σε καθιστά υπεύθυνο για την 24/7 ασφάλεια υποδομών που βρίσκονται στο στόχαστρο οργανωμένων επιθέσεων.
Το γεγονός ότι ένα unauthenticated path traversal καταφέρνει να φτάσει σε stable builds το 2026 προβληματίζει σοβαρά για το automated testing του GitLab. Αν διατηρείς το instance σου ανοιχτό απευθείας στην public IP χωρίς WAF ή VPN περιορισμούς, ρισκάρεις ολόκληρο το IP της επιχείρησής σου.
Η συμβουλή μας είναι ριζική: αναβάθμισε τώρα στις εκδόσεις 19.3.2, 19.2.6 ή 19.1. Αν η άμεση ενημέρωση είναι τεχνικά αδύνατη σήμερα, απομόνωσε άμεσα το GitLab endpoint πίσω από Tailscale, Cloudflare Access ή αυστηρή IP whitelist.
Συχνές Ερωτήσεις για το GitLab
Ποιες εκδόσεις του GitLab επηρεάζονται από την ευπάθεια;
Επηρεάζονται όλες οι προηγούμενες εκδόσεις GitLab Community και Enterprise Edition πριν τις διορθωτικές 19.3.2, 19.2.6 και 19.1.
Κινδυνεύουν οι χρήστες του GitLab.com ή του GitLab Dedicated;
Όχι, οι cloud υποδομές της εταιρείας έχουν ήδη ενημερωθεί με τα απαραίτητα patches χωρίς να απαιτείται καμία ενέργεια από τους πελάτες.
Πώς λειτουργεί στην πράξη το CVE-2026-85706;
Ένας εισβολέας στέλνει ένα ειδικά διαμορφωμένο HTTP POST request στο endpoint των commits και διαβάζει κρίσιμα αρχεία του διακομιστή χωρίς κωδικούς πρόσβασης.
Τι ζημιά μπορεί να προκαλέσει η διαρροή αρχείων συστήματος;
Επιτρέπει την υποκλοπή του gitlab-secrets.json, βάσεων δεδομένων και private keys, δίνοντας στον εισβολέα πλήρη μόνιμο έλεγχο της εγκατάστασης.
Ποιο είναι το άμεσο μέτρο μετριασμού αν δεν μπορώ να κάνω upgrade;
Περιόρισε την πρόσβαση στο GitLab instance μέσω VPN ή firewall, κλείνοντας την άμεση έκθεση των θυρών 80/443 στο δημόσιο διαδίκτυο.

