Добавить в корзинуПозвонить
Найти в Дзене
Сергей Озеранский

httptap получил OpenSSF Best Practices Silver

Это не просто галочка. OpenSSF (при Linux Foundation) это те ребята, что следят за безопасностью на уровне всего opensource. Silver - средний из трех тиров (passing -> silver -> gold), и чтобы его получить пришлось закрыть 43 критерия поверх 67 passing-уровня. Gold solo-мейнтейнером структурно не берется, так как нужны 2+ активных reviewer'а. - SBOM на каждом релизе (CycloneDX + SPDX), вы видите все зависимости прямо в GitHub Release
- SLSA v1.0 build provenance через Sigstore keyless signing, можно проверить артефакт: gh attestation verify httptap-*.whl --repo ozeranskii/httptap
- Отсутствует долгоживущий PyPI-токен - OIDC Trusted Publishing, подпись приходит из GitHub, а не лежит в секретах
- Все actions в workflows запиннены по SHA (zizmor pedantic в CI блокирует любой unpinned action)
- Published threat model (https://docs.httptap.dev/security/assurance-case/) - STRIDE-разбор, trust boundaries, 17 countered CWE, residual risks
- GOVERNANCE.md, ROADMAP.md, SECURITY.md - описание кто
Оглавление

Это не просто галочка. OpenSSF (при Linux Foundation) это те ребята, что следят за безопасностью на уровне всего opensource. Silver - средний из трех тиров (passing -> silver -> gold), и чтобы его получить пришлось закрыть 43 критерия поверх 67 passing-уровня. Gold solo-мейнтейнером структурно не берется, так как нужны 2+ активных reviewer'а.

Что конкретно сделано

- SBOM на каждом релизе (CycloneDX + SPDX), вы видите все зависимости прямо в GitHub Release
- SLSA v1.0 build provenance через Sigstore keyless signing, можно проверить артефакт: gh attestation verify httptap-*.whl --repo ozeranskii/httptap
- Отсутствует долгоживущий PyPI-токен - OIDC Trusted Publishing, подпись приходит из GitHub, а не лежит в секретах
- Все actions в workflows запиннены по SHA (zizmor pedantic в CI блокирует любой unpinned action)
- Published threat model (https://docs.httptap.dev/security/assurance-case/) - STRIDE-разбор, trust boundaries, 17 countered CWE, residual risks
- GOVERNANCE.md, ROADMAP.md, SECURITY.md - описание кто мейнтейнит, как принимаются решения, continuity plan, план реакции на уязвимости (+ VEX-документ прикладывается к релизам)

Зачем это вам

Если вы подтаскиваете httptap в корпоративный CI или docker-образ, то комплаенс-вопросы снимаются разом:
- CRA-ready (EU Cyber Resilience Act), NIST SSDF-совместимо
- OpenSSF Scorecard: ~7.6/10 (структурно выше без соавтора уже не поднять)
- Попутно получен OpenSSF Baseline-3 - еще один фреймворк, более регуляторный

Пройденные уровни

- Passing (67 критериев) → https://www.bestpractices.dev/en/projects/12474/passing
- Silver (текущий уровень) → https://www.bestpractices.dev/en/projects/12474/silver
- Scorecard → https://scorecard.dev/viewer/?uri=github.com/ozeranskii/httptap
- Assurance case → https://docs.httptap.dev/security/assurance-case/

Мне было интересно пройти этот путь, так как я кое-чему научился. А еще подтвердил, что в целом проекте многие пункты уже закрывались автоматически, так как бОльшая часть была уже сделана ранее, на этапе разработки и проектирования. То есть сам проект уже писался в парадигме лучших DevSecOps практик.

Я думаю, что даже пройтись если по требованиям, а потом провевьювить свои проекты - уже хорошо, даже не ради ачивки, а ради вашей же безопасности и безопасной разработки.

Больше постов у меня в Telegram-канале:
https://t.me/sergeiozeranskii или через поиск в Telegram по запросу «Сергей Озеранский».