Red Hat ir Google pristatė Sigstore – kriptografinio kodo tikrinimo paslaugą

„Red Hat“ ir „Google“ kartu su Purdue universitetu įkūrė projektą „Sigstore“, kurio tikslas – sukurti įrankius ir paslaugas programinei įrangai tikrinti naudojant skaitmeninius parašus ir palaikyti viešąjį žurnalą autentiškumui patvirtinti (skaidrumo žurnalas). Projektą globos ne pelno organizacija „Linux Foundation“.

Siūlomas projektas pagerins programinės įrangos platinimo kanalų saugumą ir apsaugos nuo atakų, skirtų pakeisti programinės įrangos komponentus ir priklausomybes (tiekimo grandinę). Viena iš pagrindinių atvirojo kodo programinės įrangos saugumo problemų yra programos šaltinio ir kūrimo proceso patikrinimo sunkumai. Pavyzdžiui, dauguma projektų naudoja maišą, kad patikrintų leidimo vientisumą, tačiau dažnai autentifikavimui reikalinga informacija yra saugoma neapsaugotose sistemose ir bendrai naudojamų kodų saugyklose, todėl užpuolikai gali pažeisti patikrinimui reikalingus failus ir atlikti kenkėjiškų pakeitimų. nesukeldamas įtarimo.

Tik nedidelė dalis projektų naudoja skaitmeninius parašus platindami leidimus dėl sunkumų tvarkant raktus, platinant viešuosius raktus ir atšaukiant pažeistus raktus. Kad patikrinimas būtų prasmingas, taip pat būtina organizuoti patikimą ir saugų viešųjų raktų ir kontrolinių sumų platinimo procesą. Net ir turėdami skaitmeninį parašą, daugelis vartotojų nepaiso patvirtinimo, nes jiems reikia skirti laiko tikrinant patvirtinimo procesą ir suprasti, kuris raktas yra patikimas.

„Sigstore“ reklamuojamas kaip „Let's Encrypt for Code“ atitikmuo, teikiantis skaitmeninio kodo pasirašymo sertifikatus ir patvirtinimo automatizavimo įrankius. Naudodami „Sigstore“, kūrėjai gali skaitmeniniu būdu pasirašyti su programa susijusius artefaktus, pvz., leidimo failus, konteinerio vaizdus, ​​​​aprašus ir vykdomuosius failus. Ypatinga „Sigstore“ savybė yra ta, kad pasirašymui naudojama medžiaga atsispindi nuo klastojimo apsaugotame viešame žurnale, kuris gali būti naudojamas tikrinimui ir auditui.

Vietoj nuolatinių raktų „Sigstore“ naudoja trumpalaikius trumpalaikius raktus, kurie generuojami remiantis „OpenID Connect“ teikėjų patvirtintais kredencialais (generuojant skaitmeninio parašo raktus, kūrėjas identifikuoja save per „OpenID“ teikėją, susietą su el. paštu). Raktų autentiškumas tikrinamas naudojant viešą centralizuotą žurnalą, kuris leidžia patikrinti, ar parašo autorius yra būtent toks, koks jis teigia esąs, o parašą suformavo tas pats dalyvis, kuris buvo atsakingas už ankstesnius leidimus.

„Sigstore“ teikia paruoštą paslaugą, kurią jau galite naudoti, ir įrankių rinkinį, leidžiantį įdiegti panašias paslaugas savo įrangoje. Paslauga yra nemokama visiems kūrėjams ir programinės įrangos tiekėjams ir yra įdiegta neutralioje platformoje - „Linux Foundation“. Visi paslaugos komponentai yra atvirojo kodo, parašyti Go ir platinami pagal Apache 2.0 licenciją.

Tarp sukurtų komponentų galime pastebėti:

  • Rekor yra žurnalo diegimas, skirtas saugoti skaitmeniniu būdu pasirašytus metaduomenis, atspindinčius informaciją apie projektus. Siekiant užtikrinti vientisumą ir apsaugoti nuo duomenų sugadinimo po fakto, naudojama į medį panaši struktūra „Merkle Tree“, kurioje kiekviena šaka patikrina visas pagrindines šakas ir mazgus dėl bendros (medį primenančios) maišos. Turėdamas galutinę maišą, vartotojas gali patikrinti visos operacijų istorijos teisingumą, taip pat ankstesnių duomenų bazės būsenų teisingumą (naujos duomenų bazės būsenos šakninio patikrinimo maiša apskaičiuojama atsižvelgiant į ankstesnę būseną ). Norint patikrinti ir pridėti naujų įrašų, pateikiama „Restful“ API, taip pat klijų sąsaja.
  • „Fulcio“ („SigStore WebPKI“) ​​yra sistema, skirta sukurti sertifikavimo institucijas (Root-CA), kurios išduoda trumpalaikius sertifikatus pagal el. paštą, autentifikuotą per „OpenID Connect“. Sertifikato galiojimo laikas yra 20 minučių, per kurį kūrėjas turi turėti laiko sugeneruoti skaitmeninį parašą (jei sertifikatas vėliau patektų į užpuoliko rankas, jis jau bus pasibaigęs).
  • Сosign (konteinerių pasirašymas) yra įrankių rinkinys, skirtas generuoti konteinerių parašus, tikrinti parašus ir įdėti pasirašytus konteinerius į saugyklas, suderinamas su OCI (Open Container Initiative).

Šaltinis: opennet.ru

Добавить комментарий