Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
nginx-cve-fix — 源构建的 nginx 1.25.5 容器,包含回溯移植的 CVE-2026-42945 修复、OpenSSL 版本升级、完整的溯源链和 VEX 证明。 | Kitploit
Инструменты/GitHubGitHub/barappteam/nginx-cve-fix
Сканеры уязвимостейБезопасность контейнеровАнализ уязвимостейАудит конфигурацииDevSecOpsБезопасность Цепочки Поставок
GitHubbarappteam/nginx-cve-fix

nginx-cve-fix

源构建的 nginx 1.25.5 容器,包含回溯移植的 CVE-2026-42945 修复、OpenSSL 版本升级、完整的溯源链和 VEX 证明。

Репозиторий
224 месяцев назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

Исправление CVE Nginx - Drop-in сборка из исходников для nginx:1.25-bookworm

Образ контейнера nginx 1.25.5, собранный из исходников, устраняет две CVE, присутствующие в официальном образе nginx:1.25-bookworm, сохраняя поведение upstream во время выполнения.

CVEКомпонентСерьёзностьМетодМодель проверки
CVE-2024-6119OpenSSL / libssl3ВысокийОбновление версии зависимостиПроверяемо сканером: libssl3 3.0.20 видна в базе данных dpkg
CVE-2026-42945nginx ngx_http_rewrite_moduleКритическийПеренесённый патч исходного кодаПроверяемо по происхождению: вывод патча + регрессионное тестирование + аттестация сборки + VEX

Они представляют две различные модели устранения:

  1. Обновление версии (CVE-2024-6119) — исправленная версия библиотеки напрямую видна сканерам через базу данных dpkg. Дополнительная аттестация не требуется.
  2. Перенос патча из исходников (CVE-2026-42945) — версия пакета остаётся 1.25.5, поэтому сканеры не могут отличить исправленный бинарный файл от неисправленного. Устранение демонстрируется через происхождение исходного кода, проверку во время сборки и регрессионное тестирование. VEX предоставляет сигнал на уровне сканера.

Статус соответствия

Аргументы конфигурации nginx -V этого образа совпадают с аргументами nginx:1.25-bookworm (сравниваются посимвольно после нормализации пути сборки -ffile-prefix-map; проверено в test/compat.py::test_nginx_version). Набор тестов (make test) проверяет 89 утверждений, охватывающих метаданные образа, динамические модули, структуру файловой системы, поведение точки входа, упаковку dpkg и обработку HTTP-запросов, по сравнению с образом upstream.

Известные отличия от upstream (не проверены как идентичные):

  • Строка built with OpenSSL X.X.X в nginx -V отражает версию libssl-dev сборщика, которая может отличаться от версии OpenSSL во время компиляции upstream.
  • Содержимое бинарных файлов не идентично побайтово (различная среда компиляции, разные временные метки вызова инструментария).
  • Набор пакетов образа отличается — база debian:bookworm-slim вместо унаследованного дерева пакетов официального образа.
  • Версия libssl3 во время выполнения — это то, что в данный момент предоставляет bookworm (на момент написания 3.0.20), а не фиксированная версия в образе upstream.

Быстрый старт```bash

Build everything (builder → .deb → final image)

make image

Run automated compatibility tests

make test

Run CVE-2026-42945 regression test

make test-cve

Verify patch provenance (re-derives from upstream tarballs)

make verify-patch

Scan and demonstrate VEX

make scan

Одна команда для сборки, тестирования и сканирования:```bash
make all

