GitHubi repositooriume nakatati automaatsete commit'idega: mida Megalodoni rünnak näitas
GitHubi repositooriume nakatati “automaatsete” commit’idega: mida Megalodoni rünnak näitas
GitHubis toimus suur supply-chain rünnak, mis näeb arenduse automatiseerimise ajastul eriti ebameeldiv välja. SafeDepi uurijad kirjeldasid Megalodoni kampaaniat: 18. mail surusid ründajad kuue tunniga 5561 repositooriumisse 5718 pahatahtlikku commit’i. Commit’id maskeerusid tavaliseks CI/CD seadistuseks - midagi stiilis “parandada build pipeline’i” või “uuendada build’i konfiguratsiooni” -, kuid tegelikult lisasid GitHub Actionsi workflow saladuste varastamiseks.
SecurityWeek tõi loo Techmemesse ja Ox Security kinnitas sõltumatult, et tuhanded repositooriumid sisaldasid juba nakatunud YAML-faili. Tähtis detail: see ei ole klassikaline lugu ühest murtud npm-paketist. Rünnak tabas build’i taristut ennast, kus elavad sageli tokenid, pilveõigused ja automaatsed võtmed.
Kuidas skeem töötas
SafeDepi andmetel tulid pahatahtlikud commit’id võltsitud autoritelt nagu build-bot, auto-ci, ci-bot ja pipeline-bot. Nimed ja sõnumid olid piisavalt igavad, et mitte tähelepanu tõmmata: “ci: add build optimization step”, “build: improve ci performance”, “chore: update ci/cd pipeline”. Väsinud tiimi jaoks võib see paista järjekordse masinliku paranduse moodi, eriti kui repositoorium toetub juba ammu automaatsetele commit’idele.
Workflow sees oli base64-kood, mis käivitus CI-s ja püüdis kokku koguda kõik, mida tavaliselt ei tohi kaotada: keskkonnamuutujad, AWS-i, GCP ja Azure’i ligipääsud, SSH-võtmed, Dockeri ja Kubernetes’i konfiguratsioonid, npm-i ja GitHubi tokenid, database connection string’id, .env-failid ja muud saladused. SafeDep märgib eraldi, et üks variant käivitus push’i ja pull request’i pealt, teine aga lõi viivitusega tagaukse workflow_dispatch’i kaudu - sellise workflow saab hiljem GitHub API kaudu käivitada, kui ründajal on sobiv token.
Kõige kõnekam näide on Tiledesk, avatud lähtekoodiga live chat’i ja vestlusrobotite platvorm. SafeDep kirjutab, et @tiledesk/tiledesk-serveri versioonid 2.18.6 kuni 2.18.12 jõudsid npm-i juba pahatahtliku workflow’ga. Seejuures ei võtnud ründaja uurijate hinnangul npm-kontot otse üle: repositoorium mürgitati varem ja maintainer avaldas hiljem paketi nakatunud lähtekoodist.
Miks see pole oluline ainult arendajatele
Supply-chain rünnakud muutuvad ohtlikumaks just seetõttu, et kaasaegne arendus meenutab üha rohkem automaatsete usalduste võrku. CI/CD saab võtmed pilvedesse, registritesse, testandmebaasidesse, staging-keskkondadesse ja vahel ka production’isse. AI-agendid, code assistant’id ja automaatsed pipeline’id kiirendavad tööd, kuid muudavad “teeninduslikud” muudatused samal ajal vähem märgatavaks: commit’ide voos on rohkem masinamüra ja pahatahtlikku YAML-i on lihtsam rutiiniks pidada.
Ettevõtete õppetund on praktiline. Kontrollida ei tule ainult package-lock’i, requirements.txt-d ja npm-sõltuvuste nimekirja. Eraldi tuleb vaadata muudatusi .github/workflows kaustas, GitHub Actionsi õigusi, id-token: write lubamist, deploy key’sid, personal access token’eid, pilverolle ning seda, millised workflow’d võivad käivituda pull_request_target’i või workflow_dispatch’i kaudu. Kui CI-l on ligipääs saladustele, on YAML-fail peaaegu sama tundlik kui backend-kood.
Ox Security soovitab blokeerida ühendused C2-aadressile 216.126.225.129, roteerida mõjutatud masinate võtmed ja auditeerida GitHub Actionsit. Kuid peamine tagajärg on laiem kui üks IP-aadress. Megalodoni rünnak näitab, et tarkvara tarneahel murdub nüüd mitte ainult populaarsete teekide kaudu, vaid ka usalduse kaudu automatiseerimise vastu. Seal, kus tiim varem küsis “millise paketi me paigaldasime?”, tuleb nüüd küsida ka “milline robot meie build’i muutis - ja miks me teda usaldasime?”
- safedep.ioMegalodon: Mass GitHub Repo Backdooring via CI Workflows
- securityweek.comOver 5,500 GitHub Repositories Infected in ‘Megalodon’ Supply Chain Attack
- ox.securityMegalodon: New CI/CD Malware Spreads Across GitHub, Infecting ~5,000+ Repositories
- techmeme.comMore than 5,500 GitHub repositories were infected with malware in a supply chain attack, dubbed Megalodon, on May 18 that relies on automated commits
- securityweek.comSecurityWeek GitHub editorial image













