Ξεχασμένο, επικίνδυνο σφάλμα στην Python έρχεται ξανά στο προσκήνιο

Ένα μη επιδιορθωμένο σφάλμα Python, ηλικίας 15 ετών επιτρέπει την εκτέλεση κώδικα και επηρεάζει σε 350 χιλιάδες εφαρμογές σε Windows και Linux

Python

Μια ευπάθεια στη γλώσσα προγραμματισμού Python που έχει αγνοηθεί εδώ και 15 χρόνια ήρθε τώρα ξανά στο προσκήνιο, καθώς οι ερευνητές με τρόμο ανακάλυψαν ότι πιθανότατα επηρεάζει περισσότερα από 350.000 αποθετήρια ανοιχτού κώδικα και μπορεί να οδηγήσει σε εκτέλεση κώδικα.

Η ευπάθεια αυτή αποκαλύφθηκε το 2007 και επισημάνθηκε ως CVE-2007-4559, αλλά δεν έλαβε ποτέ επιδιόρθωση με ενημερωμένη έκδοση (!). Ο μόνος μετριασμός που παρέχεται είναι μια ενημέρωση τεκμηρίωσης που προειδοποιεί τους προγραμματιστές σχετικά με τον κίνδυνο.

Χωρίς επιδιόρθωση από το 2007
Η ευπάθεια βρίσκεται στο πακέτο Python tarfile, σε κώδικα που χρησιμοποιεί μη συνάρτηση tarfile.extract(). Είναι ένα σφάλμα διέλευσης διαδρομής που επιτρέπει σε έναν εισβολέα να αντικαταστήσει αυθαίρετα αρχεία.

Τεχνικές λεπτομέρειες για το CVE-2007-4559 είναι διαθέσιμες από την αρχική αναφορά τον Αύγουστο του 2007. Αν και δεν υπάρχουν αναφορές σχετικά με τη χρήση του σφάλματος σε επιθέσεις, αντιπροσωπεύει κίνδυνο στην αλυσίδα εφοδιασμού λογισμικού.

Νωρίτερα φέτος, κατά τη διερεύνηση ενός άλλου ζητήματος ασφαλείας, το CVE-2007-4559 ανακαλύφθηκε ξανά από έναν ερευνητή της Trellix.

  Έτοιμες για χρήση: οθόνες Philips Smart All-in-One

Λιγότερο από μια εβδομάδα μετά την αποκάλυψη, ένα μήνυμα από το bug tracker της Python ανήγγειλε ότι το ζήτημα έκλεισε, με την επιδιόρθωση να είναι μία απλή προειδοποίηση “ότι μπορεί να είναι επικίνδυνη η εξαγωγή αρχείων από μη αξιόπιστες πηγές”.

Εκτιμάται ότι επηρεάστηκαν 350.000 εφαρμογές
Αναλύοντας τον αντίκτυπο, οι ερευνητές της Trellix διαπίστωσαν ότι η ευπάθεια ήταν παρούσα σε χιλιάδες έργα λογισμικού, ανοιχτού και κλειστού κώδικα.

Οι ερευνητές ερεύνησαν ένα σύνολο 257 αποθετηρίων που ήταν πιο πιθανό να περιλαμβάνουν τον ευάλωτο κώδικα και έλεγξαν χειροκίνητα 175 από αυτά για να δουν αν επηρεάστηκαν. Όπως αποκαλύφθηκε το 61%  ήταν ευάλωτα.

Το μικρό αυτό σύνολο δειγμάτων χρησίμευσε ως βάση για να καταλήξουν σε μια εκτίμηση όλων των επηρεαζόμενων αποθετηρίων που είναι διαθέσιμα στο GitHub, και που τα υπολογίζουν γύρω στα 350.000 ευάλωτα αποθετήρια. Πολλά από τα οποία χρησιμοποιούνται από εργαλεία μηχανικής μάθησης (π.χ. GitHub Copilot) που βοηθούν τους προγραμματιστές να ολοκληρώσουν ένα έργο πιο γρήγορα.

Τέτοια αυτοματοποιημένα εργαλεία βασίζονται σε κώδικα από εκατοντάδες χιλιάδες αποθετήρια για να παρέχουν επιλογές “αυτόματης συμπλήρωσης”. Εάν παρέχουν μη ασφαλή κώδικα, το ζήτημα μεταδίδεται σε άλλα έργα, χωρίς να το γνωρίζει ο προγραμματιστής.

  Sub404: Ανακάλυψε κενά ασφαλείας σε subdomains

Εξετάζοντας περαιτέρω το πρόβλημα, η Trellix διαπίστωσε ότι ο κώδικας ανοιχτού κώδικα που είναι ευάλωτος στο CVE-2007-4559 “εκτείνεται σε έναν τεράστιο αριθμό βιομηχανιών”.

Σε μια τεχνική ανάρτηση, ο ερευνητής ευπάθειας του Trellix, Kasimir Schulz, ο οποίος ανακάλυψε ξανά το σφάλμα, περιέγραψε τα απλά βήματα την εκμετάλλευση του CVE-2007-4559 στην έκδοση Windows του Spyder IDE, ενός ενσωματωμένου περιβάλλοντος ανάπτυξης πολλαπλών πλατφορμών ανοιχτού κώδικα για επιστημονικό προγραμματισμό.

Οι ερευνητές έδειξαν ότι η ευπάθεια μπορεί να αξιοποιηθεί και στο Linux. Κατάφεραν να επιτύχουν την εκτέλεση του κώδικα σε μια δοκιμή στην υπηρεσία διαχείρισης υποδομής πληροφορικής Polemarch.

Εκτός από το ότι η Trellix εφιστά την προσοχή στην ευπάθεια και τον κίνδυνο που ενέχει, η εταιρεία δημιούργησε επίσης ενημερώσεις κώδικα για κάτι περισσότερα από 11.000 έργα. Οι διορθώσεις θα είναι διαθέσιμες σε ένα διαχωρισμένο από τον επηρεαζόμενο χώρο αποθήκευσης. Α

Λόγω του μεγάλου αριθμού των επηρεαζόμενων αποθετηρίων, οι ερευνητές αναμένουν περισσότερα από 70.000 έργα να λάβουν την επιδιόρθωση τις επόμενες εβδομάδες.

Ακολουθήσετε μας στο Google News iGuRu.gr at Google news

Python,bug

Written by Δημήτρης

O Δημήτρης μισεί τις Δευτέρες.....

Αφήστε μια απάντηση

Η ηλ. διεύθυνση σας δεν δημοσιεύεται.

Το μήνυμα σας δεν θα δημοσιευτεί εάν:
1. Περιέχει υβριστικά, συκοφαντικά, ρατσιστικά, προσβλητικά ή ανάρμοστα σχόλια.
2. Προκαλεί βλάβη σε ανηλίκους.
3. Παρενοχλεί την ιδιωτική ζωή και τα ατομικά και κοινωνικά δικαιώματα άλλων χρηστών.
4. Διαφημίζει προϊόντα ή υπηρεσίες ή διαδικτυακούς τόπους .
5. Περιέχει προσωπικές πληροφορίες (διεύθυνση, τηλέφωνο κλπ).


  +  62  =  69