Ευπάθειες στο Git που σας επιτρέπουν να αντικαταστήσετε αρχεία ή να εκτελέσετε τον δικό σας κώδικα

Οι διορθωτικές εκδόσεις του συστήματος ελέγχου κατανεμημένης πηγής Git 2.40.1, 2.39.3, 2.38.5, 2.37.7, 2.36.6, 2.35.8, 2.34.8, 2.33.8, 2.32.7, 2.31.8 και 2.30.9 έχουν. δημοσιεύτηκε .XNUMX, το οποίο διόρθωσε πέντε τρωτά σημεία. Μπορείτε να παρακολουθήσετε την κυκλοφορία των ενημερώσεων πακέτων σε διανομές στις σελίδες Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD. Ως λύση για την προστασία από τρωτά σημεία, συνιστάται να αποφεύγετε την εκτέλεση της εντολής "git apply --reject" όταν εργάζεστε με μη δοκιμασμένες εξωτερικές ενημερώσεις κώδικα και να ελέγχετε τα περιεχόμενα του $GIT_DIR/config πριν εκτελέσετε το "git submodule deinit", "git config --rename-section" και "git config --remove-section" όταν ασχολείστε με μη αξιόπιστα αποθετήρια.

Η ευπάθεια CVE-2023-29007 επιτρέπει την αντικατάσταση των ρυθμίσεων στο αρχείο διαμόρφωσης $GIT_DIR/config, το οποίο μπορεί να χρησιμοποιηθεί για την εκτέλεση κώδικα στο σύστημα καθορίζοντας διαδρομές προς τα εκτελέσιμα αρχεία στις οδηγίες core.pager, core.editor και core.sshCommand. Η ευπάθεια προκαλείται από ένα λογικό σφάλμα λόγω του οποίου οι πολύ μεγάλες τιμές διαμόρφωσης μπορούν να αντιμετωπιστούν ως η αρχή μιας νέας ενότητας κατά τη μετονομασία ή τη διαγραφή μιας ενότητας από ένα αρχείο διαμόρφωσης. Στην πράξη, η αντικατάσταση των αξιών εκμετάλλευσης μπορεί να επιτευχθεί καθορίζοντας πολύ μεγάλες διευθύνσεις URL υπομονάδας που αποθηκεύονται στο αρχείο $GIT_DIR/config κατά την προετοιμασία. Αυτές οι διευθύνσεις URL μπορούν να ερμηνευτούν ως νέες ρυθμίσεις όταν προσπαθείτε να τις αφαιρέσετε μέσω του "git submodule deinit".

Ευπάθεια CVE-2023-25652 επιτρέπει την αντικατάσταση των περιεχομένων των αρχείων εκτός του δέντρου εργασίας όταν τα ειδικά δημιουργημένα patches υποβάλλονται σε επεξεργασία με την εντολή "git application --reject". Εάν προσπαθήσετε να εκτελέσετε μια κακόβουλη ενημερωμένη έκδοση κώδικα με την εντολή "git application" που προσπαθεί να γράψει σε ένα αρχείο μέσω ενός συμβολικού συνδέσμου, η λειτουργία θα απορριφθεί. Στο Git 2.39.1, η προστασία χειρισμού συμβολικών συνδέσμων έχει επεκταθεί για να μπλοκάρει ενημερώσεις κώδικα που δημιουργούν συμβολικούς συνδέσμους και επιχειρούν να γράψουν μέσω αυτών. Η ουσία της ευπάθειας που εξετάζεται είναι ότι το Git δεν έλαβε υπόψη ότι ο χρήστης μπορεί να εκτελέσει την εντολή "git apply -reject" για να γράψει τα απορριφθέντα μέρη της ενημέρωσης κώδικα ως αρχεία με την επέκταση ".rej" και ο εισβολέας μπορεί χρησιμοποιήστε αυτήν την ευκαιρία για να γράψετε τα περιεχόμενα σε έναν αυθαίρετο κατάλογο, εφόσον το επιτρέπουν τα τρέχοντα δικαιώματα.

Επιπλέον, έχουν επιδιορθωθεί τρία τρωτά σημεία που εμφανίζονται μόνο στην πλατφόρμα Windows: CVE-2023-29012 (αναζητήστε το εκτελέσιμο doskey.exe στον κατάλογο εργασίας του αποθετηρίου κατά την εκτέλεση της εντολής "Git CMD", η οποία σας επιτρέπει να οργανώσετε την εκτέλεση του κώδικά σας στο σύστημα του χρήστη), CVE-2023 -25815 (υπερχείλιση buffer κατά την επεξεργασία αρχείων προσαρμοσμένης τοπικής προσαρμογής στο gettext) και CVE-2023-29011 (δυνατότητα αντικατάστασης του αρχείου connect.exe κατά την εργασία μέσω του SOCKS5).

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο