Un instrument Python pentru analiză de date, care funcționează doar jumătate din zi, s-a transformat în malware: a furat chei și tokenuri.
Un criminal cibernetic a publicat o versiune malițioasă a pachetului elementary‑data pe PyPI
Un atacator necunoscut a încărcat o versiune modificată 0.23.3 a utilitarului *elementary-data* – un instrument pentru monitorizarea datelor – în depozitul PyPI. Pachetul malițios colecta și trimitea către un server remote informații confidențiale: chei SSH, date de autentificare AWS, tokenuri API, precum și fișiere cu portofele criptomonede (Bitcoin, Litecoin, Dogecoin, Ethereum). Datele colectate erau împachetate într-un arhiv `trin.tar.gz` și livrate atacatorului.
Cum a fost obținut accesul la depozit
Atacantul a exploatat o vulnerabilitate în unul dintre fluxurile de lucru GitHub Actions ale proiectului *elementary‑data*. Obținând automat tokenul `GITHUB_TOKEN`, a creat un pull request în care a înlocuit pachetul original cu versiunea malițioasă. Datorită workflow-ului automată, PR-ul a fost acceptat și publicat ca o versiune infectată.
Perioada de prezență a pachetului malițios
- 25 aprilie, 02:20 (MSK) – atacatorul a încărcat versiunea malițioasă pe PyPI.
- 02:24 – a pus, de asemenea, un Docker‑image infectat în GitHub Container Registry, extinzând astfel spectrul atacurilor.
- 13:45 aceeași zi – administratorii proiectului au șters toate fișierele compromise și au lansat o versiune curată 0.23.4.
Astfel, pachetul malițios a fost disponibil utilizatorilor mai mult de 11 ore, oferind timp pentru scurgerea datelor.
Componente afectate
Dezvoltatorii au confirmat că celelalte părți ale ecosistemului – *Elementary dbt*, resursele Elementary Cloud și alte versiuni ale proiectului – nu au fost afectate de incident.
Ce să facă utilizatorii
1. Ștergeți versiunea infectată 0.23.3 și instalați versiunea sigură 0.23.4.
2. Curățați memoria cache a pachetelor (`pip cache purge` sau un instrument similar).
3. Eliminați fișierul marker `.trinny-security-update`, dacă există – prezența lui indică rularea codului malițios.
Măsuri luate de dezvoltatori
- Tokenul de publicare PyPI a fost actualizat.
- Tokenurile GitHub și GitHub Container Registry au fost revizuite și actualizate.
- Workflow-ul vulnerabil în GitHub Actions a fost șters; celelalte fluxuri de lucru au fost verificate pentru securitate.
Astfel, echipa *elementary‑data* a recuperat controlul asupra depozitului și a asigurat protecția utilizatorilor împotriva amenințărilor viitoare.
Comentarii (0)
Împărtășește-ți opinia — te rugăm să fii politicos și să rămâi la subiect.
Autentifică-te pentru a comenta