ΑρχικήSecurityΚρίσιμη ευπάθεια στο Node.js μπορεί να προκαλέσει server crashes

Κρίσιμη ευπάθεια στο Node.js μπορεί να προκαλέσει server crashes

Το Node.js έχει κυκλοφορήσει ενημερώσεις για την επίλυση ενός κρίσιμου ζητήματος ασφαλείας που επηρεάζει “σχεδόν κάθε production Node.js app” και, αν εκμεταλλευτεί επιτυχώς, μπορεί να προκαλέσει κατάσταση denial-of-service (DoS).

Node.js

“Το Node.js/V8 καταβάλλει κάθε προσπάθεια για να ανακάμψει από την εξάντληση του stack space με ένα catchable error, στο οποίο οι πλατφόρμες έχουν βασιστεί για τη διαθεσιμότητα υπηρεσιών“, δήλωσαν οι Matteo Collina και Joyee Cheung του Node.js.

Δείτε επίσης: Σοβαρό σφάλμα στο λογισμικό της Broadcom επιτρέπει άρνηση υπηρεσίας WiFi

Node.js: Πώς λειτουργεί η ευπάθεια

Το πρόβλημα προκύπτει από το γεγονός ότι το Node.js τερματίζει με code 7 (που δηλώνει Internal Exception Handler Run-Time Failure) αντί να χειρίζεται ομαλά το exception όταν συμβαίνει stack overflow στον user code ενώ το async_hooks είναι ενεργοποιημένο. Το async_hooks είναι ένα API χαμηλού επιπέδου του Node.js που επιτρέπει στους προγραμματιστές να παρακολουθούν τον κύκλο ζωής των ασύγχρονων πόρων, όπως database queries, timers ή HTTP requests.

Το ζήτημα επηρεάζει πολλά frameworks και Application Performance Monitoring (APM) tools, συμπεριλαμβανομένων των React Server Components, Next.js, Datadog, New Relic, Dynatrace, Elastic APM και OpenTelemetry. Αυτό οφείλεται στη χρήση του AsyncLocalStorage, ενός component που έχει κατασκευαστεί πάνω από το async_hooks module και καθιστά δυνατή την αποθήκευση δεδομένων καθ’ όλη τη διάρκεια μιας ασύγχρονης λειτουργίας.

Δείτε επίσης: Κρίσιμη ευπάθεια στο ServiceNow επιτρέπει κλιμάκωση προνομίων

Κρίσιμη ευπάθεια στο Node.js μπορεί να προκαλέσει server crashes

Το πρόβλημα επηρεάζει όλες τις εκδόσεις του Node.js από την 8.x έως την 18.x. Αξίζει να σημειωθεί ότι η έκδοση 8.0.0 του Node.js, με κωδική ονομασία Carbon, κυκλοφόρησε στις 30 Μαΐου 2017. Ωστόσο, αυτές οι εκδόσεις δεν έχουν διορθωθεί καθώς έχουν φτάσει στο τέλος ζωής τους (EoL).

Οι διορθώσεις περιλαμβάνονται στις ακόλουθες εκδόσεις:

  • Node.js 20.20.0 (LTS)
  • Node.js 22.22.0 (LTS)
  • Node.js 24.13.0 (LTS)
  • Node.js 25.3.0 (Current)

Παρά την σημαντική πρακτική επίδραση, το Node.js δήλωσε ότι αντιμετωπίζει τη διόρθωση μόνο ως mitigation για μερικούς λόγους:

– Η εξάντληση του stack space δεν αποτελεί μέρος του ECMAScript specification.

– Το V8 JavaScript engine δεν το θεωρεί ως ζήτημα ασφαλείας.

– Περιορισμοί με τον “uncaughtException” handler, ο οποίος έχει σχεδιαστεί για να χρησιμοποιείται ως μηχανισμός τελευταίας λύσης για το exception handling.

Δείτε επίσης: CISA: Ευπάθεια του Gogs στον Κατάλογο KEV

Κρίσιμη ευπάθεια στο Node.js μπορεί να προκαλέσει server crashes

“Αν και είναι μια διόρθωση για μια μη καθορισμένη συμπεριφορά, επιλέξαμε να την συμπεριλάβουμε στην έκδοση ασφαλείας λόγω της ευρείας επίδρασής της στο οικοσύστημα“, δήλωσε το Node.js. “Τα React Server Components, το Next.js και σχεδόν κάθε εργαλείο APM επηρεάζονται. Η διόρθωση βελτιώνει την εμπειρία των προγραμματιστών και καθιστά την αντιμετώπιση λαθών πιο προβλέψιμη“.

Επιλογή της ομάδας

🔒 Προστατέψτε την ιδιωτικότητά σας με Proton VPN

Ελβετικό VPN από τους δημιουργούς του Proton Mail — αυστηρή πολιτική no-logs, ισχυρή κρυπτογράφηση και ενσωματωμένο NetShield που μπλοκάρει διαφημίσεις, trackers & malware.

  • ✔ No-logs, με έδρα την Ελβετία (εκτός 14-Eyes)
  • ✔ NetShield: φραγή διαφημίσεων, trackers & κακόβουλων domains
  • ✔ Καλύπτει όλες τις συσκευές — δωρεάν έκδοση διαθέσιμη
Δοκιμάστε δωρεάν το Proton VPN — 30 ημέρες εγγύηση επιστροφής →

Ο σύνδεσμος είναι συνεργατικός (affiliate) — το SecNews ενδέχεται να λάβει προμήθεια χωρίς επιπλέον κόστος για εσάς. Δεν επηρεάζει την ανεξαρτησία της αρθρογραφίας μας.

Λόγω της σοβαρότητας της ευπάθειας, συνιστάται στους χρήστες των πλατφορμών/εργαλείων και στους παρόχους φιλοξενίας διακομιστών να ενημερώσουν το συντομότερο δυνατό. Επίσης, συνιστάται στους συντηρητές βιβλιοθηκών και πλατφορμών να εφαρμόσουν πιο ισχυρές άμυνες για την αντιμετώπιση της εξάντλησης του stack space (ώστε να εξασφαλίσουν τη διαθεσιμότητα των υπηρεσιών).

📧
Εγγραφείτε στο Newsletter του SecNews

Τα σημαντικότερα νέα Ασφάλειας & Τεχνολογίας στο Inbox σας.

Digital Fortress
Digital Fortresshttps://www.secnews.gr
Pursue Your Dreams & Live!

ΑΝΑΖΗΤΗΣΗ

FOLLOW US

📧
Newsletter SecNews
Τα σημαντικότερα νέα Ασφάλειας & Τεχνολογίας στο inbox σας.

LIVE NEWS