A Red Hat és a Google bemutatta a Sigstore-t, a kriptográfiai kód-ellenőrzési szolgáltatást

A Red Hat és a Google a Purdue Egyetemmel közösen megalapította a Sigstore projektet, amelynek célja a szoftverek digitális aláírással történő ellenőrzésére szolgáló eszközök és szolgáltatások létrehozása, valamint a hitelesség megerősítésére szolgáló nyilvános napló (átláthatósági napló) vezetése. A projektet a Linux Foundation non-profit szervezet égisze alatt fejlesztik ki.

A tervezett projekt javítani fogja a szoftverelosztási csatornák biztonságát, és védelmet nyújt a szoftverkomponensek és függőségek (ellátási lánc) cseréjét célzó támadások ellen. A nyílt forráskódú szoftverek egyik legfontosabb biztonsági problémája a program forrásának és az összeállítási folyamat ellenőrzésének nehézsége. Például a legtöbb projekt hash-eket használ egy kiadás integritásának ellenőrzésére, de gyakran a hitelesítéshez szükséges információkat nem védett rendszereken és megosztott kódtárolókban tárolják, aminek eredményeként a támadók feltörhetik az ellenőrzéshez szükséges fájlokat, és rosszindulatú változtatásokat vezethetnek be. gyanakvás nélkül.

A projektek csak kis hányada használ digitális aláírást a kiadások terjesztésekor a kulcsok kezelésével, a nyilvános kulcsok terjesztésével és a feltört kulcsok visszavonásával kapcsolatos nehézségek miatt. Ahhoz, hogy az ellenőrzés értelmes legyen, megbízható és biztonságos folyamatot kell megszervezni a nyilvános kulcsok és ellenőrző összegek elosztására. Sok felhasználó még digitális aláírás esetén is figyelmen kívül hagyja az ellenőrzést, mert időt kell fordítania az ellenőrzési folyamat tanulmányozására és annak megértésére, hogy melyik kulcs a megbízható.

A Sigstore a Let's Encrypt for code megfelelője, amely tanúsítványokat biztosít a kód digitális aláírásához és eszközöket az ellenőrzés automatizálásához. A Sigstore segítségével a fejlesztők digitálisan aláírhatják az alkalmazásokhoz kapcsolódó melléktermékeket, például kiadási fájlokat, tárolóképeket, manifesteket és végrehajtható fájlokat. A Sigstore sajátossága, hogy az aláíráshoz felhasznált anyag egy hamisításbiztos nyilvános naplóban jelenik meg, amely ellenőrzésre és auditálásra használható.

Az állandó kulcsok helyett a Sigstore rövid élettartamú, efemer kulcsokat használ, amelyeket az OpenID Connect szolgáltatók által megerősített hitelesítő adatok alapján generálnak (a digitális aláíráshoz szükséges kulcsok generálásakor a fejlesztő egy e-mailhez kapcsolódó OpenID szolgáltatón keresztül azonosítja magát). A kulcsok valódiságának ellenőrzése nyilvános, központi napló segítségével történik, amely lehetővé teszi annak ellenőrzését, hogy az aláírás szerzője pontosan az, akinek vallja magát, és az aláírást ugyanaz a résztvevő készítette, aki a korábbi kiadásokért volt felelős.

A Sigstore egy már használható kész szolgáltatást és egy olyan eszközkészletet is biztosít, amely lehetővé teszi, hogy hasonló szolgáltatásokat telepítsen saját berendezésére. A szolgáltatás minden fejlesztő és szoftverszolgáltató számára ingyenes, és egy semleges platformon, a Linux Foundation-on kerül bevezetésre. A szolgáltatás minden összetevője nyílt forráskódú, Go nyelven íródott, és az Apache 2.0 licenc alatt terjeszthető.

A kifejlesztett komponensek közül megjegyezhetjük:

  • A Rekor egy napló megvalósítás a projektekkel kapcsolatos információkat tükröző, digitálisan aláírt metaadatok tárolására. Az integritás biztosítása és az adatok utólagos megsérülése elleni védelem érdekében egy faszerű „Merkle Tree” szerkezetet használnak, amelyben minden egyes ág ellenőrzi az összes mögöttes ágat és csomópontot a közös (faszerű) kivonatolásnak köszönhetően. A végső hash birtokában a felhasználó ellenőrizheti a műveletek teljes előzményének helyességét, valamint az adatbázis múltbeli állapotainak helyességét (az adatbázis új állapotának gyökérellenőrző kivonata a múlt állapot figyelembevételével kerül kiszámításra ). Az új rekordok ellenőrzéséhez és hozzáadásához egy Restful API, valamint egy kliens felület áll rendelkezésre.
  • A Fulcio (SigStore WebPKI) egy olyan hitelesítési hatóságok (Root-CA) létrehozására szolgáló rendszer, amelyek rövid élettartamú tanúsítványokat bocsátanak ki az OpenID Connecten keresztül hitelesített e-mailek alapján. A tanúsítvány élettartama 20 perc, ezalatt a fejlesztőnek ideje kell hogy legyen digitális aláírás generálására (ha a tanúsítvány később támadó kezébe kerül, már lejár).
  • A Сosign (Container Signing) egy eszközkészlet a tárolók aláírásainak generálására, az aláírások ellenőrzésére és az aláírt tárolók OCI-val (Open Container Initiative) kompatibilis adattárakba helyezésére.

Forrás: opennet.ru

Hozzászólás