People-first проверка Sigstore Timestamp Authority по ghsa-9c54-x2g4-v92j: применимость, безопасный fixture для границы «bounded Prometheus label vocabulary из route template и normalized method/status», измеримый контракт и stop-rule без production-данных.
Определите применимость Sigstore Timestamp Authority
Создайте карточку применимости для Sigstore Timestamp Authority: installed version, package source, build digest, feature/config reachability и роль вызывающего субъекта. Reviewed Advisory описывает «Sigstore Timestamp Authority has OOM due to unbounded metric label cardinality», опубликована 2026-06-30, обновлена 2026-06-30 и задаёт диапазон «github.com/sigstore/timestamp-authority/v2 <= 2.0.6; first patched 2.1.0 | github.com/sigstore/timestamp-authority <= 1.2.9; patched version not listed». Эти данные не доказывают состояние конкретного развёртывания. Проверьте vendor backport и commit provenance; при неизвестной сборке оставьте applicability=unknown. Фактическая граница статьи — «bounded Prometheus label vocabulary из route template и normalized method/status», а не общее обсуждение severity или продукта.
Опишите доверительную границу
Сформулируйте отдельную пользовательскую боль: каждый уникальный 404 path или нестандартный method создаёт постоянную time series и накапливает память. Запишите доверенный субъект, объект, управляющую policy и первый потенциальный побочный эффект. Заранее задайте защитный контракт: неизвестные пути сворачиваются в один route label, method нормализован, series count остаётся в заданном бюджете. Его нельзя подменять отсутствием исключения или HTTP 200: важна стадия до чтения, передачи, allocation, mutation или delivery. Рабочий артефакт — request-count / distinct-raw-paths / route-labels / method-labels / series-total / budget. В нём нужны только классы и счётчики; значения credentials, содержимое файлов, IP, account identifiers и персональные данные исключаются.
Соберите обратимый стенд
Постройте минимальный обратимый стенд: offline middleware с сотней synthetic random paths, known route и allowlisted methods; Prometheus test registry. Затем обработать cases и посчитать series count без load test или внешнего HTTP. Сеть должна быть отключена или замкнута на loopback, filesystem — на disposable temp, state — на in-memory либо transaction rollback. Добавьте эталонный путь и отрицательный boundary-case, дайте каждому bounded timeout и одинаковую конфигурацию. До опыта запишите digest входа; после опыта зафиксируйте result class, side-effect counters и cleanup proof. Не увеличивайте нагрузку и не пытайтесь воспроизвести вредный эффект на чужой системе.
Измерьте контракт до побочного эффекта
Сведите observed в матрицу «request-count / distinct-raw-paths / route-labels / method-labels / series-total / budget» и сравните с критерием «неизвестные пути сворачиваются в один route label, method нормализован, series count остаётся в заданном бюджете». Для каждого ряда отметьте decision stage, mutation/read/send counter, final state digest и отклонение от expected. Normal-control обязан пройти тот же код, иначе отрицательный исход ничего не говорит о защите. Повторите лишь малый детерминированный набор; расхождение порядка считается отдельным race/cache сигналом. Pass ставится только когда запрет срабатывает раньше чувствительного действия, а разрешённый сценарий сохраняет documented behavior.
Свяжите patch с узким механизмом
Проверьте исправление по механизму, а не по номеру версии: upstream patch должен напрямую обеспечивать «bounded Prometheus label vocabulary из route template и normalized method/status». Сопоставьте pre/post build на том же лабораторный набор и сравните «request-count / distinct-raw-paths / route-labels / method-labels / series-total / budget». Для диапазона «github.com/sigstore/timestamp-authority/v2 <= 2.0.6; first patched 2.1.0 | github.com/sigstore/timestamp-authority <= 1.2.9; patched version not listed» отдельно запишите vendor patch provenance и release artifact digest. Canary допускается только в лаборатории; production rollout требует отдельного change contract, backup и rollback. Не объявляйте систему безопасной целиком: этот опыт подтверждает один узкий invariant и не говорит об эксплуатации, ущербе, спросе, индексации или позиции страницы.
Остановитесь и подготовьте поддержку
Примените жёсткий stop-rule: остановиться при реальной нагрузке, общем metrics registry или росте лабораторный набор за малый лимит. Красные флаги также включают внешний адрес, реальный credential, privilege prompt, необратимую запись, рост ресурсов, данные не из лабораторный набор, отсутствие cleanup и изменившийся объект вне test root. При первом флаге примените stop-rule и оставьте статус blocked. Для поддержки направьте ghsa-9c54-x2g4-v92j, Sigstore Timestamp Authority, «github.com/sigstore/timestamp-authority/v2 <= 2.0.6; first patched 2.1.0 | github.com/sigstore/timestamp-authority <= 1.2.9; patched version not listed», reachability evidence, sanitized matrix, эталонный путь, stop reason и две прямые ссылки. Не публикуйте payload и чужие логи; неизвестное обозначьте unknown, а не выдуманным фактом.
Используйте минимальное дерево решения
Минимальное дерево решения для Sigstore Timestamp Authority: если версия вне доказанного affected range и patch provenance подтверждён — not-applicable; если ветвь недостижима по документированной конфигурации — not-reachable; если лабораторный набор даёт «неизвестные пути сворачиваются в один route label, method нормализован, series count остаётся в заданном бюджете» на candidate build — ready-for-reviewed-update; если наблюдается «каждый уникальный 404 path или нестандартный method создаёт постоянную time series и накапливает память» — fail и эскалация владельцу. Во всех остальных случаях статус unknown. К карточке приложите «request-count / distinct-raw-paths / route-labels / method-labels / series-total / budget» и criterion «остановиться при реальной нагрузке, общем metrics registry или росте лабораторный набор за малый лимит». Такое дерево не превращает один advisory в универсальную рекомендацию и сохраняет people-first приоритет: минимальное воздействие, ясная остановка и проверяемый ответ.
Материал подготовлен редакцией VOne с помощью ИИ; даты, диапазоны, прямые ссылки, безопасный опыт, privacy-ограничения и отсутствие рекламных обещаний затем перепроверены по первичным источникам.
Источники и проверка
- GitHub Reviewed Advisory ghsa-9c54-x2g4-v92j проверено 2026-08-31
- Upstream-репозиторий Sigstore Timestamp Authority проверено 2026-08-31
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.