Έχουν ανιχνευτεί μια σειρά κακόβουλων πακέτων npm και PyPi που κλέβουν μια ευρεία γκάμα ευαίσθητων δεδομένων από προγραμματιστές λογισμικού στις πλατφόρμες.

Η εκστρατεία ξεκίνησε στις 12 Σεπτεμβρίου 2023 και ανακαλύφθηκε αρχικά από τη Sonatype, η οποία ανέσυρε 14 κακόβουλα πακέτα στο npm.

Το Phylum αναφέρει ότι μετά από μια σύντομη παύση λειτουργίας στις 16 και 17 Σεπτεμβρίου, η επίθεση έχει επαναληφθεί και επεκταθεί στο οικοσύστημα του PyPI.

Από την έναρξη της καμπάνιας, οι επιτιθέμενοι έχουν ανεβάσει 45 πακέτα στο npm (40) και το PyPI (5), με παραλλαγές στον κώδικα που υποδεικνύουν μια γρήγορη εξέλιξη στην επίθεση.

Κακόβουλα πακέτα

Η πλήρης λίστα με τα κακόβουλα πακέτα που διανεμήθηκαν σε αυτήν την εκστρατεία μπορεί να βρεθεί στο κάτω τμήμα της αναφοράς της Phylum.

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

  • shineouts and @dynamic-form-components/shineout – μιμείται τη δημοφιλή βιβλιοθήκη React “Shineout”
  • apm-web-vitals – θα μπορούσε να περάσει ως “APM” (παρακολούθηση απόδοσης εφαρμογής) για τη βιβλιοθήκη “web-vitals” της Google που μετρά την απόδοση ιστού
  • eslint-plugin-shein-soc-raw and @spgy/eslint-plugin-spgy-fe – παριστάνοντας τα ESLint plugins
  • ssc-concurrent-log-handler & sc-concurrent-log-handler – προσποιούνται ότι είναι νόμιμα βοηθητικά προγράμματα logging

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

Οι πρώτες επιθέσεις συνέβησαν από τις 12 έως τις 15 Σεπτεμβρίου, με τους χάκερ να ανεβάζουν νέα πακέτα καθημερινά, φθάνοντας σε σύνολο 33 πακέτων.

Οι επόμενες επιθέσεις συνέβησαν στις 18 Σεπτεμβρίου (τρεις επιθέσεις), στις 20 Σεπτεμβρίου (πέντε επιθέσεις) και στις 24 Σεπτεμβρίου (τέσσερις επιθέσεις).

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

Τα middle iterations εισήγαγαν πιο περίπλοκους μηχανισμούς, όπως η ανάκτηση και εκτέλεση του bash script για τη συλλογή δεδομένων από ένα εξωτερικό domain.

Επιπλέον, οι authors πρόσθεσαν ένα “preinstall” hook για να εκτελούν αυτόματα κακόβουλο JavaScript κατά την εγκατάσταση.

Τα πιο πρόσφατα πακέτα χρησιμοποιούσαν την κωδικοποίηση base64 για να αποφύγουν την ανάλυση, η οποία αργότερα αναβαθμίστηκε σε κωδικοποίηση διπλής βάσης64.

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

Info-stealing απειλή

Τα δεδομένα που κλάπηκαν από τα πακέτα περιλαμβάνουν ευαίσθητες πληροφορίες για τις μηχανές και τους χρήστες.

Τα στοιχεία μηχανήματος και χρήστη που συλλέγονται περιλαμβάνουν όνομα κεντρικού υπολογιστή, όνομα χρήστη, τρέχουσα διαδρομή, έκδοση λειτουργικού συστήματος, εξωτερικές και εσωτερικές διευθύνσεις IP και έκδοση Python για πακέτα PyPI.

Αυτές οι λεπτομέρειες και οι διαμορφώσεις Kubernetes που είναι αποθηκευμένες σε αρχεία kubeconfig και ιδιωτικά κλειδιά SSH στο ~/.ssh/id_rsa γράφονται σε ένα αρχείο κειμένου (ConceptualTest.txt) και αποστέλλονται στους servers των εισβολέων.

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

Εάν οι κλεμμένες διαμορφώσεις του Kubernetes περιέχουν credentials για πρόσβαση στα cluster, οι επιτιθέμενοι μπορούν να τροποποιήσουν τα deployments, να προσθέσουν κακόβουλα containers, να αποκτήσουν πρόσβαση σε ευαίσθητα δεδομένα που αποθηκεύονται στο cluster, να μετακινηθούν πλευρικά ή να εκτελέσουν επίθεση με ransomware.

Οι χρήστες πλατφορμών διανομής κώδικα, όπως το PyPI και το npm, συνιστάται να είναι προσεκτικοί με τα πακέτα που κατεβάζουν και εκτελούν στα συστήματά τους, καθώς υπάρχει μια συνεχής εισροή κακόβουλου λογισμικού σε αυτά τα οικοσυστήματα.

Πηγή πληροφοριών: bleepingcomputer.com