Структура репозитория```

build/ Dockerfile.build Builder image (debian:bookworm-slim + compilation deps) build.sh Fetch → verify → patch → compile → package nginx generate-vex.sh Generate OpenVEX document for backported CVE verify-patch.sh Re-derive patch from upstream tarballs (audit tool) patches/ CVE-2026-42945.patch Backported one-line fix from nginx 1.30.1 CVE-2026-42945.provenance.json Machine-readable patch provenance and derivation metadata

test/ compat.py 89-assertion compatibility test suite (runs against live upstream) test_cve_2026_42945.py CVE-specific regression test (exercises vulnerable code path)

artifacts/ patch-attestation.json Build-time patch attestation (tracked) nginx_*.deb Compiled package (gitignored - rebuilt via make build-source) nginx Compiled binary (gitignored) Containerfile Final runtime image definition Makefile Orchestrates build → test → scan pipeline vex.json Generated OpenVEX v0.2.0 document baseline-trivy.txt Point-in-time Trivy scan of nginx:1.25-bookworm baseline-grype.txt Point-in-time Grype scan of nginx:1.25-bookworm fixed-trivy.txt Trivy scan of the fixed image fixed-grype.txt Grype scan of the fixed image (without VEX) fixed-grype-vex.txt Grype scan of the fixed image (with VEX applied)

## Сборка

### Архитектура```
debian:bookworm-slim (builder)
  └─ build.sh
       ├─ curl nginx-1.25.5.tar.gz (SHA256-verified)
       ├─ curl njs-0.8.4 from github.com/nginx/njs
       ├─ patch -p1 < CVE-2026-42945.patch
       ├─ ./configure (flags identical to upstream nginx -V)
       ├─ make: release binary, debug binary, 4 dynamic module families (×2 release/debug)
       ├─ make: NJS modules (×2 release/debug) + njs CLI binary
       └─ dpkg-deb → nginx_1.25.5-1~bookworm+echo1_<arch>.deb

debian:bookworm-slim (runtime)
  ├─ apt-get install runtime deps (libssl3 ≥ 3.0.14 enforced)
  ├─ dpkg -i nginx_*.deb
  └─ COPY --from=upstream /docker-entrypoint.sh + /docker-entrypoint.d/

Контейнерный файл НЕ копирует /etc/nginx из вышестоящего образа. Все конфигурационные файлы поставляются внутри .deb-пакета и отслеживаются механизмом conffiles dpkg. Это необходимо для скрипта точки входа 10-listen-on-ipv6-by-default.sh, который использует dpkg-query для проверки, был ли default.conf изменён пользователем.

Гарантии целостности

  • Исходные архивы: все исходные архивы (nginx, NJS) проверяются по SHA256 с жестко заданными хешами перед распаковкой. Сборка прерывается при несовпадении.
  • Сборка из исходников: ./configure && make внутри чистого контейнера Debian. Никаких бинарников из вышестоящих образов, ни apt install nginx.
  • Отсутствие сетевого доступа во время компиляции: зависимости устанавливаются в слое образа сборщика Docker; build.sh загружает только закреплённые исходные архивы.

Воспроизводимость

Сборка в основном воспроизводима, но не герметична:

  • Версия исходного кода nginx и SHA256 закреплены и проверяются перед распаковкой.
  • Версия NJS и SHA256 закреплены и проверяются перед распаковкой.
  • Зависимости сборщика перечислены в Dockerfile.build, но не закреплены по версиям.
  • Пакеты среды выполнения Debian разрешаются из живых репозиториев bookworm во время сборки, поэтому минорные версии могут отличаться между сборками.

Для улучшения воспроизводимости закрепите дайджест базового образа:```bash docker pull debian:bookworm-slim docker inspect debian:bookworm-slim --format='{{index .RepoDigests 0}}'

Then use: FROM debian:bookworm-slim@sha256:

---

## Сведения об устранении CVE

### CVE-2024-6119 — Обновление версии OpenSSL

| Поле                 | Значение                                             |
| -------------------- | ---------------------------------------------------- |
| **Компонент**        | OpenSSL / libssl3                                    |
| **Серьёзность**      | Высокая (CVSS 7.5)                                   |
| **Тип**              | Отказ в обслуживании через проверку имён X.509       |
| **Базовая версия**   | 3.0.11-1~deb12u2                                     |
| **Исправленная версия** | 3.0.14-1~deb12u2 (или новее)                         |
| **Наша версия**      | 3.0.20-1~deb12u1                                     |
| **NVD**              | https://nvd.nist.gov/vuln/detail/CVE-2024-6119       |
| **Уведомление**      | https://openssl-library.org/news/secadv/20240903.txt |

**Как работает исправление:**
Скачать инструмент