Paskelbta „Sigstore“ kriptografinės patikros sistema

„Google“ paskelbė apie pirmųjų stabilių komponentų, sudarančių „Sigstore“ projektą, kuris paskelbtas tinkamu kurti veikiančius diegimus, leidimus. „Sigstore“ kuria įrankius ir paslaugas programinės įrangos tikrinimui naudojant skaitmeninius parašus ir viešo žurnalo, patvirtinančio pakeitimų autentiškumą (skaidrumo žurnalą), tvarkymui. Projektą globoja ne pelno organizacija „Linux Foundation“, „Google“, „Red Hat“, „Cisco“, „vmWare“, „GitHub“ ir „HP Enterprise“, dalyvaujant OpenSSF (Open Source Security Foundation) organizacijai ir Purdue universitetui.

„Sigstore“ gali būti laikomas „Let's Encrypt for code“ analogu, teikiančiu skaitmeninio kodo pasirašymo sertifikatus ir tikrinimo 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. Parašo 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 (generuodamas raktus, reikalingus skaitmeniniam parašui sukurti, kūrėjas identifikuoja save per „OpenID“ teikėją, susietą su paštu). Raktų autentiškumas tikrinamas naudojant viešą centralizuotą žurnalą, kuris leidžia patikrinti, ar parašo autorius yra būtent tas, koks jis teigia esąs, o parašą sugeneravo tas pats dalyvis, kuris buvo atsakingas už ankstesnius leidimus.

„Sigstore“ pasirengimą diegti nulėmė dviejų pagrindinių komponentų – „Rekor 1.0“ ir „Fulcio 1.0“ – leidimų formavimas, kurių programinės sąsajos paskelbtos stabilios ir toliau bus suderinamos atgal. Paslaugos komponentai parašyti „Go“ ir platinami pagal „Apache 2.0“ licenciją.

„Rekor“ komponente yra žurnalo įgyvendinimas, 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 Merkle Tree medžio struktūra, kurioje kiekviena šaka patikrina visas pagrindines šakas ir mazgus per bendrą (medžio) maišą. 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ą ). Pateikta RESTful API patvirtinimui ir naujų įrašų pridėjimui, taip pat komandų eilutės sąsaja.

Fulcio komponentas (SigStore WebPKI) apima sertifikavimo institucijų (šakninių CA) kūrimo sistemą, kuri 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). Be to, projekte kuriamas „Cosign“ (konteinerių pasirašymo) įrankių rinkinys, skirtas generuoti konteinerių parašus, tikrinti parašus ir sudėti pasirašytus konteinerius į saugyklas, suderinamas su OCI (Open Container Initiative).

Sigstore įdiegimas leidžia padidinti programų platinimo kanalų saugumą ir apsisaugoti nuo atakų, skirtų pakeisti bibliotekas 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.

Skaitmeninių parašų naudojimas leidimo patvirtinimui dar nėra plačiai paplitęs dėl sunkumų tvarkant raktus, platinant viešuosius raktus ir atšaukiant pažeistus raktus. Kad patikrinimas būtų prasmingas, papildomai 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 mokytis patvirtinimo proceso ir suprasti, kuris raktas yra patikimas. Sigstore projektas bando supaprastinti ir automatizuoti šiuos procesus, pateikdamas paruoštą ir patikrintą sprendimą.

Šaltinis: opennet.ru

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