2024-09-24 18:03:17 +00:00

140 lines
7.0 KiB
JSON

{
"id": "CVE-2024-45395",
"sourceIdentifier": "security-advisories@github.com",
"published": "2024-09-04T21:15:14.237",
"lastModified": "2024-09-24T16:50:07.930",
"vulnStatus": "Analyzed",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "sigstore-go, a Go library for Sigstore signing and verification, is susceptible to a denial of service attack in versions prior to 0.6.1 when a verifier is provided a maliciously crafted Sigstore Bundle containing large amounts of verifiable data, in the form of signed transparency log entries, RFC 3161 timestamps, and attestation subjects. The verification of these data structures is computationally expensive. This can be used to consume excessive CPU resources, leading to a denial of service attack. TUF's security model labels this type of vulnerability an \"Endless data attack,\" and can lead to verification failing to complete and disrupting services that rely on sigstore-go for verification. This vulnerability is addressed with sigstore-go 0.6.1, which adds hard limits to the number of verifiable data structures that can be processed in a bundle. Verification will fail if a bundle has data that exceeds these limits. The limits are 32 signed transparency log entries, 32 RFC 3161 timestamps, 1024 attestation subjects, and 32 digests per attestation subject. These limits are intended to be high enough to accommodate the vast majority of use cases, while preventing the verification of maliciously crafted bundles that contain large amounts of verifiable data. Users who are vulnerable but unable to quickly upgrade may consider adding manual bundle validation to enforce limits similar to those in the referenced patch prior to calling sigstore-go's verification functions."
},
{
"lang": "es",
"value": "sigstore-go, una librer\u00eda Go para la firma y verificaci\u00f3n de Sigstore, es susceptible a un ataque de denegaci\u00f3n de servicio en versiones anteriores a la 0.6.1 cuando se proporciona a un verificador un paquete Sigstore creado con fines malintencionados que contiene grandes cantidades de datos verificables, en forma de entradas de registro de transparencia firmadas, marcas de tiempo RFC 3161 y sujetos de atestaci\u00f3n. La verificaci\u00f3n de estas estructuras de datos es costosa en t\u00e9rminos computacionales. Esto se puede utilizar para consumir recursos excesivos de CPU, lo que lleva a un ataque de denegaci\u00f3n de servicio. El modelo de seguridad de TUF etiqueta este tipo de vulnerabilidad como un \"ataque de datos sin fin\", y puede llevar a que la verificaci\u00f3n no se complete y se interrumpan los servicios que dependen de sigstore-go para la verificaci\u00f3n. Esta vulnerabilidad se soluciona con sigstore-go 0.6.1, que agrega l\u00edmites estrictos a la cantidad de estructuras de datos verificables que se pueden procesar en un paquete. La verificaci\u00f3n fallar\u00e1 si un paquete tiene datos que exceden estos l\u00edmites. Los l\u00edmites son 32 entradas de registro de transparencia firmadas, 32 marcas de tiempo RFC 3161, 1024 sujetos de atestaci\u00f3n y 32 res\u00famenes por sujeto de atestaci\u00f3n. Estos l\u00edmites est\u00e1n pensados para ser lo suficientemente altos como para dar cabida a la gran mayor\u00eda de casos de uso, al tiempo que se evita la verificaci\u00f3n de paquetes creados con fines malintencionados que contienen grandes cantidades de datos verificables. Los usuarios que son vulnerables pero no pueden actualizar r\u00e1pidamente pueden considerar la posibilidad de a\u00f1adir una validaci\u00f3n manual de paquetes para aplicar l\u00edmites similares a los del parche al que se hace referencia antes de llamar a las funciones de verificaci\u00f3n de sigstore-go."
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "nvd@nist.gov",
"type": "Primary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"availabilityImpact": "HIGH",
"baseScore": 7.5,
"baseSeverity": "HIGH"
},
"exploitabilityScore": 3.9,
"impactScore": 3.6
},
{
"source": "security-advisories@github.com",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:L",
"attackVector": "NETWORK",
"attackComplexity": "HIGH",
"privilegesRequired": "NONE",
"userInteraction": "REQUIRED",
"scope": "UNCHANGED",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"availabilityImpact": "LOW",
"baseScore": 3.1,
"baseSeverity": "LOW"
},
"exploitabilityScore": 1.6,
"impactScore": 1.4
}
]
},
"weaknesses": [
{
"source": "nvd@nist.gov",
"type": "Primary",
"description": [
{
"lang": "en",
"value": "CWE-835"
}
]
},
{
"source": "security-advisories@github.com",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-835"
}
]
}
],
"configurations": [
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:a:sigstore:sigstore-go:*:*:*:*:*:*:*:*",
"versionEndExcluding": "0.6.1",
"matchCriteriaId": "1D2A73B2-9BFE-4731-8F6E-07CADD1A1AFC"
}
]
}
]
}
],
"references": [
{
"url": "https://github.com/sigstore/sigstore-go/blob/725e508ed4933e6f5b5206e32af4bbe76f587b54/pkg/verify/signature.go#L183-L193",
"source": "security-advisories@github.com",
"tags": [
"Issue Tracking"
]
},
{
"url": "https://github.com/sigstore/sigstore-go/blob/725e508ed4933e6f5b5206e32af4bbe76f587b54/pkg/verify/tlog.go#L74-L178",
"source": "security-advisories@github.com",
"tags": [
"Issue Tracking"
]
},
{
"url": "https://github.com/sigstore/sigstore-go/blob/725e508ed4933e6f5b5206e32af4bbe76f587b54/pkg/verify/tsa.go#L59-L68",
"source": "security-advisories@github.com",
"tags": [
"Issue Tracking"
]
},
{
"url": "https://github.com/sigstore/sigstore-go/commit/01e70e89e58226286d7977b4dba43b6be472b12c",
"source": "security-advisories@github.com",
"tags": [
"Patch"
]
},
{
"url": "https://github.com/sigstore/sigstore-go/security/advisories/GHSA-cq38-jh5f-37mq",
"source": "security-advisories@github.com",
"tags": [
"Mitigation",
"Vendor Advisory"
]
}
]
}