Sigstore Timestamp Authority — это сервис по выдаче временных меток RFC 3161. Версии 2.0.5 и ниже содержат уязвимость обхода авторизации в функции VerifyTimestampResponse. VerifyTimestampResponse правильно проверяет подпись цепочки сертификатов, но проверки ограничений, специфичные для TSA, в VerifyLeafCert используют первый сертификат, отличный от CA, из пакета сертификатов PKCS#7 вместо конечного сертификата из проверенной цепочки. Злоумышленник может воспользоваться этим, добавив поддельный сертификат в пакет сертификатов, пока сообщение подписано авторизованным ключом, в результате чего библиотека проверяет подпись по одному сертификату, но выполняет проверки авторизации по другому.
Эта уязвимость затрагивает только пользователей пакета timestamp-authority/v2/pkg/verification и не затрагивает саму службу timestamp-authority или sigstore-go. Проблема исправлена в версии 2.0.6.
Показать оригинальное описание (EN)
Sigstore Timestamp Authority is a service for issuing RFC 3161 timestamps. Versions 2.0.5 and below contain an authorization bypass vulnerability in the VerifyTimestampResponse function. VerifyTimestampResponse correctly verifies the certificate chain signature, but the TSA-specific constraint checks in VerifyLeafCert uses the first non-CA certificate from the PKCS#7 certificate bag instead of the leaf certificate from the verified chain. An attacker can exploit this by prepending a forged certificate to the certificate bag while the message is signed with an authorized key, causing the library to validate the signature against one certificate but perform authorization checks against another. This vulnerability only affects users of the timestamp-authority/v2/pkg/verification package and does not affect the timestamp-authority service itself or sigstore-go. The issue has been fixed in version 2.0.6.
Характеристики атаки
Последствия
Строка CVSS v3.1