Plone'i avatud sisuhalduse sĂŒsteemi, mis on kirjutatud Pythonis ja JavaScripti/NodeJS-s, arendajad teatasid juhtumist, mille kĂ€igus lisati projekti git-repositooriumisse GitHubis pahatahtlik kood. Esialgu tuvastati repositooriumis kolm muutust, mis ilmusid 7. jaanuaril, lisades pahatahtlikku koodi projekti JavaScripti failidesse. Juhtumi analĂŒĂŒs nĂ€itas, et pahatahtliku koodi integreerimine toimus ĂŒhe arendaja konto kompromiteerimise tĂ”ttu, kelle juurdepÀÀsu token oli kurjategijate poolt tabatud tema sĂŒsteemis levitatud pahavaraga.
14. jaanuaril blokeeriti kompromiteeritud konto ning projekti arendajatele soovitati analĂŒĂŒsida commit'e ajavahemikus 1. kuni 14. jaanuar. 27. jaanuaril avastati, et mĂ€rgitud commit'id ei olnud ainsad ning rĂŒnnak oli tabanud viit projekti repositooriumit (plone/volto, plone/mockup, plone/plone.app.mosaic, plone/critical-css-cli, plone/plonetheme.barceloneta), millele oli varjatult integreeritud pahatahtlik kood. Repositooriumi plone.app.mosaic puhul Ă”nnestus rĂŒndajatel asendada master-haru. RĂŒnnak toimus kaks kuud pĂ€rast arendaja juurdepÀÀsu tokeni haaramist.
Muutuste integreerimiseks kasutasid rĂŒndajad tavaliste commit'ide asemel operatsiooni âforce pushâ (git push koos parameetriga ââforceâ), mis vĂ”imaldab sundida haru vĂ€lises repositooriumis oma sisuga ĂŒle kirjutama ja seega muuta muudatuste ajalugu (pĂ€rast asendamist kuvatakse rĂŒndaja ĂŒles laaditud haru ajalugu). Tulevikus sarnaste harude asendamise vĂ€ltimiseks on Plone'i arendajad lisanud GitHubi reeglid, mis blokeerivad âforce pushâ operatsioonid peamistele harudele ja siltidele.
Plone.app.mosaic'i repozitooriumis, et raskendada kompromiteerimise tuvastamist, sisestasid rĂŒndajad master-haru halva kommi, millel oli vale kuupĂ€ev - 18. detsember, pidades silmas, et pahatahtliku koodi otsimise ala keskendub muudatustele, mis on lisatud pĂ€rast nende esimest aktiivsust repozitooriumis. Pahatahtlik muudatus esitati sisestatud kommides uut testversiooni arendamise algusena, kuid peale versiooni numbri muutmise metades (4.0.0a1-lt 4.0.0a2.dev0-le) oli muutmisse lisatud pahatahtlikud koodid javascript-faili prettier.config.js, mis kutsuti esile kogumise etapis. Et muuta terminalis muudatuse vaatamine raskemaks, lisati kood ĂŒhe reaga koos seadusliku operatsiooniga ja nihutati nĂ€htavast alast vĂ€lja kasutades tĂŒhikuid. GitHubi liideses ei olnud see kood samuti vaikimisi nĂ€htav ja nĂ”udis âLoad Diffâ nupu vajutamist.

RĂŒnnak keskendus rohkem projekti arendajatele kui kasutajatele. Pahatahtlikud muudatused ei sattunud vĂ€ljalaskesse. Pahatahtlikud koodid aktiveerusid kogumisel, laadides sisse Ă”iguste suurendamise eksploidid, seades automaatse kĂ€ivitamise, kutsudes oma protsesse kĂ€ivituskriptide kaudu ja vĂ”imaldades kaugjuhitavust. serveriltPeale selle installiti pahatahtlik komponent, mis otsis ja saatis konfidentsiaalseid andmeid, nagu juurdepÀÀsutooted, brauseri profiilid ja krĂŒptovaluuta rahakoti vĂ”tmed.
Allikas: opennet.ru
