Μίνι σκουλήκι Shai-Hulud
Ο απειλητικός φορέας γνωστός ως TeamPCP έχει συνδεθεί με μια εξελιγμένη εκστρατεία επίθεσης στην εφοδιαστική αλυσίδα που στοχεύει σε ευρέως χρησιμοποιούμενα πακέτα npm και PyPI που σχετίζονται με τα TanStack, UiPath, Mistral AI, OpenSearch, Guardrails AI και πολλά άλλα οικοσυστήματα. Η επιχείρηση, που συνδέεται με την εξελισσόμενη εκστρατεία κακόβουλου λογισμικού Mini Shai-Hulud, καταδεικνύει μια σημαντική κλιμάκωση στην κατάχρηση της εφοδιαστικής αλυσίδας λογισμικού και στις τεχνικές παραβίασης ταυτότητας.
Οι ερευνητές εντόπισαν ότι κακόβουλα πακέτα npm τροποποιήθηκαν ώστε να περιλαμβάνουν ένα ασαφές στοιχείο JavaScript με το όνομα router_init.js. Αυτό το φορτίο καταγράφει τα μολυσμένα περιβάλλοντα και αναπτύσσει ένα προηγμένο πρόγραμμα υποκλοπής διαπιστευτηρίων που στοχεύει παρόχους cloud, πορτοφόλια κρυπτονομισμάτων, εργαλεία ανάπτυξης τεχνητής νοημοσύνης, πλατφόρμες ανταλλαγής μηνυμάτων, συστήματα CI/CD και περιβάλλοντα GitHub Actions. Τα δεδομένα που έχουν εξαχθεί μεταδίδονται κυρίως στον τομέα filev2.getsession.org.
Η χρήση της υποδομής Session Protocol υπογραμμίζει μια σκόπιμη προσπάθεια παράκαμψης των ελέγχων ασφαλείας της επιχείρησης. Επειδή ο τομέας ανήκει σε μια αποκεντρωμένη πλατφόρμα ανταλλαγής μηνυμάτων που εστιάζει στην ιδιωτικότητα, είναι λιγότερο πιθανό να αποκλειστεί από τις παραδοσιακές άμυνες δικτύου. Ως δευτερεύουσα μέθοδος εξαγωγής, τα κρυπτογραφημένα δεδομένα δεσμεύονται σε αποθετήρια που ελέγχονται από εισβολείς μέσω του GitHub GraphQL API χρησιμοποιώντας κλεμμένα διακριτικά ελέγχου ταυτότητας GitHub με την ταυτότητα συγγραφέα claude@users.noreply.github.com.
Πίνακας περιεχομένων
Μηχανισμοί Επιμονής και Επέκταση Κλοπής Διαπιστευτηρίων
Το κακόβουλο λογισμικό εισάγει αρκετές δυνατότητες persistence και surveillance που έχουν σχεδιαστεί για να διατηρούν μακροπρόθεσμη πρόσβαση σε παραβιασμένα περιβάλλοντα ανάπτυξης. Τα άγκιστρα persistence έχουν δημιουργηθεί μέσα στον κώδικα Claude και στον κώδικα Microsoft Visual Studio, επιτρέποντας στο κακόβουλο λογισμικό να επιβιώνει από επανεκκινήσεις συστήματος και να επανεκκινείται αυτόματα κάθε φορά που ανοίγουν τα IDE.
Επιπλέον, αναπτύσσεται μια υπηρεσία gh-token-monitor για τη συνεχή παρακολούθηση και την επανεξαγωγή των tokens GitHub. Δύο κακόβουλες ροές εργασίας GitHub Actions εισάγονται επίσης σε παραβιασμένα αποθετήρια. Αυτές οι ροές εργασίας σειριοποιούν τα μυστικά του αποθετηρίου σε μορφή JSON και ανεβάζουν τα δεδομένα στο εξωτερικό τελικό σημείο api.masscan.cloud.
Η τελευταία παραβίαση του TanStack διαφέρει σημαντικά από προηγούμενα περιστατικά στην εφοδιαστική αλυσίδα. Αντί να βασίζονται σε ένα preinstall hook, οι εισβολείς ενσωμάτωσαν ένα κακόβουλο αρχείο JavaScript απευθείας σε tarball πακέτων, ενώ εισήγαγαν μια προαιρετική εξάρτηση συνδεδεμένη με ένα πακέτο που φιλοξενείται στο GitHub. Αυτή η εξάρτηση περιέχει ένα prepare lifecycle hook που εκτελεί το payload μέσω του runtime environment Bun.
Τα πακέτα Mistral AI που είχαν προσβληθεί από trojan υιοθέτησαν μια παλαιότερη στρατηγική μόλυνσης τροποποιώντας το αρχείο package.json με ένα preinstall hook που καλεί το node setup.mjs. Αυτή η διαδικασία κατεβάζει το Bun και εκτελεί το ίδιο κακόβουλο λογισμικό κλοπής διαπιστευτηρίων.
CVE-2026-45321 και η κατάχρηση της αξιόπιστης δημοσίευσης
Η παραβίαση του TanStack έχει επίσημα εντοπιστεί ως CVE-2026-45321 και έχει λάβει κρίσιμη βαθμολογία CVSS 9,6. Οι ερευνητές επιβεβαίωσαν ότι επηρεάστηκαν 42 πακέτα και 84 εκδόσεις εντός του οικοσυστήματος TanStack.
Η ανάλυση αποκάλυψε ότι η παραβίαση προήλθε από μια αλυσιδωτή επίθεση GitHub Actions που εκμεταλλεύτηκε την ενεργοποίηση pull_request_target, την δηλητηρίαση της προσωρινής μνήμης GitHub Actions και την εξαγωγή διακριτικών OIDC κατά τον χρόνο εκτέλεσης από τους εκτελεστές του GitHub Actions. Οι επιτιθέμενοι φέρεται να έστησαν κακόβουλα φορτία μέσω ορφανών υποβολών σε forks GitHub πριν τα εισάγουν σε tarball πακέτων npm. Στη συνέχεια, οι επιτιθέμενοι κατέλαβαν νόμιμες ροές εργασίας TanStack/router για να δημοσιεύσουν παραβιασμένα πακέτα με έγκυρες βεβαιώσεις προέλευσης SLSA.
Αυτή η εξέλιξη σηματοδοτεί μια ιστορική κλιμάκωση στις επιθέσεις στην αλυσίδα εφοδιασμού λογισμικού. Τα κακόβουλα πακέτα έφεραν έγκυρες υπογραφές προέλευσης SLSA Build Level 3, καθιστώντας το ως το πρώτο τεκμηριωμένο worm npm ικανό να διανέμει κακόβουλα πακέτα με αυθεντικές βεβαιώσεις κατασκευής. Η καμπάνια κακόβουλου λογισμικού επεκτάθηκε στη συνέχεια πέρα από το TanStack και εξαπλώθηκε σε οικοσυστήματα που διατηρούνται από την UiPath, την DraftLab και άλλους προγραμματιστές.
Η επιχείρηση καταχράται σε μεγάλο βαθμό τις αξιόπιστες ροές εργασίας δημοσίευσης. Αντί να κλέβει απευθείας τα διαπιστευτήρια npm, ο κώδικας που ελέγχεται από τον εισβολέα και εκτελείται μέσα σε αξιόπιστους αγωγούς CI/CD αξιοποίησε τα δικαιώματα OIDC για να δημιουργήσει βραχύβια διακριτικά δημοσίευσης κατά τη διάρκεια της διαδικασίας δημιουργίας. Αυτό επέτρεψε τη δημοσίευση κακόβουλων πακέτων μέσω νόμιμων αγωγών έκδοσης, παρακάμπτοντας παράλληλα τις συμβατικές δικλείδες ασφαλείας ελέγχου ταυτότητας.
Η αυτοδιαδιδόμενη συμπεριφορά σκουληκιών προκαλεί ανησυχία
Μία από τις πιο επικίνδυνες πτυχές της καμπάνιας Mini Shai-Hulud είναι το μοντέλο διάδοσης που μοιάζει με σκουλήκι. Το κακόβουλο λογισμικό αναζητά ενεργά δημοσιεύσιμα διακριτικά npm που έχουν ρυθμιστεί με bypass_2fa=true, απαριθμεί πακέτα που διατηρούνται από τον παραβιασμένο προγραμματιστή και ανταλλάσσει διακριτικά GitHub OIDC με διακριτικά δημοσίευσης ανά πακέτο. Αυτός ο μηχανισμός επιτρέπει στο κακόβουλο λογισμικό να εξαπλώνεται πλευρικά σε οικοσυστήματα πακέτων χωρίς να βασίζεται σε παραδοσιακές τεχνικές κλοπής διαπιστευτηρίων.
Η επίθεση εκμεταλλεύτηκε επίσης διαμορφώσεις εμπιστοσύνης σε επίπεδο αποθετηρίου μέσα στο μοντέλο έμπιστου εκδότη OIDC του GitHub. Επειδή η εμπιστοσύνη παραχωρήθηκε ευρέως σε επίπεδο αποθετηρίου αντί να περιορίζεται σε προστατευμένους κλάδους και συγκεκριμένα αρχεία ροής εργασίας, οι κακόβουλες εκτελέσεις ροής εργασίας που ενεργοποιήθηκαν από ορφανές υποβολές ήταν σε θέση να ζητήσουν νόμιμα διακριτικά δημοσίευσης npm.
Μια άλλη ανησυχητική δυνατότητα περιλαμβάνει την ανάπτυξη ενός «dead-man's switch». Το κακόβουλο λογισμικό εγκαθιστά ένα shell script που επανειλημμένα ελέγχει το τελικό σημείο api.github.com/user κάθε 60 δευτερόλεπτα για να προσδιορίσει εάν τα npm tokens που δημιουργούνται από τον εισβολέα παραμένουν ενεργά. Αυτά τα tokens φέρουν την απειλητική περιγραφή IfYouRevokeThisTokenItWillWipeTheComputerOfTheOwner.
Εάν οι αμυνόμενοι ανακαλέσουν το διακριτικό μέσω του πίνακα ελέγχου npm, το κακόβουλο λογισμικό εκκινεί μια καταστροφική ρουτίνα εκτελώντας την εντολή rm -rf ~/, μετατρέποντας ουσιαστικά τη μόλυνση σε κακόβουλο λογισμικό wiper. Αυτή η επιθετική συμπεριφορά υποδηλώνει μια σημαντική εξέλιξη στις επιχειρησιακές τακτικές της TeamPCP και καταδεικνύει αυξανόμενη πολυπλοκότητα στις μεθόδους καταναγκαστικής διατήρησης. Συνεπώς, οι ομάδες ασφαλείας συμβουλεύονται να απομονώνουν και να απεικονίζουν τα μολυσμένα συστήματα πριν ανακαλέσουν τα παραβιασμένα διαπιστευτήρια npm.
Επηρεαζόμενα Πακέτα και Επεκτεινόμενος Αντίκτυπος στο Οικοσύστημα
Η καμπάνια έχει επηρεάσει περισσότερα από 170 πακέτα τόσο στο npm όσο και στο PyPI, αντιπροσωπεύοντας συνολικά πάνω από 518 εκατομμύρια λήψεις. Οι ερευνητές εντόπισαν επίσης τουλάχιστον 400 αποθετήρια που δημιουργήθηκαν χρησιμοποιώντας κλεμμένα διαπιστευτήρια, όλα με τη φράση «Shai-Hulud: Here We Go Again».
Τα πακέτα που επηρεάζονται περιλαμβάνουν:
προστατευτικά κιγκλιδώματα-ai@0.10.1 (PyPI)
mistralai@2.4.6 (PyPI)
@opensearch-project/opensearch@3.5.3, 3.6.2, 3.7.0, 3.8.0
@squawk/mcp@0.9.5
@squawk/weather@0.5.10
@squawk/flightplan@0.5.6
@tallyui/connector-medusa@1.0.1, 1.0.2, 1.0.3
@tallyui/connector-vendure@1.0.1, 1.0.2, 1.0.3
Το κακόβουλο λογισμικό χρησιμοποιεί επίσης πολλαπλά πλεονάζοντα κανάλια εξαγωγής. Εκτός από την υποδομή Session Protocol και τα dead drops του GitHub, τα κλεμμένα διαπιστευτήρια μεταδίδονται μέσω του typosquatted domain git-tanstack.com.
Το κακόβουλο λογισμικό PyPI εισάγει την καταστροφική λογική με γεωφράκτες
Οι παραλλαγές κακόβουλου λογισμικού που βασίζονται σε Python και σχετίζονται με τα κακόβουλα πακέτα Mistral AI και Guardrails AI διαφέρουν σημαντικά από τα φορτία JavaScript που διανέμονται μέσω npm. Το παραβιασμένο πακέτο mistralai PyPI κατεβάζει ένα πρόγραμμα κλοπής διαπιστευτηρίων από τον απομακρυσμένο κεντρικό υπολογιστή 83.142.209.194.
Οι ερευνητές ανακάλυψαν ότι το κακόβουλο λογισμικό Python περιέχει λογική που αναγνωρίζει τη χώρα και έχει σχεδιαστεί για να αποφεύγει την εκτέλεση σε περιβάλλοντα ρωσικής γλώσσας. Περιλαμβάνει επίσης έναν καταστροφικό μηχανισμό με γεωφράκτες που εισάγει μια πιθανότητα εκτέλεσης rm -rf / μία προς έξι εάν το μολυσμένο σύστημα φαίνεται να βρίσκεται στο Ισραήλ ή το Ιράν.
Αυτή η συμπεριφορά καταδεικνύει μια ανησυχητική εξέλιξη προς την ανάπτυξη καταστροφικού ωφέλιμου φορτίου με επίγνωση της περιοχής σε οικοσυστήματα πακέτων ανοιχτού κώδικα.
Η αυξανόμενη απειλή των επιθέσεων στην εφοδιαστική αλυσίδα που βασίζονται στην ταυτότητα
Η καμπάνια Mini Shai-Hulud αντικατοπτρίζει έναν ευρύτερο μετασχηματισμό στις σύγχρονες επιθέσεις στην εφοδιαστική αλυσίδα. Αντί να επικεντρώνονται αποκλειστικά στην παραβίαση πακέτων, οι απειλητικοί παράγοντες στοχεύουν ολοένα και περισσότερο σε αξιόπιστες ταυτότητες CI/CD, ροές εργασίας δημοσίευσης και αγωγούς αυτοματισμού που βασίζονται στο cloud.
Μόλις οι εισβολείς αποκτήσουν πρόσβαση στην υποδομή δημοσίευσης λογισμικού, ο ίδιος ο αγωγός ανάπτυξης γίνεται ο μηχανισμός διανομής κακόβουλου λογισμικού. Επειδή πολλές κακόβουλες ενέργειες συμβαίνουν μέσω νόμιμων ροών εργασίας, αξιόπιστων βεβαιώσεων και αυθεντικών συστημάτων έκδοσης, τα παραδοσιακά συστήματα ελέγχου ασφαλείας ενδέχεται να μην καταφέρουν να εντοπίσουν κακόβουλη συμπεριφορά.
Βασικά χαρακτηριστικά που καθορίζουν αυτή τη νέα γενιά επιθέσεων στην εφοδιαστική αλυσίδα περιλαμβάνουν:
- Κατάχρηση αξιόπιστης δημοσίευσης και μηχανισμών ανταλλαγής διακριτικών OIDC
- Διάδοση μέσω νόμιμων ροών εργασίας CI/CD και συστημάτων δημιουργίας
- Χρήση έγκυρων βεβαιώσεων SLSA για την απόκρυψη κακόβουλων πακέτων
- Λειτουργίες εξαγωγής και διατήρησης διαπιστευτηρίων πολλαπλών καναλιών
- Μηχανισμοί καταστροφικών αντιποίνων που έχουν σχεδιαστεί για να εκφοβίζουν τους υπερασπιστές
Η επέκταση της καμπάνιας σε εργαλεία τεχνητής νοημοσύνης, αυτοματοποίηση επιχειρήσεων, υποδομές αναζήτησης, ανάπτυξη frontend, εργαλεία που σχετίζονται με την αεροπορία και οικοσυστήματα CI/CD καταδεικνύει πόσο βαθιά διασυνδεδεμένες έχουν γίνει οι αλυσίδες εφοδιασμού λογισμικού. Η παρακολούθηση συμπεριφοράς κατά την εγκατάσταση πακέτων και την εκτέλεση κατασκευής είναι πλέον ολοένα και πιο κρίσιμη για την ανίχνευση απειλών που φαίνονται νόμιμες με την πρώτη ματιά.