Kërkuesit nga kompania JFrog zbuluan në përmbajtjen e imazhit Docker "cabotage-app" një token që ofron qasje me të drejta administratori në depozitat Python, PyPI dhe Python Software Foundation në GitHub. Tokeni u gjet në skedarin binar "__pycache__/build.cpython-311.pyc" me bytecode të kompiluar të ruajtur në cache.

Sipas përfaqësuesve të depozitës PyPI, tokeni u krijua në vitin 2023 për zhvilluesin ewdurbin (Ee Durbin), i cili mban pozitat e drejtorit të infrastrukturës në organizatën Python Software Foundation. Tokeni ofronte qasje me të drejta administratori në të gjitha depozitë dhe organizata të projektit, përfshirë të gjitha depozitë të organizatave pypi, python, psf dhe pypa. Imazhi problematik Docker me tokenin u publikua në katalogun Docker Hub më 3 mars 2023 dhe u fshi më 11 qershor 2024, pra kishte qenë në qasje të hapur për 16 muaj. Tokeni u tërhoq më 28 qershor.
NgjashmĂ«risht, nĂ« kodin burimor tĂ« disponueshĂ«m, mbi tĂ« cilin Ă«shtĂ« gjeneruar skedari problematik me bytecode, mungon pĂ«rmendja e tokenit. Autori i kodit sqaroi se nĂ« procesin e zhvillimit tĂ« mjetit cabotage-app5 nĂ« sistemin e tij lokal, u pĂ«rball me kufizimet e intensitetit tĂ« aksesit nĂ« API-nĂ« GitHub gjatĂ« kryerjes sĂ« funksionit tĂ« ngarkimit tĂ« automatizuar tĂ« skedave nga GitHub, dhe pĂ«r tĂ« anashkaluar limitet e vendosura pĂ«r kĂ«rkesa anonime nĂ« GitHub, pĂ«rkohĂ«sisht e shtoi tokenin e tij tĂ« punĂ«s nĂ« kod. Para publikimit tĂ« kodit tĂ« shkruar, tokeni u hoq, por zhvilluesi nuk e mori parasysh se pĂ«rmendja e tokenit ishte ruajtur nĂ« skedarin e para-kompiruar me bytecode, i cili mĂ« pas pĂ«rfundoi nĂ« imazhin docker. def _fetch_github_file( â github_repository="owner/repo", ref="main", access_token=None, filename="Dockerfile" + github_repository="owner/repo", + ref="main", + access_token="0d6a9bb5af126f73350a2afc058492765446aaad", + filename="Dockerfile", ):
Auditi i aktivitetit të zhvilluesve Python në depozitat në GitHub nuk zbuloi përpjekje të jashtme për qasje duke përdorur tokenin e ekspozuar. Duke pasur parasysh se që nga viti 2017, GitHub është platforma primare për zhvillimin e CPython, kapja e tokenit nga duar të këqija mund të çonte në një kompromis të plotë të infrastrukturës që përdoret për zhvillimin e Python dhe depozitës PyPI, dhe mundësinë për të bërë përpjekje për integrimin e backdoora në CPython dhe menaxherin e paketave PyPI.
Incidenti tregon rëndësinë e analizës së rrjedhjeve jo vetëm në kodin origjinal, skedarët e konfigurimit dhe variablat e ambientit, por edhe në skedarët binarë. Në kontekstin e Python, përdoruesit gjithashtu rekomandohet të japin vëmendje për praninë e skedarëve pyc me kodin e përmbledhur në projektet e ngarkuara, pasi këta skedarë mund të përmbajnë modifikime të fshehura që mungojnë në kodin origjinal.
Burimi: opennet.ru
