Μια ευπάθεια στο Vim επέτρεψε την εκτέλεση κώδικα κατά το άνοιγμα ενός TXT

ζωτικότητα

Μια νέα ευπάθεια επιδιορθώθηκε σε προεγκατεστημένα προγράμματα επεξεργασίας κειμένου σε διάφορες διανομές. Το Linux βρέθηκε στους επεξεργαστές κειμένου Vim και Neovim (CVE-2019-12735).

Το σφάλμα που βρέθηκε σε αυτούς τους συντάκτες επιτρέπει στους χάκερ να ελέγχουν τους υπολογιστές όταν οι χρήστες ανοίγουν ένα κακόβουλο αρχείο κειμένου. Το πρόβλημα εκδηλώνεται με τη δραστηριότητα μοντέλου που είναι ενεργοποιημένη από προεπιλογή (":set modeline"), η οποία επιτρέπει τον ορισμό επιλογών επεξεργασίας στο αρχείο που υποβάλλεται σε επεξεργασία.

Το Vim και το πιρούνι του NeoVim περιείχαν ένα ελάττωμα που υπήρχε στα μοντέλα. Αυτή η δυνατότητα επιτρέπει στους χρήστες να καθορίσουν διαστάσεις παραθύρου και άλλες προσαρμοσμένες επιλογές κοντά στην αρχή ή το τέλος ενός αρχείου κειμένου.

Αυτή η δυνατότητα είναι ενεργοποιημένη από προεπιλογή σε εκδόσεις πριν από το Vim 8.1.1365 Neovim 0.3.6 και ισχύει για όλους τους τύπους αρχείων, συμπεριλαμβανομένων των αρχείων .txt.

Σχετικά με την ευπάθεια στο Vim

Μέσω της Modeline, επιτρέπεται μόνο ένας περιορισμένος αριθμός επιλογών. μικρόΕάν μια παράσταση καθορίζεται ως τιμή επιλογής, εκτελείται σε λειτουργία sandbox, η οποία επιτρέπει τη χρήση μόνο των απλούστερων ασφαλών λειτουργιών.

Ταυτόχρονα, η εντολή ":source" είναι μία από τις επιτρεπόμενες, στην οποία μπορείτε να χρησιμοποιήσετε το "!" για να εκτελέσετε αυθαίρετες εντολές από το καθορισμένο αρχείο.

Επομένως, για να εκτελέσετε τον κώδικα, αρκεί να υποδείξετε στη γραμμή μοντέλου μια κατασκευή της μορφής "set foldexpr = execute ('\: source! Some_file'):". Στο Neovim, η κλήση εκτέλεσης απαγορεύεται, αλλά μπορεί να χρησιμοποιηθεί το assert_fails.

Από την άλλη πλευρά, στο sandbox, αυτό έχει σχεδιαστεί για να αποτρέπει τις παρενέργειες:

«Οι επιλογές «foldexpr», «formatexpr», «includeexpr», «indentexpr», «statusline» και «foldtext» μπορούν να αξιολογηθούν σε ένα sandbox. Αυτό σημαίνει ότι προστατεύεστε από αυτές τις εκφράσεις με δυσάρεστες παρενέργειες. Αυτό παρέχει κάποια ασφάλεια όταν αυτές οι επιλογές ορίζονται από ένα μοντέλο."

Ενώ τα μοντέλα περιορίζουν τις διαθέσιμες εντολές και τις εκτελούν σε περιβάλλον απομονωμένο από το λειτουργικό σύστημα, ο ερευνητής Armin Razmjou παρατήρησε ότι η εντολή :font! παρέκαμψε αυτήν την προστασία:

«Διαβάζει και εκτελεί τις εντολές σε ένα δεδομένο αρχείο σαν να είχαν εισαχθεί χειροκίνητα, εκτελώντας τις μόλις απομείνει το sandbox», έγραψε ο ερευνητής σε ένα μήνυμα που δημοσιεύτηκε νωρίτερα αυτό το μήνα. -ci.

Έτσι, μπορεί κανείς να δημιουργήσει επιπόλαια μια γραμμή μοντέλου που εκτελεί τον κώδικα έξω από το sandbox.

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

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

"Αυτό το PoC περιγράφει μια πραγματική προσέγγιση επίθεσης στην οποία εκκινείται ένα αντίστροφο κέλυφος όταν ο χρήστης ανοίγει το αρχείο", έγραψε ο Razmjou. «Για να αποκρύψετε την επίθεση, το αρχείο θα ξαναγραφεί αμέσως μόλις ανοίξει. Επίσης, το PoC χρησιμοποιεί ακολουθίες διαφυγής τερματικού για να κρύψει τη γραμμή μοντέλου όταν το περιεχόμενο εκτυπώνεται με cat. (το cat -v αποκαλύπτει το πραγματικό περιεχόμενο). «

Η ευπάθεια εκτέλεσης εντολών απαιτεί ενεργοποίηση της τυπικής λειτουργικότητας μοντελοποίησης, όπως σε ορισμένες διανομές Linux από προεπιλογή. Το ελάττωμα εντοπίζεται στο Vim πριν από την έκδοση 8.1.1365 και στο Neovim πριν από την έκδοση 0.3.6.

Αυτή η συμβουλή από την Εθνική βάση δεδομένων ευπάθειας του Εθνικού Ινστιτούτου Προτύπων και Τεχνολογίας δείχνει ότι οι διανομές Debian και Fedora Linux έχουν αρχίσει να κυκλοφορούν σταθερές εκδόσεις.

Στις διανομές, το πρόβλημα επιλύεται RHEL, SUSE/openSUSE, Fedora, FreeBSD, Ubuntu, Arch Linux και ALT.

Το θέμα ευπάθειας παραμένει αδιόρθωτο στο Debian (Στο Debian το μοντέλο είναι απενεργοποιημένο από προεπιλογή, επομένως η ευπάθεια δεν εμφανίζεται στην προεπιλεγμένη κατάσταση.)

Η τελευταία έκδοση του MacOS συνεχίζει να χρησιμοποιεί μια ευάλωτη έκδοση, αν και οι επιθέσεις λειτουργούν μόνο όταν οι χρήστες έχουν αλλάξει μια προεπιλεγμένη ρύθμιση που έχει ενεργοποιημένη τη λειτουργία μοντέλων.


Αφήστε το σχόλιό σας

Η διεύθυνση email σας δεν θα δημοσιευθεί. Τα υποχρεωτικά πεδία σημειώνονται με *

*

*

  1. Υπεύθυνος για τα δεδομένα: AB Internet Networks 2008 SL
  2. Σκοπός των δεδομένων: Έλεγχος SPAM, διαχείριση σχολίων.
  3. Νομιμοποίηση: Η συγκατάθεσή σας
  4. Κοινοποίηση των δεδομένων: Τα δεδομένα δεν θα κοινοποιούνται σε τρίτους, εκτός από νομική υποχρέωση.
  5. Αποθήκευση δεδομένων: Βάση δεδομένων που φιλοξενείται από τα δίκτυα Occentus (ΕΕ)
  6. Δικαιώματα: Ανά πάσα στιγμή μπορείτε να περιορίσετε, να ανακτήσετε και να διαγράψετε τις πληροφορίες σας.