Mobilné Správy, Gadgety, Blogy's Secenziami

PyPI Python Package Repository Repository kritická chyba dodávateľského reťazca

PyPI Python Package Repository Repository kritická chyba dodávateľského reťazca 1

Správcovia indexu balíkov Python (PyPI) minulý týždeň vydali opravy troch zraniteľností, z ktorých jedna by mohla byť zneužitá na spustenie ľubovoľného kódu a prevzatie plnej kontroly nad oficiálnym softvérovým úložiskom tretích strán.

Bezpečnostné slabiny objavil a nahlásil japonský bezpečnostný výskumník RyotaK, ktorý v minulosti odhalil kritické zraniteľnosti v úložisku Homebrew Cask a knižnici CDNJS Cloudflare. Bol ocenený spolu $3,000 v rámci bug bounty programu.

Zoznam troch zraniteľností je nasledujúci –

  • Zraniteľnosť pri odstraňovaní starších dokumentov v PyPI – zneužiteľná zraniteľnosť v mechanizmoch na odstraňovanie starej dokumentácie hosťujúcej nasadzovacie nástroje v PyPI, ktorá by útočníkovi umožnila odstrániť dokumentáciu k projektom, ktoré nemá pod kontrolou.
  • Zraniteľnosť v odstraňovaní rolí v PyPI – bezpečnostný výskumník objavil zneužiteľnú zraniteľnosť v mechanizmoch odstraňovania rolí v PyPI, ktorá by útočníkovi umožnila odstrániť roly pre projekty, ktoré nemá pod kontrolou.
  • Zraniteľnosť v pracovnom postupe GitHub Actions pre PyPI – zneužiteľná zraniteľnosť v pracovnom postupe GitHub Actions pre zdrojové úložisko PyPI by mohla útočníkovi umožniť získať oprávnenia na zápis do úložiska pypa/warehouse.

Úspešné využitie nedostatkov by mohlo viesť k svojvoľnému vymazaniu súborov projektovej dokumentácie, čo súvisí s tým, ako koncový bod API na odstraňovanie starej dokumentácie spracováva názvy projektov odovzdané ako vstup, a umožniť každému používateľovi odstrániť akúkoľvek rolu s platným ID role. na chýbajúcu kontrolu, ktorá vyžaduje, aby sa aktuálny projekt zhodoval s projektom, s ktorým je rola spojená.

Závažnejšia chyba sa týka problému v pracovnom postupe GitHub Actions pre zdrojové úložisko PyPI s názvom „combine-prs.yml“, čo vedie k scenáru, v ktorom by protivník mohol získať povolenie na zápis do hlavnej vetvy úložiska „pypa/warehouse“, a v tomto procese spustiť škodlivý kód na pypi.org.

„Zraniteľnosti opísané v tomto článku mali významný vplyv na ekosystém Python,“ poznamenal RyotaK. “Ako som už niekoľkokrát spomenul, niektoré dodávateľské reťazce majú kritické zraniteľné miesta. Obmedzený počet ľudí však skúma útoky na dodávateľský reťazec a väčšina dodávateľských reťazcov nie je riadne chránená. Preto sa domnievam, že je to potrebné pre používateľov, ktorí sú závislí na o dodávateľskom reťazci aktívne prispievať k zlepšovaniu bezpečnosti v dodávateľskom reťazci.“