Έχουν κυκλοφορήσει οι ενημερώσεις κώδικα Git 2.38.4, 2.37.6, 2.36.5, 2.35.7, 2.34.7, 2.33.7, 2.32.6, 2.31.7 και 2.30.8 για το κατανεμημένο σύστημα διαχείρισης πηγαίου κώδικα. Αυτές οι ενημερώσεις κώδικα αντιμετωπίζουν δύο ευπάθειες που επηρεάζουν τις βελτιστοποιήσεις τοπικής κλωνοποίησης και την εντολή "git apply". Μπορείτε να παρακολουθήσετε την κυκλοφορία των ενημερώσεων πακέτων για αυτές τις διανομές στις ακόλουθες σελίδες: Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD. Εάν η εγκατάσταση της ενημέρωσης δεν είναι δυνατή, ως λύση, συνιστούμε να αποφύγετε τη λειτουργία "git clone" με την επιλογή "--recurse-submodules" με μη αξιόπιστα αποθετήρια και να μην χρησιμοποιείτε τις εντολές "git apply" και "git am" με μη δοκιμασμένο κώδικα.
- Ευπάθεια CVE-2023-22490 επιτρέπει σε έναν εισβολέα που ελέγχει τα περιεχόμενα ενός κλωνοποιημένου αποθετηρίου να αποκτήσει πρόσβαση σε ευαίσθητα δεδομένα στο σύστημα του χρήστη. Η ευπάθεια προκαλείται από δύο ελαττώματα:
Το πρώτο ελάττωμα επιτρέπει, όταν εργάζεστε με ένα ειδικά σχεδιασμένο αποθετήριο, να επιτύχετε την εφαρμογή τοπικών βελτιστοποιήσεων κλωνοποίησης ακόμη και όταν χρησιμοποιείτε μεταφορά που αλληλεπιδρά με εξωτερικά συστήματα.
Το δεύτερο ελάττωμα επιτρέπει την τοποθέτηση ενός συμβολικού συνδέσμου αντί για τον κατάλογο $GIT_DIR/objects, παρόμοια με την ευπάθεια CVE-2022-39253, η επιδιόρθωση για την οποία απέκλεισε την τοποθέτηση συμβολικών συνδέσμων στον κατάλογο $GIT_DIR/objects, αλλά δεν έλεγξε το γεγονός ότι ο ίδιος ο σύνδεσμος $GIT_DIR/objects θα μπορούσε να είναι ένας συμβολικός σύνδεσμος.
Στη λειτουργία τοπικής κλωνοποίησης, το git μεταφέρει τα $GIT_DIR/objects στον κατάλογο προορισμού διαγράφοντας τις αναφορές από συμβολικούς συνδέσμους, με αποτέλεσμα τα αρχεία στα οποία υποδεικνύουν να αντιγράφονται απευθείας στον κατάλογο προορισμού. Η μετάβαση σε βελτιστοποιήσεις τοπικής κλωνοποίησης για μη τοπικές μεταφορές επιτρέπει την εκμετάλλευση κατά την εργασία με εξωτερικά αποθετήρια (για παράδειγμα, η αναδρομική συμπερίληψη υπομονάδων με το "git clone --recurse-submodules" μπορεί να οδηγήσει στην κλωνοποίηση ενός κακόβουλου αποθετηρίου που έχει συσκευαστεί ως υπομονάδα σε άλλο αποθετήριο).
- Το θέμα ευπάθειας CVE-2023-23946 επιτρέπει την αντικατάσταση του περιεχομένου αρχείων εκτός του καταλόγου εργασίας, μεταβιβάζοντας ειδικά σχεδιασμένα δεδομένα εισόδου στην εντολή git apply. Για παράδειγμα, η επίθεση θα μπορούσε να εκτελεστεί όταν το git apply επεξεργάζεται ενημερώσεις κώδικα που έχουν δημιουργηθεί από τον εισβολέα. Για να αποτρέψει τις ενημερώσεις κώδικα από τη δημιουργία αρχείων εκτός του αντιγράφου εργασίας, το git apply αποκλείει την επεξεργασία ενημερώσεων κώδικα που επιχειρούν να γράψουν ένα αρχείο χρησιμοποιώντας συμβολικούς συνδέσμους. Αλλά αυτή η προστασία ήταν παρακάμψιμη με τη δημιουργία του συμβολικού συνδέσμου εξαρχής.
Πηγή: opennet.ru
