Útočníkom sa podarilo pridať nezaznamenaný škodlivý kód do repozitára Plone

Vývojári otvoreného systému správy obsahu Plone, napísaného v Pythone a JavaScripte/NodeJS, oznámili incident, pri ktorom bol do git-repozitára projektu na GitHube pridaný škodlivý kód. Pôvodne boli v repozitári zistené tri zmeny z 7. januára (1, 2, 3), ktoré pridali škodlivý kód do JavaScriptových súborov projektu (1, 2, 3). Analýza incidentu ukázala, že integrácia škodlivého kódu bola vykonaná v dôsledku kompromitácie účtu jedného z vývojárov, ktorého prístupový token bol zachytený útočníkmi po spustení škodlivého softvéru v jeho systéme.

14. januára bol kompromitovaný účet zablokovaný a vývojárom projektu bolo odporúčané analyzovať commity od 1. do 14. januára. 27. januára bolo objavené, že danými commitmi sa situácia nekončila a útok zasiahol päť repozitárov projektu (plone/volto, plone/mockup, plone/plone.app.mosaic, plone/critical-css-cli, plone/plonetheme.barceloneta), do ktorých bol nenápadne integrovaný škodlivý kód. V prípade repozitára plone.app.mosaic sa útočníkom podarilo vymeniť master vetvu. Útok bol vykonaný dva mesiace po zachytení prístupového tokenu vývojára.

Na integráciu zmien namiesto bežných commitov útočníci využili operáciu „force push“ (git push s voľbou „—force“), ktorá umožňuje nútene nahradiť vetvu vo vonkajšom repozitáriu svojím obsahom a následne prepísať históriu zmien (po nahradení sa zobrazuje história z vetvy, nahranej útočníkom). Na zabránenie takejto výmene vetiev v budúcnosti vývojári Plone zapli v GitHube pravidlá, ktoré blokujú operácie „force push“ pre hlavné vetvy a tagy.

V repozitári plone.app.mosaic útočníci vložili do master vetvy škodlivý commit s falošným dátumom — 18. decembra, predpokladajúc, že oblasť vyhľadávania škodlivého kódu sa zameria na zmeny pridané po ich prvej aktivite v repozitári. Škodlivá zmena bola v podvrhnutom commite prezentovaná ako začiatok vývoja nového testovacieho vydania, no okrem zmeny čísla verzie v metadátach (z 4.0.0a1 na 4.0.0a2.dev0) bol do javasciptového súboru prettier.config.js, ktorý sa volá počas zostavovania, pridaný škodlivý kód. Na skrytie pri prezeraní zmien v termináli bol kód pridaný v jednej línii s legitímnou operáciou a posunutý z viditeľnej oblasti pomocou medzier. V rozhraní GitHub sa tento kód tiež podľa predvolených nastavení nezobrazoval a vyžadoval stlačenie tlačidla „Načítať rozdiel“.

Útočníkom sa podarilo pridať nezaznamenaný škodlivý kód do repozitára Plone

Útok bol zameraný skôr na vývojárov projektu než na používateľov. Škodlivé zmeny sa do vydania nedostali. Škodlivý kód sa aktivoval pri zostavovaní, načítal exploit pre zvýšenie oprávnení, nastavil automatické spúšťanie prostredníctvom volania svojich procesov zo spúšťacích skriptov a umožnil vzdialenú správu. serverom. Okrem toho inštalovaný škodlivý komponent vykonával vyhľadávanie a posielanie citlivých údajov, ako sú prístupové toky, profily prehliadačov a kľúče od kryptopeňaženiek.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster