Red Hat og Google har præsenteret Sigstore, en tjeneste til kryptografisk verifikation af kode

Red Hat og Google har i samarbejde med Purdue Universitet grundlagt projektet Sigstore, som har til formål at skabe værktøjer og tjenester til verifikation af software ved hjælp af digitale signaturer og føre en offentlig log til bekræftelse af ægtheden (transparency log). Projektet vil udvikles under den ikke-kommercielle organisation Linux Foundation.

Det foreslåede projekt vil forbedre sikkerheden i distributionskanalerne for software og beskytte mod angreb rettet mod at ændre softwarekomponenter og afhængigheder (supply chain). Et af de centrale sikkerhedsproblemer i open source-software er kompleksiteten ved at verificere kilden til programmet og forløbet ved byggeprocessen. For eksempel bruger de fleste projekter hashes til at kontrollere integriteten af en version, men ofte er de nødvendige oplysninger til at verificere ægtheden gemt på usikre systemer og i fælles kodeopbevaringer, som kan kompromitteres af angribere, der kan ændre de filer, der er nødvendige for verifikationen, og uden at vække mistanke indsætte ondsindede ændringer.

Kun en lille del af projekterne bruger digitale signaturer ved distribution af versioner på grund af udfordringerne med nøgleadministration, distribution af offentlige nøgler og tilbagekaldelse af kompromitterede nøgler. For at verifikationen skal give mening, kræves der også en pålidelig og sikker proces til distribution af offentlige nøgler og checksums. Selv med en digital signatur ignorerer mange brugere verificeringen, da det kræver tid at sætte sig ind i verifikationsprocessen og forstå, hvilken nøgle der er pålidelig.

Sigstore præsenteres som et alternativ til Let’s Encrypt for kode, der giver certifikater til at bekræfte kode med digitale signaturer og værktøjer til automatisering af verifikation. Med Sigstore vil udviklere kunne danne digitale signaturer for applikationsrelaterede artefakter, såsom releasefiler, containerbilleder, manifests og eksekverbare filer. En særlig egenskab ved Sigstore er, at det materiale, der bruges til signaturen, afspejles i en offentlig log, der er beskyttet mod ændringer, og som kan bruges til verifikation og revision.

I stedet for permanente nøgler anvendes kortvarige ephemeral nøgler i Sigstore, som genereres baseret på legitimationsoplysninger bekræftet af OpenID Connect-udbydere (ved generering af nøgler til digital signatur identificerer udvikleren sig selv gennem en OpenID-udbyder med tilknytning til e-mail). Ægtheden af nøglerne verificeres via en offentlig centraliseret log, som giver mulighed for at sikre, at underskriveren faktisk er den, han/hun giver sig ud for at være, og at underskriften er danner af den samme deltager, som har ansvaret for tidligere udgivelser.

Sigstore tilbyder både en færdig service, som allerede kan bruges, og et sæt værktøjer, der gør det muligt at implementere lignende tjenester på eget udstyr. Tjenesten er gratis for alle udviklere og softwareleverandører og er hostet på en neutral platform - Linux Foundation. Alle komponenter i tjenesten er åbne, skrevet i Go og distribueres under Apache 2.0 licensen.

Blandt de udviklede komponenter kan nævnes:

  • Rekor - en implementering af en log til opbevaring af verificerede metadata med digitale signaturer, der afspejler oplysninger om projekter. For at sikre integriteten og beskytte mod manipulation af data er der anvendt en træstruktur kaldet ‘Merkle Tree’, hvor hver gren verificerer alle underliggende grene og noder, takket være sammenflettet (træ) hashing. Med en endelig hash kan brugeren bekræfte korrektheden af hele operationens historie samt tidligere tilstande i databasen (den rodhash, som det nye datasystems tilstand beregnes med, tager hensyn til den tidligere tilstand). For verifikation og tilføjelse af nye poster tilbydes et Restful API samt en kommandolinjegrænseflade.
  • Fulcio (SigStore WebPKI) - et system til oprettelse af certifikatmyndigheder (Root-CA), der udsteder kortvarige certifikater baseret på e-mail, autentificeret gennem OpenID Connect. Certifikatets levetid er 20 minutter, i hvilken tid udvikleren skal nå at danne en digital signatur (hvis certifikatet senere falder i hænderne på en angriber, vil det allerede være udløbet).
  • Cosign (Container Signing) - et værktøj til at danne signaturer til containere, kontrollere signaturer og placere signerede containere i OCI-kompatible repositorier (Open Container Initiative).

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster