PyPI repozitorijs atklāja apmēram 5000 kodā atstātu noslēpumu un 8 ļaunprātÄ«gus aptumÅ”otājus

GitGuardian pētnieki ir publicējuÅ”i savas analÄ«zes rezultātus par konfidenciāliem datiem, ko izstrādātāji atstājuÅ”i kodā, kas atrodas Python Package Index (PyPI) repozitorijā. Pēc vairāk nekā 9.5 miljonu failu un 5 miljonu pakotņu laidienu, kas saistÄ«ti ar 450 000 projektiem, pārbaudes viņi identificēja 56 866 konfidenciālu datu noplÅ«des. Ņemot vērā tikai unikālos datus, izslēdzot dublēŔanos starp laidieniem, identificēto noplūžu skaits bija 3938, un projektu skaits, kuros bija vismaz viena noplÅ«de, bija 2922.

Kopumā tika identificēti vairāk nekā 150 konfidenciālas informācijas noplÅ«des veidi, tostarp izplatÄ«tas paroles, kriptogrāfiskās atslēgas, piekļuves žetoni mākoņpakalpojumiem, nepārtrauktas integrācijas sistēmām un API. PētÄ«juma laikā vismaz 768 akreditācijas dati joprojām bija derÄ«gi. Biežāk sastopamo noplūžu, kas joprojām ir derÄ«gi, piemēri ir Azure Active Directory piekļuves atslēgas, SSH, MongoDB, MySQL un PostgreSQL akreditācijas dati, GitHub OAuth lietotnes, Dropbox un Auth0 atslēgas, kā arÄ« Coinbase un Twilio pieteikÅ”anās akreditācijas dati.

Starp aizvien biežāk sastopamajiem noplūžu veidiem ir minēti Telegram botu piekļuves tokeni, kuru skaits dubultojās 2021. gada sākumā un pēc tam atkal dubultojās 2023. gada pavasarÄ«. KopÅ” 2020. gada ir reÄ£istrēts arÄ« pastāvÄ«gs noplūžu pieaugums Google API piekļuves atslēgām un kopÅ” 2022. gada datubāzu pārvaldÄ«bas sistēmu akreditācijas datiem. Starp visbiežāk nopludinātajām pakotnēm tika minētas chatllm un safire pakotnes, nopludinot 209 OpenAI atslēgas un 320 Google Cloud atslēgas.

Papildus failiem ar paplaÅ”inājumu ".py", visvairāk noplūžu piedzÄ«voja Ŕādi failu tipi: .json (610 noplÅ«des), .md (270), PKG-INFO (240), METADATA (210), .txt (170), README faili (209) un faili no direktorijiem ar nosaukumu test (675). Daudzas noplÅ«des radās arÄ« neuzmanÄ«bas un kļūdu dēļ failu izslēgÅ”anas iestatÄ«jumos, veidojot pakotnes. Piemēram, failus ar lokāliem konfigurācijas failiem (.cookiecutterrc, .env, .pypirc utt.) var izslēgt no Git repozitorija, izmantojot failu ".gitignore", kas netiek ņemts vērā, veidojot pakotni. Konkrēti, repozitorijā tika atrasti 43 .pypirc faili, kuros bija akreditācijas dati piekļuvei PyPI. 15 noplÅ«des gadÄ«jumos izstrādātājiem nebija nodoma publiski izlaist pakotnes, kas sākotnēji bija izveidotas iekŔējai lietoÅ”anai, bet viņi kļūdas pēc tās publicēja PyPI.

Turklāt ir vērts pieminēt vēl divus ar PyPI saistītus notikumus:

  • PyPI repozitorijā tika atklātas astoņas ļaunprātÄ«gas pakotnes, kas it kā bija kodēŔanas slēpÅ”anas rÄ«ki jeb koda slēpÅ”anas rÄ«ki, apgrÅ«tinot pamatā esoŔā algoritma rekonstruēŔanu. Atrasto pakotņu nosaukumos bija virkne "pyobf" (Pyobftoexe, Pyobfusfile, Pyobfexecute, Pyobfpremium, Pyobflight, Pyobfadvance, Pyobfuse un pyobfgood), un tās bija lejupielādētas vairāk nekā 2000 reižu.

    Pakotnēs integrētais ļaunprātīgais kods bija specifisks Windows platformai un ļāva izveidot savienojumu ar ārēju vadības ierīci. serveris, palaist patvaļīgas komandas izstrādātāja datorā, atrast un nosūtīt sensitīvu informāciju, piemēram, piekļuves atslēgas, uz ārēju serveri un pārsūtīt patvaļīgus failus no sistēmas. Turklāt ļaunprātīgais kods varētu darboties kā taustiņu reģistrētājs, pārtvert pārlūkā Chrome ievadītās paroles, veidot ekrānuzņēmumus, ierakstīt audio un pat kontrolēt tīmekļa kameru.

  • Ir publicēti neatkarÄ«ga koda bāzes audita rezultāti, kas veikti ar pypi.org repozitorija un "kabotāžas" ietvara, kas nodroÅ”ina konteineru orÄ·estrācijas infrastruktÅ«ru, pārvaldīŔanai izmantotajiem rÄ«kiem. Audits tika veikts ar bezpeļņas organizācijas OTF (Atvērto tehnoloÄ£iju fonds) atbalstu. Auditā netika konstatētas nopietnas problēmas, un tika konstatēts, ka pirmkods atbilst droÅ”as kodēŔanas pamatprasÄ«bām. Tomēr tika konstatēts nepietiekams kabotāžas koda bāzes testēŔanas pārklājums, un tika identificētas 29 problēmas, no kurām astoņas tika novērtētas kā mērenas, seÅ”as kā zemas un 14 kā ieteikuma problēmas.

    Visievērojamākie jautājumi ir Ŕādi:

    • Nepietiekama digitālo parakstu validācija, ko izmantoja PyPI integrēŔanai ar AWS SNS, ļāva nosÅ«tÄ«t e-pasta paziņojumus atseviŔķiem lietotājiem.
    • Informācijas noplÅ«de lejupielādes apstrādātājā ļauj noteikt konta esamÄ«bu, neÄ£enerējot pieteikÅ”anās notikumus.
    • Vāju kriptogrāfisko heÅ”u izmantoÅ”ana, kas neizslēdz keÅ”atmiņas saindēŔanās uzbrukumus.
    • Ar atļauju palaist veidoÅ”anas procesus, izmantojot kabotāžu, uzbrucējs varētu potenciāli panākt komandu aizstāŔanu.
    • Ar izvietoÅ”anas tiesÄ«bām kabotāžā uzbrucējs varētu potenciāli izvietot likumÄ«ga izskata attēlu.

Avots: opennet.ru

Pievieno komentāru