Ευπάθεια στο πακέτο Pac-resolver NPM με 3 εκατομμύρια λήψεις την εβδομάδα

Το πακέτο Pac-resolver NPM, το οποίο έχει πάνω από 3 εκατομμύρια λήψεις την εβδομάδα, έχει μια ευπάθεια (CVE-2021-23406) που επιτρέπει στον κώδικα JavaScript να εκτελείται στο πλαίσιο της εφαρμογής κατά την αποστολή αιτημάτων HTTP από έργα Node.js που υποστήριξη λειτουργίας αυτόματης διαμόρφωσης διακομιστή μεσολάβησης.

Το πακέτο Pac-resolver αναλύει τα αρχεία PAC που περιλαμβάνουν μια αυτόματη δέσμη ενεργειών διαμόρφωσης διακομιστή μεσολάβησης. Το αρχείο PAC περιέχει κανονικό κώδικα JavaScript με μια συνάρτηση FindProxyForURL που καθορίζει τη λογική επιλογής διακομιστή μεσολάβησης ανάλογα με τον κεντρικό υπολογιστή και τη διεύθυνση URL που ζητήθηκε. Η ουσία της ευπάθειας είναι ότι για την εκτέλεση αυτού του κώδικα JavaScript σε pac-resolver, χρησιμοποιήθηκε το VM API που παρέχεται στο Node.js, το οποίο σας επιτρέπει να εκτελέσετε κώδικα JavaScript σε διαφορετικό περιβάλλον του κινητήρα V8.

Το καθορισμένο API επισημαίνεται ρητά στην τεκμηρίωση ότι δεν προορίζεται για την εκτέλεση μη αξιόπιστου κώδικα, καθώς δεν παρέχει πλήρη απομόνωση του κώδικα που εκτελείται και επιτρέπει την πρόσβαση στο αρχικό περιβάλλον. Το ζήτημα έχει αντιμετωπιστεί στο pac-resolver 5.0.0, το οποίο έχει μετακινηθεί για χρήση της βιβλιοθήκης vm2, η οποία παρέχει υψηλότερο επίπεδο απομόνωσης κατάλληλο για την εκτέλεση μη αξιόπιστου κώδικα.

Ευπάθεια στο πακέτο Pac-resolver NPM με 3 εκατομμύρια λήψεις την εβδομάδα

Όταν χρησιμοποιείται μια ευάλωτη έκδοση του pac-resolver, ένας εισβολέας μέσω της μετάδοσης ενός ειδικά σχεδιασμένου αρχείου PAC μπορεί να επιτύχει την εκτέλεση του κώδικα JavaScript του στο πλαίσιο του κώδικα ενός έργου χρησιμοποιώντας το Node.js, εάν αυτό το έργο χρησιμοποιεί βιβλιοθήκες που έχουν εξαρτήσεις με pac-resolver. Η πιο δημοφιλής από τις προβληματικές βιβλιοθήκες είναι η Proxy-Agent, η οποία αναφέρεται ως εξάρτηση σε 360 έργα, συμπεριλαμβανομένων των urllib, aws-cdk, mailgun.js και firebase-tools, με συνολικά περισσότερες από τρία εκατομμύρια λήψεις την εβδομάδα.

Εάν μια εφαρμογή που έχει εξαρτήσεις από τον αναλυτή pac φορτώνει ένα αρχείο PAC που παρέχεται από ένα σύστημα που υποστηρίζει το πρωτόκολλο αυτόματης διαμόρφωσης διακομιστή μεσολάβησης WPAD, τότε οι εισβολείς με πρόσβαση στο τοπικό δίκτυο μπορούν να χρησιμοποιήσουν τη διανομή των ρυθμίσεων διακομιστή μεσολάβησης μέσω DHCP για να εισαγάγουν κακόβουλα αρχεία PAC.

Πηγή: opennet.ru

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