GitGuardian tədqiqatçıları Python paketlərinin PyPI (Python Paket İndeksi) repozitoriyasında yerləşdirilən kodda tərtibatçılar tərəfindən unudulmuş həssas məlumatların təhlilinin nəticələrini dərc ediblər. 9.5 min layihə ilə əlaqəli 5 milyondan çox fayl və 450 milyon paket buraxılışı öyrənildikdən sonra 56866 3938 məxfi məlumat sızması halı müəyyən edilib. Fərqli buraxılışlarda təkrarlanmadan yalnız unikal məlumatları nəzərə alsaq, müəyyən edilmiş sızmaların sayı 2922, ən azı bir sızma olan layihələrin sayı isə XNUMX olub.
Ümumilikdə, adi parollar, kriptoqrafik açarlar, bulud xidmətləri üçün giriş tokenləri, davamlı inteqrasiya sistemləri və API-lər daxil olmaqla, 150-dən çox məxfi məlumat sızması müəyyən edilib. Tədqiqat zamanı ən azı 768 etimadnamə aktiv olaraq qaldı. Müvafiq olaraq qalan məşhur sızmalara misal olaraq Azure Active Directory üçün giriş açarları, SSH, MongoDB, MySQL və PostgreSQL üçün etimadnamələr, GitHub OAuth App, Dropbox və Auth0 üçün açarlar, Coinbase və Twilio üçün giriş parametrləri daxildir.
Populyarlıq qazanan sızma növləri arasında Telegram-da botlara giriş üçün tokenlər var ki, onların sayı 2021-ci ilin əvvəlində iki dəfə artıb, 2023-cü ilin yazında isə yenidən iki dəfə artıb. 2020-ci ildən Google API-yə giriş açarları üçün, 2022-ci ildən isə DBMS-ə etimadnamələr üçün sızmaların daimi artması da qeydə alınıb. Sızmaların sayına görə lider olan paketlər arasında OpenAI üçün 209 açar və Google Bulud üçün 320 açar unudulmuş chatllm və Safire paketləri qeyd olunur.
Ən çox sızmanın müəyyən edildiyi fayl növləri arasında “.py” uzantılı fayllardan əlavə .json (610 sızma), .md (270), PKG-INFO (240) uzantılı fayllar var. ), METADATA (210), .txt (170), həmçinin README faylları (209) və test (675) adlı qovluqlardan fayllar. Bir çox sızma, həmçinin paketlər yaradan zaman faylların xaric edilməsinin təyin edilməsində səhvlər və səhvlərlə bağlıdır. Məsələn, yerli konfiqurasiya faylları (.cookiecutterrc, .env, .pypirc və s.) olan fayllar paket yaradılarkən nəzərə alınmayan ".gitignore" faylı vasitəsilə Git repozitoriyasından xaric edilə bilər. Xüsusilə, PyPI-yə daxil olmaq üçün etimadnamələri ehtiva edən depoda 43 .pypirc faylı tapılıb. 15 sızmada tərtibatçılar əvvəlcə daxili istifadə üçün yaradılmış paketləri ictimaiyyətə təqdim etmək niyyətində deyildilər, lakin səhvən onları PyPI-də dərc etdilər.
Bundan əlavə, PyPI ilə əlaqəli daha iki hadisə qeyd edilə bilər:
- PyPI repozitoriyada 8 zərərli paket müəyyən edildi, çaşqınlıq üçün utilitlər kimi təqdim edildi, yəni. kodun oxunmaz formaya salınması, alqoritmin bərpasını çətinləşdirir. Müəyyən edilmiş paketlər öz adlarında (Pyobftoexe, Pyobfusfile, Pyobfeexecute, Pyobfpremium, Pyobflight, Pyobfadvance, Pyobfuse və pyobfgood) "pyobf" sətirindən ibarət idi və 2000 dəfədən çox yükləndi.
Paketlərə inteqrasiya olunmuş zərərli kod platformaya xas idi Windows və xarici idarəetməyə qoşulmağa icazə verildi server, geliştiricinin kompüterində ixtiyari əmrləri yerinə yetirə, giriş açarları kimi həssas məlumatları tapıb xarici serverə göndərə və sistemdən ixtiyari faylları ötürə bilər. Bundan əlavə, zərərli kod keylogger kimi çıxış edə, Chrome-da daxil edilmiş parolları ələ keçirə, ekran görüntüləri yarada, səs yaza və hətta veb-kameraya nəzarət edə bilər.
- pypi.org repozitoriyasının işini təşkil etmək üçün istifadə olunan alətlərin kod bazasının və konteyner orkestrləşdirmə infrastrukturunda istifadə olunan kabotaj çərçivəsinin müstəqil auditinin nəticələri dərc olunub. Audit OTF (Açıq Texnologiyalar Fondu) qeyri-kommersiya təşkilatının dəstəyi ilə həyata keçirilib. Audit zamanı yüksək təhlükə səviyyəsinə malik heç bir problem aşkar edilməyib və mənbə kodları təhlükəsiz kodlaşdırmanın əsas tələblərinə cavab verən kimi tanınıb. Eyni zamanda, kabotaj kod bazasının kifayət qədər sınaq əhatə dairəsi olmadığı qeyd edilib və 29 problem müəyyən edilib, onlardan səkkizinə orta təhlükə dərəcəsi, 6-sı aşağı, 14-ü isə məlumat xarakterli şərh kimi qeyd edilib.
Ən çox nəzərə çarpan problemlər:
- PyPI-ni AWS SNS ilə inteqrasiya etmək üçün istifadə edilən rəqəmsal imzaların kifayət qədər yoxlanılması fərdi istifadəçilərin e-poçtlarına bildirişlərin göndərilməsinə icazə verdi.
- Giriş cəhdləri ilə bağlı hadisələr yaratmadan hesabın mövcudluğunu müəyyən etməyə imkan verən yükləmə işləyicisində məlumat sızması.
- Keş zəhərlənməsi hücumlarını istisna etməyən etibarsız kriptoqrafik hashların istifadəsi.
- Əgər kabotaj vasitəsilə tikinti proseslərinə başlamaq hüququnuz varsa, təcavüzkar potensial olaraq öz əmrlərini əvəz edə bilər.
- Kabotajda yerləşdirmə hüquqları ilə təcavüzkar potensial olaraq qanuni görünən təsviri yerləşdirə bilər.
Mənbə: opennet.ru
