GitLab: οι διορθώσεις έφτασαν σε παλιότερες εκδόσεις, αλλά τα logs κρίνουν τη ζημιά

|Συντάκτης: Συντακτική ομάδα QUASA|5 λεπτά ανάγνωσης| 1
GitLab: οι διορθώσεις έφτασαν σε παλιότερες εκδόσεις, αλλά τα logs κρίνουν τη ζημιά

Στις 23 Σεπτεμβρίου 2026, η GitLab πρόσθεσε τις διορθώσεις για τα CVE-2026-85706 και CVE-2026-87719 στις εκδόσεις 19.0.9 και 18.11.12 των Community και Enterprise Edition. Η ενημέρωση δίνει στους διαχειριστές παλαιότερων κλάδων GitLab Self-Managed διορθωμένη έκδοση χωρίς να απαιτεί μετάβαση στην πιο πρόσφατη κύρια σειρά.

Η αλλαγή έκδοσης κλείνει το ευάλωτο σημείο, αλλά δεν δείχνει αν είχε ήδη αποκαλυφθεί κάποιο αρχείο μέσω του CVE-2026-85706. Για αυτή την απάντηση χρειάζονται οι καταγραφές της API και του Workhorse, διατηρημένες πριν από αναβάθμιση ή επανεκκίνηση: ένα αίτημα μπορεί να προκάλεσε ανάγνωση αρχείου χωρίς να επιστρέψει το περιεχόμενό του στον αιτούντα.

Οι διορθωμένοι κλάδοι και η διαφορά στη φιλοξενία

Η τεχνική καταγραφή της Nullsector αναφέρει τα νέα backports και την καταχώριση της ευπάθειας στον κατάλογο Known Exploited Vulnerabilities της CISA. Στο απομονωμένο εργαστηριακό της περιβάλλον αναπαρήγαγε την ανάγνωση σε 19.3.1 και κατέγραψε ότι η 19.3.2 απέκρουσε τις ίδιες δοκιμές. Πρόκειται για αποτέλεσμα της συγκεκριμένης δοκιμής, όχι για αποτίμηση κάθε εγκατάστασης.

Ο διαχειριστής συγκρίνει πρώτα τον κλάδο του και έπειτα το patch: στις σειρές 18.11 και 19.0, το κατώφλι διόρθωσης για το CVE-2026-85706 είναι αντίστοιχα 18.11.12 και 19.0.9, ενώ στις 19.1, 19.2 και 19.3 ισχύουν τα 19.1.8, 19.2.6 και 19.3.2. Εγκαταστάσεις από την 18.7 έως και την 18.10 βρίσκονται στο επηρεαζόμενο εύρος και χρειάζονται μετάβαση σε διορθωμένο κλάδο, όπως η 18.11.12 ή νεότερος. Μικρότερος αριθμός patch στον ίδιο κλάδο δεν περιέχει τη συγκεκριμένη διόρθωση.

Αυτά τα όρια αφορούν τις αυτοδιαχειριζόμενες εγκαταστάσεις CE και EE. Για το δεύτερο ζήτημα του ίδιου backport, το CVE-2026-87719, η ευάλωτη λειτουργία αφορά την Enterprise Edition. Το GitLab.com και το GitLab Dedicated λειτουργούν με τη διόρθωση από την πλευρά της GitLab, χωρίς αντίστοιχη ενέργεια αναβάθμισης από τους πελάτες τους. Στην αυτοδιαχειριζόμενη εγκατάσταση, ο οργανισμός διατηρεί και την ευθύνη του patch και τα ίχνη ενός πιθανού περιστατικού.

Πότε η ανάγνωση αρχείου γίνεται αποκάλυψη

Το CVE-2026-85706 αφορά παράμετρο διαδρομής στην API δημιουργίας commits αποθετηρίου. Υπό τις συνθήκες της ευπάθειας, αίτημα χωρίς πιστοποίηση μπορούσε να οδηγήσει την εφαρμογή σε αρχείο του διακομιστή έξω από τον προβλεπόμενο χώρο προσωρινών αρχείων. Το άνοιγμα και η ανάγνωση του αρχείου από τον διακομιστή προηγούνται της επεξεργασίας που κρίνει τι θα εμφανιστεί στην απόκριση HTTP.

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

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

Ποια ίχνη διατηρούνται πριν από επανεκκίνηση

