Το δημοφιλές έργο ανοιχτού κώδικα, «ip» είχε πρόσφατα αρχειοθετηθεί το αποθετήριο GitHub ή έγινε «μόνο για ανάγνωση» από τον προγραμματιστή του.
Ο Fedor Indutny, λόγω μιας αναφοράς CVE που κατατέθηκε εναντίον του έργου του, άρχισε να καταδιώκεται από ανθρώπους στο Διαδίκτυο, φέρνοντας την προσοχή του στην ευπάθεια.
Δυστυχώς, η περίπτωση του Indutny δεν είναι μεμονωμένη. Πρόσφατα, οι προγραμματιστές ανοιχτού κώδικα αντιμετώπισαν μια άνοδο στη λήψη συζητήσιμων ή, σε ορισμένες περιπτώσεις, εντελώς ψευδών αναφορών CVE που υποβλήθηκαν για τα έργα τους χωρίς επιβεβαίωση.
Αυτό μπορεί να οδηγήσει σε αδικαιολόγητο πανικό μεταξύ των χρηστών αυτών των έργων και ειδοποιήσεις που δημιουργούνται από σαρωτές ασφαλείας, που όλα μετατρέπονται σε πηγή πονοκεφάλου για τους προγραμματιστές.
Το αποθετήριο ‘node-ip’ GitHub αρχειοθετήθηκε
Νωρίτερα αυτό το μήνα, ο Fedor Indutny που είναι ο συγγραφέας του «
node-ip
‘ έργο
αρχειοθετήθηκε το GitHub του έργου
αποθετήριο που το καθιστά αποτελεσματικά μόνο για ανάγνωση και περιορίζει την ικανότητα των ανθρώπων να ανοίγουν νέα θέματα (
συζητήσεις
), να αντλούν αιτήματα ή να υποβάλλουν σχόλια στο έργο.

Το repo node-ip GitHub αρχειοθετήθηκε και έγινε “μόνο για ανάγνωση”
(BleepingComputer)
Το έργο “node-ip” υπάρχει στο μητρώο npmjs.com ως
το πακέτο «ip».
που σημειώνει 17 εκατομμύρια λήψεις εβδομαδιαίως, καθιστώντας το ένα από τα πιο δημοφιλή βοηθητικά προγράμματα ανάλυσης διευθύνσεων IP που χρησιμοποιούνται από προγραμματιστές JavaScript.
Την Τρίτη, 25 Ιουνίου, ο Indutny πήγε στα μέσα κοινωνικής δικτύωσης για να εκφράσει το σκεπτικό του πίσω από την αρχειοθέτηση του ‘node-ip’:
«Υπάρχει κάτι που έχει [sic] με ενοχλούσε τους τελευταίους μήνες και είχε ως αποτέλεσμα να αρχειοθετήσω το repo node-ip στο GitHub.”
αναρτήθηκε
ο προγραμματιστής μέσω του λογαριασμού του Mastodon.
Έχει να κάνει με
CVE-2023-42282
μια ευπάθεια που αποκαλύφθηκε στο έργο νωρίτερα φέτος.
“Κάποιος κατέθεσε ένα αμφίβολο CVE σχετικά με το πακέτο npm μου και μετά άρχισα να λαμβάνω μηνύματα από όλους τους ανθρώπους να λαμβάνουν προειδοποιήσεις από το “npm audit””, αναφέρει ο προγραμματιστής στην ίδια ανάρτηση.
Οι προγραμματιστές του Node.js που χρησιμοποιούν άλλα ανοιχτά έργα, όπως πακέτα npm και εξαρτήσεις στην εφαρμογή τους μπορούν να εκτελέσουν το “
έλεγχος npm
” εντολή για να ελέγξετε εάν κάποιο από αυτά τα έργα που χρησιμοποιούνται από την εφαρμογή τους έχουν αναφερθεί ευπάθειες σε βάρος τους.

