Cyber Security News
Malware & Threats

Διαρροή master key οδήγησε σε επίθεση στο LiteLLM και κακόβουλο πακέτο στο PyPI

Διαρροή master key οδήγησε σε επίθεση στο LiteLLM και κακόβουλο πακέτο στο PyPI

Μια επίθεση στο LiteLLM, δημοφιλές open source gateway για μεγάλα γλωσσικά μοντέλα (LLM), ξεκίνησε από ένα master key που δημοσιεύτηκε κατά λάθος σε δημόσιο αποθετήριο GitHub. Σύμφωνα με τους διαχειριστές του έργου, το κλειδί αυτό οδήγησε τελικά στη δημοσίευση κακόβουλης έκδοσης του πακέτου Python. Η εταιρεία παραδέχεται ότι η ανάκληση του κλειδιού δεν ολοκληρώθηκε ποτέ.

Από ένα λάθος τον Μάιο στην παραβίαση τον Οκτώβριο

Στις 27 Μαΐου 2026, ένα αρχείο ρυθμίσεων ανέβηκε στο δημόσιο αποθετήριο LiteLLM-Labs/lite-harness. Περιείχε το master key μιας εγκατάστασης του LiteLLM Agent Platform, εργαλείου που η εταιρεία χρησιμοποιεί για την ενορχήστρωση agents. Το λάθος εντοπίστηκε γρήγορα και το commit αντικαστάθηκε με force-push. Τα εκτεθειμένα κλειδιά χαρακτηρίστηκαν προς ανάκληση, όμως, όπως δήλωσαν οι Oliver Jensen και Mateo Wang της LiteLLM, η ανάκληση δεν έγινε για το master key.

Στις 10 Οκτωβρίου 2026, ένας άγνωστος επιτιθέμενος χρησιμοποίησε το κλειδί για να μπει στην πλατφόρμα. Από εκεί απέκτησε ένα GitHub CLI OAuth token, που επέτρεπε στους cloud agents να ανοίγουν pull requests. Το token δεν είχε περιορισμένα δικαιώματα και ήταν συνδεδεμένο με τον λογαριασμό του ιδιοκτήτη του GitHub organization. Έτσι ο επιτιθέμενος απέκτησε πρόσβαση ιδιοκτήτη σε όλα τα αποθετήρια του οργανισμού.

Πώς εξελίχθηκε η επίθεση στο LiteLLM

Την ίδια μέρα ο δράστης δημιούργησε προσωρινά branches σε εσωτερικά αποθετήρια και έτρεξε workflows που έκλεψαν τα GitHub tokens δύο μηχανικών με δικαιώματα maintainer. Τα δεδομένα στάλθηκαν σε endpoints του webhook.site και τα runs διαγράφηκαν μέσα σε λίγα λεπτά. Η Socket ανέκτησε δύο κακόβουλα commits που πρόσθεταν το αρχείο .github/workflows/cache.yml με το αθώο μήνυμα «ci: bump cache config». Τα branches είχαν ονόματα της μορφής ci-tmp-<hex>, γι’ αυτό σχεδόν δεν άφησαν ίχνη στο ιστορικό.

Στις 21 Οκτωβρίου ο επιτιθέμενος παρέκαμψε την προστασία των branches και άλλαξε το release pipeline, ώστε να δείχνει σε ένα παραπλανητικό αποθετήριο με το όνομα «Berri-AI/litellm» αντί για το γνήσιο «BerriAI/litellm». Συνήθως μια έκδοση χρειάζεται έγκριση από ειδικό λογαριασμό δεμένο σε φυσική συσκευή στο γραφείο. Νωρίτερα την ίδια εβδομάδα ο περιορισμός είχε χαλαρώσει, ώστε οποιοιδήποτε δύο μηχανικοί να μπορούν να ξεκινούν και να εγκρίνουν release. Ο δράστης χρησιμοποίησε το ένα κλεμμένο token για να ξεκινήσει την έκδοση και το άλλο για να την εγκρίνει.

Η έκδοση 1.107.0 δημοσιεύτηκε στο PyPI γύρω στις 11:39 UTC, ακολούθησαν εικόνες σε Docker Hub και GHCR και διαγράφηκαν εγγραφές runs. Η επίθεση αναφέρθηκε στις 12:06 UTC από τον ερευνητή της Upwind, Lidor Machluf. Το PyPI έθεσε την έκδοση σε καραντίνα στις 13:23 UTC και τα σχετικά Docker tags αφαιρέθηκαν ή επανατοποθετήθηκαν σε επαληθευμένες καθαρές εικόνες.

Τι έκλεβαν τα workflows και το κακόβουλο πακέτο

Τα workflows στόχευαν tokens GitHub, κλειδιά για το Linear, το Together AI και το LiteLLM, καθώς και το αναγνωριστικό και το signing key μιας GitHub App. Το δεύτερο run, της 12ης Οκτωβρίου, επέκτεινε τη συλλογή σε κλειδιά API για Anthropic, OpenAI, AWS Bedrock, Tavily και GitGuardian. Επίσης συνέλεγε στοιχεία βάσεων PostgreSQL και Redis. Ο ερευνητής της Socket, Karlo Zanki, επισήμανε ότι το κλειδί του GitGuardian θα μπορούσε να δώσει στον επιτιθέμενο εικόνα, ή και έλεγχο, των ειδοποιήσεων που θα αποκάλυπταν τη δραστηριότητα.