Η οδηγία διερεύνησης της GitLab ζητά αντίγραφα των api_json.log, της τρέχουσας καταγραφής Workhorse και των καταγραφών nginx πριν από αναβάθμιση ή επανεκκίνηση, επειδή μια επανεκκίνηση μπορεί να περιστρέψει το αρχείο Workhorse. Στις εγκαταστάσεις με πακέτο Linux περιλαμβάνονται και οι περιστραμμένες εκδόσεις του api_json.log. Σε εγκαταστάσεις από πηγαίο κώδικα ή με Helm, οι ίδιες κατηγορίες καταγραφών αναζητούνται στις αντίστοιχες θέσεις ή στα containers.

Η διαλογή ξεκινά από τις τιμές file.path και metadata.path στις εγγραφές της API, όταν αυτές οδηγούν έξω από τον αναμενόμενο χώρο /uploads/tmp/. Η διαδρομή του endpoint, το όνομα της παραμέτρου και η τιμή της μπορεί να είναι κωδικοποιημένα, ενώ ένα αίτημα μπορεί να συνδυάζει κανονική και ύποπτη διαδρομή. Χρειάζεται έλεγχος κάθε τιμής μετά την αποκωδικοποίηση και την επίλυση τμημάτων όπως το ../, ώστε να μη χαθεί ένα αίτημα μόνο επειδή περιέχει και κανονική διαδρομή.

Το correlation_id ενώνει την υποψήφια εγγραφή του api_json.log με την εγγραφή πρόσβασης του Workhorse. Εκεί, το written_bytes καταγράφει το μέγεθος της απόκρισης που στάλθηκε στον πελάτη· στο api_json.log, το api_error δείχνει αν το σφάλμα περιείχε απόσπασμα αρχείου. Για να ερμηνευτεί το written_bytes χρειάζεται βάση σύγκρισης από αίτημα προς ανύπαρκτο αρχείο στην ίδια εγκατάσταση, καθώς συμπίεση ή ενδιάμεσος proxy μπορούν να αλλάξουν το μετρούμενο μέγεθος.

Τι τεκμηριώνει πραγματική επιστροφή δεδομένων

Όταν το api_error περιέχει το επίμαχο απόσπασμα και η αντίστοιχη καταγραφή Workhorse συμφωνεί με την απόκριση, υπάρχει τεκμήριο για τα συγκεκριμένα bytes που έφτασαν στον αιτούντα. Το written_bytes περιλαμβάνει και το περίβλημα της απόκρισης, επομένως δεν ισούται με το μέγεθος του αποκαλυφθέντος τμήματος. Για πιστή ανάκτηση του αποσπάσματος απαιτείται ανάγνωση του μηνύματος μέσα στο api_error, το οποίο περιέχει ενσωματωμένο JSON.

Αν το api_error απουσιάζει από πλήρη εγγραφή και το written_bytes ταιριάζει στο μοτίβο απόκρισης χωρίς περιεχόμενο, το συγκεκριμένο αίτημα δεν δείχνει αποκάλυψη, ακόμη κι αν ο διακομιστής διάβασε το αρχείο. Απουσία εγγραφής, περικομμένο log ή αλλοίωση της απόκρισης από ενδιάμεσο σύστημα αφήνουν το αποτέλεσμα ανοιχτό. Για διαδρομή που ζητήθηκε επανειλημμένα, η εκτίμηση χρειάζεται όλες τις σχετικές εγγραφές και το περιεχόμενο που είχε το αρχείο τη στιγμή κάθε αιτήματος.

Το απόσπασμα μπορεί να περιέχει διαπιστευτήρια, άρα τα αντίγραφα καταγραφών χρειάζονται προστασία ως ευαίσθητα αποδεικτικά στοιχεία. Αν εντοπιστούν μυστικά στην πραγματική απόκριση, εκείνα καθορίζουν ποια διαπιστευτήρια πρέπει να εξεταστούν για αλλαγή και ποιες προσβάσεις σε συνδεδεμένα συστήματα χρειάζονται διερεύνηση. Η διεύθυνση IP στις καταγραφές είναι αφετηρία για αυτή τη διερεύνηση, καθώς μπορεί να επηρεάζεται από την εμπιστοσύνη του proxy στην κεφαλίδα X-Forwarded-For. Αν τα ίχνη χαθούν πριν συλλεχθούν, το patch αποτρέπει νέα εκμετάλλευση, αλλά η προηγούμενη έκθεση μπορεί να μείνει χωρίς οριστική αποτίμηση.

Διαβάστε επίσης:

Κοινοποίηση:

Εγγραφείτε στο newsletter μας

Λάβετε τα τελευταία νέα για Web3, AI και κρυπτονομίσματα απευθείας στα εισερχόμενά σας.

0