Red Hat i Google van presentar Sigstore, un servei de verificació de codi criptogràfic

Red Hat i Google, juntament amb la Universitat de Purdue, van fundar el projecte Sigstore, amb l'objectiu de crear eines i serveis per verificar programari mitjançant signatures digitals i mantenir un registre públic per confirmar l'autenticitat (registre de transparència). El projecte es desenvoluparà sota els auspicis de l'organització sense ànim de lucre Linux Foundation.

El projecte proposat millorarà la seguretat dels canals de distribució de programari i protegirà contra atacs destinats a substituir components i dependències de programari (cadena de subministrament). Un dels problemes de seguretat clau del programari de codi obert és la dificultat de verificar l'origen del programa i verificar el procés de creació. Per exemple, la majoria dels projectes utilitzen hash per verificar la integritat d'una versió, però sovint la informació necessària per a l'autenticació s'emmagatzema en sistemes no protegits i en repositoris de codi compartit, com a resultat dels quals els atacants poden comprometre els fitxers necessaris per a la verificació i introduir canvis maliciosos. sense aixecar sospita.

Només una petita proporció de projectes utilitzen signatures digitals quan distribueixen versions a causa de les dificultats per gestionar les claus, distribuir les claus públiques i revocar les claus compromeses. Perquè la verificació tingui sentit, també cal organitzar un procés fiable i segur per distribuir les claus públiques i les sumes de control. Fins i tot amb una signatura digital, molts usuaris ignoren la verificació perquè necessiten passar temps estudiant el procés de verificació i entenent quina clau és fiable.

Sigstore es presenta com l'equivalent de Let's Encrypt per al codi, proporcionant certificats per a la signatura digital del codi i eines per automatitzar la verificació. Amb Sigstore, els desenvolupadors poden signar digitalment artefactes relacionats amb l'aplicació, com ara fitxers de llançament, imatges de contenidors, manifests i executables. Una característica especial de Sigstore és que el material utilitzat per signar es reflecteix en un registre públic a prova de manipulacions que es pot utilitzar per a la verificació i l'auditoria.

En lloc de claus permanents, Sigstore utilitza claus efímeres de curta durada, que es generen a partir de credencials confirmades pels proveïdors d'OpenID Connect (en el moment de generar les claus per a una signatura digital, el desenvolupador s'identifica a través d'un proveïdor d'OpenID enllaçat a un correu electrònic). L'autenticitat de les claus es verifica mitjançant un registre públic centralitzat, que permet verificar que l'autor de la signatura és exactament qui diu ser i que la signatura va ser formada pel mateix participant responsable de les versions anteriors.

Sigstore ofereix tant un servei ja fet que ja podeu utilitzar, com un conjunt d'eines que us permeten desplegar serveis similars al vostre propi equip. El servei és gratuït per a tots els desenvolupadors i proveïdors de programari, i es desplega en una plataforma neutral: la Fundació Linux. Tots els components del servei són de codi obert, escrits a Go i distribuïts sota la llicència Apache 2.0.

Entre els components desenvolupats podem destacar:

  • Rekor és una implementació de registre per emmagatzemar metadades signades digitalment que reflecteixen informació sobre projectes. Per garantir la integritat i protegir-se de la corrupció de les dades després dels fets, s'utilitza una estructura en forma d'arbre "Merkle Tree", en la qual cada branca verifica totes les branques i nodes subjacents, gràcies a un hash conjunt (semblant a un arbre). Tenint el hash final, l'usuari pot verificar la correcció de tot l'historial d'operacions, així com la correcció dels estats passats de la base de dades (el hash de verificació arrel del nou estat de la base de dades es calcula tenint en compte l'estat passat ). Per verificar i afegir registres nous, es proporciona una API Restful, així com una interfície cli.
  • Fulcio (SigStore WebPKI) és un sistema per crear autoritats de certificació (Root-CA) que emeten certificats de curta durada basats en correu electrònic autenticat mitjançant OpenID Connect. La vida útil del certificat és de 20 minuts, durant els quals el desenvolupador ha de tenir temps per generar una signatura digital (si després el certificat cau a mans d'un atacant, ja estarà caducat).
  • Сosign (Container Signing) és un conjunt d'eines per generar signatures per a contenidors, verificar signatures i col·locar contenidors signats en repositoris compatibles amb OCI (Open Container Initiative).

Font: opennet.ru

Afegeix comentari