GitGuardian-navorsers het die resultate gepubliseer van 'n ontleding van sensitiewe data wat deur ontwikkelaars vergeet is in kode wat in die PyPI (Python Package Index) bewaarplek van Python-pakkette aangebied word. Na bestudering van meer as 9.5 miljoen lêers en 5 miljoen pakketvrystellings wat verband hou met 450 duisend projekte, is 56866 3938 gevalle van vertroulike datalekkasie geïdentifiseer. As ons slegs unieke data in ag neem, sonder duplisering in verskillende vrystellings, was die aantal geïdentifiseerde lekkasies 2922, en die aantal projekte met ten minste een lekkasie was XNUMX.
In totaal is meer as 150 soorte vertroulike inligtinglekkasies geïdentifiseer, insluitend gewone wagwoorde, kriptografiese sleutels, toegangsbewyse vir wolkdienste, deurlopende integrasiestelsels en API's. Ten minste 768 geloofsbriewe het aktief gebly ten tyde van die studie. Voorbeelde van gewilde lekkasies wat relevant bly, sluit in toegangsleutels vir Azure Active Directory, geloofsbriewe vir SSH, MongoDB, MySQL en PostgreSQL, sleutels vir GitHub OAuth App, Dropbox en Auth0, aanmeldparameters vir Coinbase en Twilio.
Onder die soorte lekkasies wat gewild raak, is tekens vir toegang tot bots in Telegram, waarvan die aantal vroeg in 2021 verdubbel het en toe weer in die lente van 2023 verdubbel het. 'n Konstante toename in lekkasies is ook sedert 2020 aangeteken vir toegangsleutels tot die Google API, en sedert 2022 vir geloofsbriewe na die DBBS. Onder die pakkette wat lei tot die aantal lekkasies, word die chatllm- en safire-pakkette genoem, waarin 209 sleutels vir OpenAI en 320 sleutels na Google Cloud vergeet is.
Onder die lêertipes waarin die grootste aantal lekkasies geïdentifiseer is, is daar benewens lêers met die ".py"-uitbreiding lêers met die uitbreiding .json (610 lekkasies), .md (270), PKG-INFO (240) ), METADATA (210), .txt (170), sowel as README-lêers (209) en lêers uit gidse genaamd toets (675). Baie lekkasies is ook as gevolg van oorsig en foute in die instelling van die uitsluiting van lêers wanneer pakkette gegenereer word. Byvoorbeeld, lêers met plaaslike konfigurasielêers (.cookiecutterrc, .env, .pypirc, ens.) kan uit die Git-bewaarplek uitgesluit word deur 'n ".gitignore"-lêer, wat nie in ag geneem word wanneer die pakket geskep word nie. In die besonder is 43 .pypirc-lêers in die bewaarplek gevind wat geloofsbriewe bevat vir toegang tot PyPI. In 15 lekkasies was ontwikkelaars nie van plan om pakkette wat oorspronklik vir interne gebruik geskep is in die openbaar vry te stel nie, maar het dit per ongeluk op PyPI gepubliseer.
Daarbenewens kan nog twee gebeurtenisse wat verband hou met PyPI genoem word:
- In die PyPI-bewaarplek is 8 kwaadwillige pakkette geïdentifiseer, aangebied as nutsprogramme vir verduistering, d.w.s. die kode te reduseer tot 'n onleesbare vorm, wat die herstel van die algoritme bemoeilik. Die geïdentifiseerde pakkette het die string "pyobf" in hul name bevat (Pyobftoexe, Pyobfusfile, Pyobfexecute, Pyobfpremium, Pyobflight, Pyobfadvance, Pyobfuse en pyobfgood) en is meer as 2000 keer afgelaai.
Die kwaadwillige kode wat in die pakkette geïntegreer is, was platformspesifiek Windows en het verbinding met 'n eksterne beheer toegelaat bediener, voer arbitrêre opdragte op die ontwikkelaar se rekenaar uit, vind en stuur sensitiewe inligting, soos toegangsleutels, na 'n eksterne bediener, en oordra arbitrêre lêers vanaf die stelsel. Verder kan die kwaadwillige kode as 'n sleutellogger optree, wagwoorde wat in Chrome ingevoer word, onderskep, skermkiekies skep, klank opneem en selfs die webkamera beheer.
- Die resultate van 'n onafhanklike oudit van die kodebasis van die gereedskap wat gebruik word om die werk van die pypi.org-bewaarplek te organiseer en die cabotasieraamwerk wat in die houerorkestrasie-infrastruktuur gebruik word, is gepubliseer. Die oudit is uitgevoer met die ondersteuning van die nie-winsgewende organisasie OTF (Open Technology Fund). Tydens die oudit is geen probleme met 'n hoë vlak van gevaar geïdentifiseer nie, en die bronkodes is erken dat dit aan die basiese vereistes vir veilige kodering voldoen. Terselfdertyd is onvoldoende toetsdekking van die cabotasie-kodebasis opgemerk en 29 probleme is geïdentifiseer, waarvan agt 'n matige vlak van gevaar toegeken is, 6 - laag, en 14 is as insiggewende opmerkings gemerk.
Die mees opvallende probleme:
- Onvoldoende verifikasie van digitale handtekeninge wat gebruik word om PyPI met AWS SNS te integreer, het toegelaat dat kennisgewings na individuele gebruikers se e-pos gestuur word.
- 'n Inligtinglek in die aflaaihanteerder wat jou toelaat om die bestaan van 'n rekening te bepaal sonder om gebeurtenisse oor aanmeldpogings te genereer.
- Die gebruik van onbetroubare kriptografiese hashes wat nie kasvergiftigingsaanvalle uitsluit nie.
- As jy die reg het om bouprosesse deur middel van kabotasie te begin, kan die aanvaller moontlik die vervanging van sy opdragte bereik.
- Met ontplooiingsregte in cabotasie kan 'n aanvaller moontlik 'n wettige beeld ontplooi.
Bron: opennet.ru