Ο Bothered dev πήγε στα μέσα κοινωνικής δικτύωσης για να εκφράσει τις ανησυχίες του
(
Μαστόδοντας
)
Το CVE έχει να κάνει με το βοηθητικό πρόγραμμα που δεν αναγνωρίζει σωστά τις ιδιωτικές διευθύνσεις IP που του παρέχονται σε μη τυπική μορφή, όπως δεκαεξαδική. Αυτό θα είχε ως αποτέλεσμα το βοηθητικό πρόγραμμα “node-ip” να αντιμετωπίζει μια ιδιωτική διεύθυνση IP (σε δεκαεξαδική μορφή) όπως “0x7F.1…” (που αντιπροσωπεύει το 127.1…) ως δημόσια.
Εάν μια εφαρμογή βασίζεται αποκλειστικά στο node-ip για να ελέγξει εάν μια παρεχόμενη διεύθυνση IP είναι δημόσια, οι μη τυπικές είσοδοι μπορεί να προκαλέσουν την επιστροφή ασυνεπών αποτελεσμάτων από τις επηρεαζόμενες εκδόσεις του βοηθητικού προγράμματος.
«Αμφίβολη» επίπτωση στην ασφάλεια
Δημόσιες πηγές προτείνουν ότι το CVE-2023-42282 είχε
είχε αρχικά βαθμολογηθεί
ως 9,8 ή “κρίσιμο”.
Αν και ο Indutny
είχε ήδη διορθώσει
το ζήτημα σε μεταγενέστερες εκδόσεις του έργου του, αμφισβήτησε ότι το σφάλμα αποτελούσε ένα
πραγματικός
ευπάθεια και αυτό επίσης αυξημένης σοβαρότητας.
«Πιστεύω ότι ο αντίκτυπος του σφάλματος στην ασφάλεια είναι μάλλον αμφίβολος», έγραψε νωρίτερα ο προγραμματιστής,
ζητώντας από το GitHub να ανακαλέσει το CVE
.
«Αν και δεν είχα σκοπό να χρησιμοποιήσω τη μονάδα για ελέγχους που σχετίζονται με την ασφάλεια, είμαι πολύ περίεργος πώς θα μπορούσε να καταλήξει να μεταβιβαστεί μια μη αξιόπιστη εισαγωγή
ip.isΙδιωτικό
ή
ip.isPubli
ντο [functions] και στη συνέχεια χρησιμοποιείται για την επαλήθευση από πού προήλθε η σύνδεση δικτύου.”
Η αμφισβήτηση ενός CVE δεν είναι ούτε απλή υπόθεση, όπως
μέλος της ομάδας ασφαλείας του GitHub
εξήγησε. Απαιτεί έναν συντηρητή έργου για να το κυνηγήσει
CVE Numbering Authorities (CNA)
που είχε αρχικά εκδώσει το CVE.
Τα CNA περιλαμβάνουν συμβατικά τα NVD και MITRE του NIST. Τα τελευταία χρόνια, εταιρείες
τεχνολογία
ς και προμηθευτές ασφάλειας εντάχθηκαν στη λίστα και μπορούν επίσης να εκδίδουν CVE κατά βούληση.
Αυτά τα CVE, μαζί με την περιγραφή ευπάθειας και την αναφερόμενη βαθμολογία σοβαρότητας, στη συνέχεια συνδικάζονται και αναδημοσιεύονται από άλλες βάσεις δεδομένων ασφαλείας, όπως π.χ.
Συμβουλές GitHub
.
Μετά την ανάρτηση του Indutny στα social media,
Το GitHub μείωσε τη σοβαρότητα
του CVE στη βάση δεδομένων τους και πρότειναν στον προγραμματιστή να ενεργοποιήσει
ιδιωτική αναφορά ευπάθειας
για καλύτερη διαχείριση των εισερχόμενων αναφορών και μείωση του θορύβου.
Τη στιγμή της γραφής, η σοβαρότητα της ευπάθειας στο NVD παραμένει «κρίσιμη».
Μια αυξανόμενη ενόχληση
Το σύστημα CVE, που αρχικά σχεδιάστηκε για να βοηθά τους ερευνητές ασφάλειας να αναφέρουν ηθικά τρωτά σημεία σε ένα έργο και να τα καταλογίσουν μετά από υπεύθυνη αποκάλυψη, έχει προσελκύσει πρόσφατα ένα τμήμα μελών της κοινότητας που υποβάλλουν μη επαληθευμένες αναφορές.
Ενώ πολλά από τα CVE υποβάλλονται καλή τη πίστη από υπεύθυνους ερευνητές και αντιπροσωπεύουν αξιόπιστες ευπάθειες ασφαλείας, ένα πρόσφατα αυξανόμενο μοτίβο περιλαμβάνει αρχάριους λάτρεις της ασφάλειας και κυνηγούς επικηρυγμένων σφαλμάτων που φαινομενικά «συλλέγουν» CVE για να εμπλουτίσουν το βιογραφικό τους αντί να αναφέρουν σφάλματα ασφαλείας που αποτελούν τον πραγματικό κόσμο. , πρακτικός αντίκτυπος από την εκμετάλλευση.
Κατά συνέπεια, οι προγραμματιστές και οι συντηρητές έργων έχουν απωθηθεί.
Τον Σεπτέμβριο του 2023, ο Daniel Stenberg, δημιουργός του γνωστού έργου λογισμικού «curl» επέπληξε το «
τεύχος ψευδούς μπούκλας CVE-2020-19909
», αναφέρθηκε ένα σφάλμα άρνησης υπηρεσίας για το έργο.
Αρχικά βαθμολογήθηκε ως 9,8 ή κρίσιμη σε σοβαρότητα ανά
Η ιστορία της NVD
το πλέον αμφισβητούμενο CVE έπεσε στο “χαμηλό” 3,3 μετά από συζητήσεις που ακολούθησαν αμφισβητώντας τον απτό αντίκτυπο στην ασφάλεια του ελαττώματος.
“Αυτό δεν ήταν μια μοναδική περίπτωση και δεν ήταν η πρώτη φορά που συνέβη. Αυτό συμβαίνει εδώ και χρόνια”, έγραψε ο Stenberg επικρίνοντας την καταχώριση CVE.
«Δεν είμαι λάτρης των ασκήσεων φιλοσοφικής σκέψης γύρω από τα τρωτά σημεία».
“Αποσπούν την προσοχή από τα πραγματικά ζητήματα και τα βρίσκω μάλλον άσκοπα. Είναι εύκολο να δοκιμάσεις πώς λειτουργεί αυτό το ελάττωμα σε πολλές πλατφόρμες χρησιμοποιώντας πολλούς μεταγλωττιστές.”
«Δεν είναι πρόβλημα ασφάλειας σε κανένα από αυτά».
Σύμφωνα με τον Stenberg, δεδομένων των τεχνικών λεπτομερειών του “ανόητου σφάλματος”, ενώ θα μπορούσε να οδηγήσει σε απροσδόκητη συμπεριφορά, δεν ήταν ένα ελάττωμα ασφαλείας που θα μπορούσε να γίνει κατάχρηση.
Ακόμα ένα έργο npm,
μικροταίριασμα
που λαμβάνει 64 εκατομμύρια εβδομαδιαίες λήψεις είχε «υψηλή» σοβαρότητα
ReDoS
ευπάθειες που αναφέρθηκαν εναντίον του με τους δημιουργούς του να κυνηγούνται από μέλη της κοινότητας που ρωτούν για τα ζητήματα.
“Μπορείτε να επισημάνετε τουλάχιστον μία βιβλιοθήκη που εφαρμόζει micromatch ή τιράντες που είναι ευαίσθητα στην ευπάθεια, ώστε να μπορούμε να δούμε πώς είναι στην πραγματικότητα μια ευπάθεια στον πραγματικό κόσμο και όχι μόνο θεωρητική;”
ερωτηθείς
Jon Schlinkert, αντιδρώντας σε
CVE-2024-4067
κατέθεσε για το έργο του, micromatch.
Στο ίδιο νήμα, ο προγραμματιστής, προφανώς αφού απέτυχε να λάβει μια ικανοποιητική απόδειξη της ιδέας εκμετάλλευσης από τον αναφέροντα ευπάθειας
αποκρίθηκε
με:
“Αντιλαμβάνομαι συνεχώς αυτά τα ζητήματα για πράγματα που δεν μπορούν να είναι καν ευπάθεια εκτός και αν το κάνετε στον εαυτό σας. Όπως το regex σε βιβλιοθήκες χαμηλού επιπέδου που δεν θα είναι ποτέ προσβάσιμες σε ένα πρόγραμμα περιήγησης, εκτός εάν επιτρέπετε στους χρήστες να υποβάλλουν κανονικές εκφράσεις σε μια φόρμα ιστού που μόλις χρησιμοποιείται από την αίτησή σας.”
«Ζήτησα παραδείγματα για το πώς μια βιβλιοθήκη του πραγματικού κόσμου θα αντιμετώπιζε αυτές τις «ευπάθειες» και ποτέ δεν απαντούσατε με ένα παράδειγμα».
Κι εγώ, πρόσφατα έστειλα μήνυμα σε προγραμματιστές micromatch, αφού ένα τρίτο μέρος μας ενημέρωσε για έναν πιθανό «κίνδυνο» που θέτει το έργο, καθώς φαινόταν ότι ήταν το υπεύθυνο πράγμα που έπρεπε να κάνουμε εκείνη τη στιγμή.
Δυστυχώς, σε αντίθεση με την αντιπροσώπευση μιας εκμεταλλεύσιμης ευπάθειας, κατέληξε να είναι μια αναφορά όχλησης (όπως το CVE-2024-4067) για την οποία οι προγραμματιστές είχαν ήδη κυνηγηθεί.
Εκτός από την απλή ενόχληση για τους συντηρητές έργων, η πράξη της έκδοσης CVE για μη επαληθευμένες αναφορές ευπάθειας είναι παρόμοια με την πρόκληση άρνησης υπηρεσίας (DoS) εναντίον ενός έργου, των δημιουργών του και της ευρύτερης καταναλωτικής του βάσης, και για καλούς λόγους.
Οι λύσεις ασφαλείας προγραμματιστών (όπως ο έλεγχος npm) που έχουν σχεδιαστεί για να εμποδίζουν τα ευάλωτα στοιχεία να φτάσουν στις εφαρμογές σας ενδέχεται να ενεργοποιήσουν ειδοποιήσεις εάν εντοπιστούν γνωστές ευπάθειες και, ανάλογα με τις ρυθμίσεις σας, να σπάσουν τις εκδόσεις σας.
«Ο Τζάκσον είχε αυτό το πρόβλημα λίγους μήνες πριν, όπου κάποιος
ανέφερε ένα κρίσιμο CVE
ενάντια στο έργο και έσπασε κατασκευές σε όλο τον πλανήτη», είχε πει ένας σχολιαστής
γραπτός
το 2023, αντιδρώντας στην ψεύτικη μπούκλα CVE.
Αντί να αποτελεί πρόβλημα ασφάλειας με το έργο, όπως
δήλωσαν άλλοι προγραμματιστές
το ζήτημα αντιπροσώπευε την εγγενή φύση των αναδρομικών δομών δεδομένων Java.
Πού είναι η ισορροπία;
Επαναλαμβανόμενα περιστατικά όπως αυτά εγείρουν το ερώτημα, πώς επιτυγχάνει κανείς μια ισορροπία;
Η ανελέητη αναφορά θεωρητικών τρωτών σημείων μπορεί να αφήσει τους προγραμματιστές ανοιχτού κώδικα, πολλοί από τους οποίους είναι εθελοντές, εξουθενωμένους από τον θόρυβο τριβής.
Από την άλλη πλευρά, θα ήταν ηθικό αν οι επαγγελματίες ασφάλειας, συμπεριλαμβανομένων των αρχαρίων, καθόντουσαν σε αυτό που πίστευαν ότι ήταν ένα ελάττωμα ασφαλείας—ώστε να μην ενοχλήσουν τους συντηρητές του έργου;
Ένα τρίτο πρόβλημα προκύπτει για έργα χωρίς ενεργό συντηρητή.
Για
παράδειγμα, εγκαταλελειμμένα έργα λογισμικού που δεν έχουν αγγίξει εδώ και χρόνια περιέχουν ευπάθειες που, ακόμη και όταν αποκαλυφθούν, δεν θα επιδιορθωθούν ποτέ και δεν υπάρχουν τρόποι
επικοινωνία
ς με τον αρχικό τους συντηρητή.
Σε περιπτώσεις όπως αυτές, οι μεσάζοντες, συμπεριλαμβανομένων των CNA και των πλατφορμών επιβράβευσης σφαλμάτων, παραμένουν σε αδιέξοδο.
Όταν λαμβάνουν μια αναφορά ευπάθειας από έναν ερευνητή, αυτοί οι οργανισμοί ενδέχεται να μην είναι πάντα σε θέση να ελέγχουν επαρκώς κάθε τέτοια αναφορά ανεξάρτητα. Χωρίς ακρόαση από τους (που απουσιάζουν πλέον) συντηρητές του έργου, ενδέχεται να υποχρεωθούν να εκχωρήσουν και να δημοσιεύσουν CVE αφού παρέλθει το παράθυρο “υπεύθυνης αποκάλυψης”.
Δεν υπάρχει ακόμη απλή απάντηση σε αυτά τα προβλήματα.
Έως ότου η κοινότητα της έρευνας ασφάλειας, των προγραμματιστών και των προμηθευτών συνενωθεί για να εντοπίσει μια αποτελεσματική λύση, οι προγραμματιστές είναι βέβαιο ότι θα απογοητευτούν με τις ψεύτικες αναφορές που τις εξαντλούν και το σύστημα CVE πλημμυρίσει από υπερβολικές “τρωτότητες” που μπορεί να φαίνονται αξιόπιστες στα χαρτιά, αλλά είναι ουσιαστικά αμφισβητήσιμο.
VIA:
bleepingcomputer.com

0