Τι κάνει η έκδοση 1.107.0 του LiteLLM

Σύμφωνα με πολλαπλές αναφορές, τα αρχεία της κακόβουλης έκδοσης εκτελούνται αυτόματα όταν ξεκινά η Python, ακόμη και αν η εφαρμογή δεν κάνει import το LiteLLM. Υπάρχουν δύο μηχανισμοί: ένα module που συλλέγει διαπιστευτήρια από εργαλεία ανάπτυξης, εφαρμογές AI, cloud και browsers, και ένα backdoor για Unix που τρέχει στο παρασκήνιο και κατεβάζει κώδικα του επιτιθέμενου κάθε μία ώρα. Το stealer παίρνει επίσης αρχεία SSH, διαπιστευτήρια Git και GitLab, μεταβλητές περιβάλλοντος και tokens για npm, PyPI, Maven, Cargo και άλλους διαχειριστές πακέτων. Τα δεδομένα στέλνονται με HTTP POST στο litellm[.]dev/healthcheck, domain που δηλώθηκε στις 13 Οκτωβρίου 2026.

Η ομάδα Microsoft Security Research προειδοποίησε ότι τα αρχεία εκκίνησης βρίσκονται εκτός του φακέλου της εφαρμογής. Η απλή διαγραφή των αρχείων του LiteLLM μπορεί λοιπόν να αφήσει πίσω τα κακόβουλα στοιχεία.

Τι διδάσκει το περιστατικό

Η αλυσίδα των λαθών είναι χαρακτηριστική. Ένα κλειδί που διέρρευσε και δεν ανακλήθηκε, ένα token με υπερβολικά δικαιώματα και ένας ελεγκτικός μηχανισμός που χαλάρωσε προσωρινά αρκούσαν για να γίνει ένα έμπιστο πακέτο όχημα επίθεσης. Η LiteLLM παραδέχτηκε ότι η αρχική της υπόθεση, πως τα tokens κλάπηκαν από logs εσωτερικής εγκατάστασης, αποδείχθηκε ανακριβής. Οι εκτιμήσεις σε τέτοιες έρευνες αλλάζουν καθώς προκύπτουν νέα στοιχεία. Όποιος χρησιμοποιεί εργαλεία AI στην αλυσίδα ανάπτυξης πρέπει να θεωρεί τα κλειδιά API τους κρίσιμα περιουσιακά στοιχεία.

Τι πρέπει να κάνετε

  • Ελέγξτε αν σε κάποιο περιβάλλον, CI/CD ή container εγκαταστάθηκε η έκδοση 1.107.0 του LiteLLM ή αντίστοιχη εικόνα Docker. Αν ναι, θεωρήστε το σύστημα παραβιασμένο.
  • Αλλάξτε όλα τα διαπιστευτήρια που ήταν προσβάσιμα εκεί: tokens GitHub, κλειδιά SSH, κλειδιά cloud και AI providers, tokens διαχειριστών πακέτων και μεταβλητές περιβάλλοντος.
  • Μη βασίζεστε στη διαγραφή του φακέλου του LiteLLM. Αναζητήστε και αφαιρέστε αρχεία εκκίνησης της Python που έμειναν πίσω, ή ξαναδημιουργήστε το περιβάλλον από καθαρή βάση.
  • Αποκλείστε και αναζητήστε στα logs κίνηση προς το litellm[.]dev και ελέγξτε για περιοδικές συνδέσεις που μοιάζουν με backdoor.
  • Όταν ένα κλειδί εκτεθεί, ανακαλέστε το άμεσα και επιβεβαιώστε ότι η ανάκληση έγινε. Περιορίστε τα δικαιώματα των OAuth tokens στο ελάχιστο αναγκαίο.
  • Μην χαλαρώνετε προσωρινά τους ελέγχους έγκρισης releases και καθηλώστε τις εξαρτήσεις σε επαληθευμένες εκδόσεις.

Πηγή: The Hacker News

Σχετικές αναρτήσεις

Rank Math PRO: παραβιασμένο plugin εγκατέστησε backdoor σε sites WordPress

Cybersecurity

Δημόσιο exploit για την ευπάθεια AnyDesk Linux δίνει πρόσβαση root

Cybersecurity

Ransomware Qilin και INC εκμεταλλεύονται την ευπάθεια PAN-OS για παράκαμψη MFA

Cybersecurity

Αυτός ο ιστότοπος χρησιμοποιεί cookies για να βελτιώσει την εμπειρία σας. Θα υποθέσουμε ότι είστε εντάξει με αυτό, αλλά μπορείτε να εξαιρεθείτε εάν το επιθυμείτε. Αποδέχομαι Διαβάστε περισσότερα

Πολιτική Απορρήτου & Cookies