CVE-2026-44310
Açıklama
Gitsign, Git commit'lerini bir GitHub / OIDC kimliği ile imzalamak için kullanılan anahtarsız bir Sigstore imzalama aracıdır. 0.4.0 sürümünden 0.15.0 öncesine kadar, pkg/git/verifier.go içerisindeki CertVerifier.Verify(), sd.GetCertificates() işleminden sonra dilim uzunluğunu kontrol etmeden koşulsuz olarak certs[0] referansını çözmektedir. Boş bir sertifika kümesine sahip CMS/PKCS7 imzalı bir mesaj, yapısal olarak geçerli bir DER yüküdür; GetCertificates() hata vermeden boş bir dilim döndürerek anında bir index-out-of-range paniğine neden olur. gitsign --verify kod yolunda (git verify-commit tarafından çağrılan GPG uyumlu mod), panik durumu internal/io/streams.go'nun hata yerine nil döndüren Wrap() fonksiyonu tarafından sessizce kurtarılır. Ardından main.go 0 koduyla çıkış yapar ve bu durum, yalnızca çıkış koduna dayalı doğrulama yapan çağırıcıların başarısız doğrulamayı başarı olarak yorumlamasına neden olur. Bu güvenlik açığı 0.15.0 sürümünde giderilmiştir.
Nasıl düzeltilir
- github.com/sigstore/gitsign0.15.0 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| github.com/sigstore/gitsignGo | 0.4.0 ≤ v < 0.15.0 | 0.15.0 |
Sürümünüzü kontrol edin
Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.
Attack Surface Management
Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.