Red Hat și Google au introdus Sigstore, un serviciu pentru verificarea codului criptografic

Red Hat și Google, împreună cu Universitatea Purdue, au fondat proiectul Sigstore, care vizează crearea de instrumente și servicii pentru verificarea software-ului folosind semnături digitale și menținerea unui jurnal public pentru confirmarea autenticității (jurnal de transparență). Proiectul va fi dezvoltat sub auspiciile organizației non-profit Linux Foundation.

Proiectul propus va îmbunătăți securitatea canalelor de distribuție a software-ului și va proteja împotriva atacurilor care vizează înlocuirea componentelor software și a dependențelor (lanțul de aprovizionare). Una dintre problemele cheie de securitate în software-ul open source este dificultatea de a verifica sursa programului și de a verifica procesul de construire. De exemplu, majoritatea proiectelor folosesc hashuri pentru a verifica integritatea unei ediții, dar adesea informațiile necesare pentru autentificare sunt stocate pe sisteme neprotejate și în depozite de cod partajate, drept urmare atacatorii pot compromite fișierele necesare verificării și pot introduce modificări rău intenționate. fără a ridica suspiciuni.

Doar o mică parte dintre proiecte utilizează semnături digitale atunci când distribuie versiuni din cauza dificultăților de gestionare a cheilor, distribuirea cheilor publice și revocarea cheilor compromise. Pentru ca verificarea să aibă sens, este, de asemenea, necesar să se organizeze un proces sigur și sigur de distribuire a cheilor publice și a sumelor de control. Chiar și cu o semnătură digitală, mulți utilizatori ignoră verificarea, deoarece trebuie să petreacă timp studiind procesul de verificare și înțelegând ce cheie este de încredere.

Sigstore este prezentat ca echivalentul Let's Encrypt pentru cod, oferind certificate pentru semnarea digitală a codului și instrumente pentru automatizarea verificării. Cu Sigstore, dezvoltatorii pot semna digital artefacte legate de aplicații, cum ar fi fișiere de lansare, imagini container, manifeste și executabile. O caracteristică specială a Sigstore este că materialul folosit pentru semnare este reflectat într-un jurnal public inviolabil care poate fi folosit pentru verificare și audit.

În loc de chei permanente, Sigstore folosește chei efemere de scurtă durată, care sunt generate pe baza acreditărilor confirmate de furnizorii OpenID Connect (la momentul generării cheilor pentru o semnătură digitală, dezvoltatorul se identifică printr-un furnizor OpenID legat de un e-mail). Autenticitatea cheilor este verificată folosind un jurnal public centralizat, care face posibilă verificarea faptului că autorul semnăturii este exact cine pretinde a fi și semnătura a fost formată de același participant care a fost responsabil pentru lansările anterioare.

Sigstore oferă atât un serviciu gata făcut pe care îl puteți utiliza deja, cât și un set de instrumente care vă permit să implementați servicii similare pe propriul echipament. Serviciul este gratuit pentru toți dezvoltatorii și furnizorii de software și este implementat pe o platformă neutră - Linux Foundation. Toate componentele serviciului sunt open source, scrise în Go și distribuite sub licența Apache 2.0.

Dintre componentele dezvoltate putem remarca:

  • Rekor este o implementare de jurnal pentru stocarea metadatelor semnate digital care reflectă informații despre proiecte. Pentru a asigura integritatea și a proteja împotriva coruperii datelor după fapt, se utilizează o structură arborescentă „Merkle Tree”, în care fiecare ramură verifică toate ramurile și nodurile subiacente, datorită hashingului comun (ca arbore). Având hash-ul final, utilizatorul poate verifica corectitudinea întregului istoric al operațiunilor, precum și corectitudinea stărilor trecute ale bazei de date (hash-ul de verificare rădăcină a noii stări a bazei de date este calculat ținând cont de starea trecută ). Pentru a verifica și adăuga înregistrări noi, este furnizat un API Restful, precum și o interfață cli.
  • Fulcio (SigStore WebPKI) este un sistem de creare a autorităților de certificare (Root-CA) care eliberează certificate de scurtă durată pe baza e-mailului autentificat prin OpenID Connect. Durata de viață a certificatului este de 20 de minute, timp în care dezvoltatorul trebuie să aibă timp să genereze o semnătură digitală (dacă certificatul va ajunge ulterior în mâinile unui atacator, acesta va fi deja expirat).
  • Сosign (Container Signing) este un set de instrumente pentru generarea de semnături pentru containere, verificarea semnăturilor și plasarea containerelor semnate în depozite compatibile cu OCI (Open Container Initiative).

Sursa: opennet.ru

Adauga un comentariu