A fost anunțată disponibilitatea sistemului de verificare a codului criptografic Sigstore

Google a anunțat formarea primelor versiuni stabile ale componentelor care formează proiectul Sigstore, care este declarat potrivit pentru crearea de implementări de lucru. Sigstore dezvoltă instrumente și servicii pentru verificarea software-ului folosind semnături digitale și menținerea unui jurnal public care confirmă autenticitatea modificărilor (jurnal de transparență). Proiectul este dezvoltat sub auspiciile organizației non-profit Linux Foundation de către Google, Red Hat, Cisco, vmWare, GitHub și HP Enterprise, cu participarea organizației OpenSSF (Open Source Security Foundation) și a Universității Purdue.

Sigstore poate fi considerat ca un analog al 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. Materialul de semnătură 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 necesare creării unei semnături digitale, dezvoltatorul se identifică prin intermediul furnizorului OpenID legat de un e-mail). Autenticitatea cheilor este verificată cu ajutorul unui jurnal public centralizat, care face posibilă verificarea faptului că autorul semnăturii este exact cine pretinde a fi, iar semnătura a fost generată de același participant care a fost responsabil pentru lansările anterioare.

Pregătirea Sigstore pentru implementare se datorează formării lansărilor a două componente cheie - Rekor 1.0 și Fulcio 1.0, ale căror interfețe software sunt declarate stabile și vor continua să fie compatibile cu versiunea precedentă. Componentele serviciului sunt scrise în Go și distribuite sub licența Apache 2.0.

Componenta Rekor conține o implementare de jurnal pentru stocarea metadatelor semnate digital care reflectă informații despre proiecte. Pentru a asigura integritatea și a proteja împotriva corupției retrospective a datelor, se utilizează o structură arborescentă Merkle Tree, în care fiecare ramură verifică toate ramurile și nodurile subiacente prin hashing (arboresc) comun. 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ă ). Este furnizat un API RESTful, precum și o interfață de linie de comandă pentru verificarea și adăugarea de noi intrări.

Componenta Fulcio (SigStore WebPKI) include un sistem de creare a autorităților de certificare (CA-uri rădăcină) care emit 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). În plus, proiectul dezvoltă setul de instrumente Cosign (Container Signing), conceput pentru a genera semnături pentru containere, a verifica semnăturile și a plasa containerele semnate în depozite compatibile cu OCI (Open Container Initiative).

Implementarea Sigstore face posibilă creșterea securității canalelor de distribuție a programelor și protejarea împotriva atacurilor care vizează înlocuirea bibliotecilor și 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.

Utilizarea semnăturilor digitale pentru verificarea lansării nu a devenit încă larg răspândită din cauza dificultăților în gestionarea cheilor, distribuirea cheilor publice și revocarea cheilor compromise. Pentru ca verificarea să aibă sens, este, în plus, necesar să se organizeze un proces de încredere și sigur pentru distribuirea cheilor publice și a sumelor de control. Chiar și cu o semnătură digitală, mulți utilizatori ignoră verificarea, deoarece trebuie să petreacă timp învățând procesul de verificare și să înțeleagă ce cheie este de încredere. Proiectul Sigstore încearcă să simplifice și să automatizeze aceste procese oferind o soluție gata făcută și dovedită.

Sursa: opennet.ru

Adauga un comentariu