Noplūda pilnvara, lai nodrošinātu pilnīgu piekļuvi Python projekta GitHub krātuvēm

JFrog pētnieki Docker attēlā "cabotage-app" atklāja marķieri, kas piešķir administratoram piekļuvi Python, PyPI un Python Software Foundation repozitorijiem vietnē GitHub. Marķieris tika atrasts binārajā failā "__pycache__/build.cpython-311.pyc", kas satur kešatmiņā saglabātu kompilētu baitkodu.


Noplūda pilnvara, lai nodrošinātu pilnīgu piekļuvi Python projekta GitHub krātuvēm

Saskaņā ar PyPI repozitorija pārstāvju teikto, žetons tika izveidots 2023. gadā izstrādātājam ewdurbin (Ee Durbin), kurš ir Python Software Foundation infrastruktūras direktors. Žetons piešķīra administratora piekļuvi visiem projektu repozitorijiem un organizācijām, tostarp visiem pypi, python, psf un pypa organizāciju repozitorijiem. Problemātiskais Docker attēls, kurā bija žetons, tika publicēts Docker Hub 2023. gada 3. martā un noņemts 2024. gada 11. jūnijā pēc 16 mēnešu publiskas piekļuves. Žetons tika atsaukts 28. jūnijā.

Jāatzīmē, ka pieejamajā pirmkodā, no kura tika ģenerēts problemātiskais baitkoda fails, nav pieminēts marķieris. Koda autors paskaidroja, ka, izstrādājot cabotage-app5 rīkkopu savā lokālajā sistēmā, viņš, izpildot automatizētās failu lejupielādes funkciju, saskārās ar GitHub API piekļuves ierobežojumiem. Lai apietu ierobežojumus, kas noteikti anonīmiem GitHub pieprasījumiem, viņš īslaicīgi pievienoja kodam savu darba marķieri. Marķieris tika noņemts pirms koda publicēšanas, taču izstrādātājs neapzinājās, ka marķiera atsauce ir saglabāta kešatmiņā iepriekš kompilētā baitkoda failā, kas pēc tam tika iekļauts Docker attēlā. def _fetch_github_file( — github_repository=”īpašnieks/repozitorijs”, ref=”galvenais”, access_token=Nav, faila nosaukums=”Dockerfile” + github_repository=”īpašnieks/repozitorijs”, + ref=”galvenais”, + access_token=”0d6a9bb5af126f73350a2afc058492765446aaad”, + faila nosaukums="Dockerfile", ):

Python izstrādātāju veiktā GitHub repozitorija darbības revīzija neatklāja trešo pušu piekļuves mēģinājumus, izmantojot kompromitēto žetonu. Ņemot vērā, ka GitHub ir bijusi galvenā CPython izstrādes platforma kopš 2017. gada, uzbrucējs, iegūstot piekļuvi žetonam, varēja pilnībā apdraudēt Python izstrādei izmantoto infrastruktūru un PyPI repozitoriju, potenciāli ļaujot mēģināt integrēt aizmugures durvis CPython un PyPI pakotņu pārvaldniekā.

Šis incidents parāda noplūžu analīzes nozīmi ne tikai pirmkodā, konfigurācijas failos un vides mainīgajos, bet arī bināros failos. Python kontekstā lietotājiem ieteicams pievērst uzmanību arī .pyc failu ar kompilētu baitkodu klātbūtnei lejupielādētajos projektos, jo šie faili var saturēt slēptas modifikācijas, kas nav atrodamas pirmkodā.

Avots: opennet.ru

Iegādājieties uzticamu mitināšanu vietnēm ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa vietņu mitināšanu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster