// For flags

CVE-2024-51746

Use of incorrect Rekor entries during verification in gitsign

Severity Score

1.8
*CVSS v4

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Track*
*SSVC
Descriptions

Gitsign is a keyless Sigstore to signing tool for Git commits with your a GitHub / OIDC identity. gitsign may select the wrong Rekor entry to use during online verification when multiple entries are returned by the log. gitsign uses Rekor's search API to fetch entries that apply to a signature being verified. The parameters used for the search are the public key and the payload. The search API returns entries that match either condition rather than both. When gitsign's credential cache is used, there can be multiple entries that use the same ephemeral keypair / signing certificate. As gitsign assumes both conditions are matched by Rekor, there is no additional validation that the entry's hash matches the payload being verified, meaning that the wrong entry can be used to successfully pass verification. Impact is minimal as while gitsign does not match the payload against the entry, it does ensure that the certificate matches. This would need to be exploited during the certificate validity window (10 minutes) by the key holder.

Gitsign es una herramienta de firma de Sigstore sin clave para las confirmaciones de Git con su identidad de GitHub/OIDC. gitsign puede seleccionar la entrada de Rekor incorrecta para usar durante la verificación en línea cuando el registro devuelve varias entradas. gitsign usa la API de búsqueda de Rekor para obtener las entradas que se aplican a una firma que se está verificando. Los parámetros utilizados para la búsqueda son la clave pública y el payload. La API de búsqueda devuelve las entradas que coinciden con una de las condiciones en lugar de ambas. Cuando se usa el caché de credenciales de gitsign, puede haber varias entradas que usen el mismo certificado de firma/par de claves efímeras. Como gitsign asume que Rekor cumple con ambas condiciones, no hay una validación adicional de que el hash de la entrada coincida con el payload que se está verificando, lo que significa que se puede usar la entrada incorrecta para pasar la verificación con éxito. El impacto es mínimo ya que, si bien gitsign no compara el payload con la entrada, sí garantiza que el certificado coincida. Esto debería ser explotado durante la ventana de validez del certificado (10 minutos) por el titular de la clave.

*Credits: N/A
CVSS Scores
Attack Vector
Local
Attack Complexity
High
Attack Requirements
Present
Privileges Required
None
User Interaction
Active
System
Vulnerable | Subsequent
Confidentiality
None
None
Integrity
Low
None
Availability
None
None
* Common Vulnerability Scoring System
SSVC
  • Decision:Track*
Exploitation
Poc
Automatable
No
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2024-10-31 CVE Reserved
  • 2024-11-05 CVE Published
  • 2024-11-05 CVE Updated
  • 2024-11-06 EPSS Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
  • CWE-706: Use of Incorrectly-Resolved Name or Reference
CAPEC
References (1)
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Sigstore
Search vendor "Sigstore"
Gitsign
Search vendor "Sigstore" for product "Gitsign"
< 0.11.0
Search vendor "Sigstore" for product "Gitsign" and version " < 0.11.0"
en
Affected