Защитная диагностика Nx remote cache: containment archive entries по GHSA-vp3h-ghgh-jr7g: runtime inventory, bounded fixture, измеримый verdict, красная линия и evidence bundle без production-данных.
Решение в двух шагах — Nx remote cache: containment archive entries
Сначала подтвердите, что runtime действительно использует nx в диапазоне «npm:nx >= 20.8.0, < 22.7.7; first patched 22.7.7 | npm:@nx/s3-cache <= 5.0.7 | npm:@nx/gcs-cache <= 5.0.7 | npm:@nx/azure-cache <= 5.0.7 | npm:@nx/shared-fs-cache <= 5.0.7 | npm:@nx/powerpack-s3-cache <= 5.0.7 | npm:@nx/powerpack-gcs-cache <= 5.0.7 | npm:@nx/powerpack-azure-cache <= 5.0.7 | npm:@nx/powerpack-shared-fs-cache <= 5.0.7 | npm:nx >= 23.0.0, < 23.0.2; first patched 23.0.2» и что функция «Nx remote cache: containment archive entries» включена. Затем выполните только bounded fixture: Extractor writer заменить spy; использовать synthetic entry names и temp root, содержимое один байт. Боль, которую проверяет эта страница: archive entry может разрешиться за пределами cache destination. Выходной артефакт — entry name / normalized target / root containment / write calls / verdict. GHSA GHSA-vp3h-ghgh-jr7g не заменяет inventory и не доказывает уязвимость конкретной системы.
Карта границы — Nx remote cache: containment archive entries
Нарисуйте последовательность Source → Normalize → Authorize/Validate → Side effect. Для «Nx remote cache: containment archive entries» особая карта такова: Карточка проверяет slash/backslash, absolute marker, dot segments и existing symlink parent. Решение выполняется для каждой entry непосредственно перед create. На каждой стрелке укажите тип данных, владельца решения и измеримый counter. Если две стадии видят разные представления одной строки или объекта, итог UNKNOWN до устранения неоднозначности.
Подготовка без production-данных — Nx remote cache: containment archive entries
Создайте temp directory, in-memory graph/cache/store либо pure adapter, соответствующий протоколу: Extractor writer заменить spy; использовать synthetic entry names и temp root, содержимое один байт. Используются только короткие canary labels; IP, токены, customer records, реальные пути и environment values запрещены. Network, shell, database, filesystem и session issuance заменяются spies. Зафиксируйте hash fixture и нулевые counters до control.
Control и boundary-case — Nx remote cache: containment archive entries
Control подтверждает достижимость ветки на разрешённом входе. Boundary-case меняет ровно один параметр и должен остановиться до состояния «archive entry может разрешиться за пределами cache destination». Запишите entry name / normalized target / root containment / write calls / verdict, reason code и monotonic duration. Карточка проверяет slash/backslash, absolute marker, dot segments и existing symlink parent. Решение выполняется для каждой entry непосредственно перед create. Не повышайте размер/глубину после первого превышения, не используйте эксплуатационный payload и не сравнивайте разные ОС как доказательство исправления.
Таблица verdict — Nx remote cache: containment archive entries
PASS: применимый runtime подтверждён, control прошёл, boundary остановился до side effect, cleanup доказан. FAIL: та же provenance и наблюдаемое запрещённое состояние. UNKNOWN: отсутствуют версия, configuration snapshot, control, counter или cleanup. NOT_APPLICABLE: package либо entry point доказанно отсутствует. Версия вне диапазона без runtime readback остаётся только inventory clue.
Красная линия — Nx remote cache: containment archive entries
Стоп-условие: write target вне root, absolute path или symlink parent не отклонён. После остановки не повторяйте тест с большим вводом. Верните disposable state к hash, обнулите spies, освободите buffers/objects и выполните один benign control. Несовпадение state после cleanup блокирует PASS и должно войти в handoff как отдельный дефект harness или компонента.
Самостоятельная польза — Nx remote cache: containment archive entries
Связывает archive name и canonical destination до записи. Не worktree symlink: отдельный remote-cache extraction lifecycle. Практический результат не сводится к названию CVE: читатель получает entry name / normalized target / root containment / write calls / verdict. Карточка проверяет slash/backslash, absolute marker, dot segments и existing symlink parent. Решение выполняется для каждой entry непосредственно перед create. Механическая замена framework, устройства или платформы не создаёт новый intent; совпадающая старая страница становится update/merge-кандидатом.
Минимальный handoff — Nx remote cache: containment archive entries
Передайте GHSA GHSA-vp3h-ghgh-jr7g, runtime digest, диапазон «npm:nx >= 20.8.0, < 22.7.7; first patched 22.7.7 | npm:@nx/s3-cache <= 5.0.7 | npm:@nx/gcs-cache <= 5.0.7 | npm:@nx/azure-cache <= 5.0.7 | npm:@nx/shared-fs-cache <= 5.0.7 | npm:@nx/powerpack-s3-cache <= 5.0.7 | npm:@nx/powerpack-gcs-cache <= 5.0.7 | npm:@nx/powerpack-azure-cache <= 5.0.7 | npm:@nx/powerpack-shared-fs-cache <= 5.0.7 | npm:nx >= 23.0.0, < 23.0.2; first patched 23.0.2», entry point, sanitized config, control/boundary rows, counters, verdict, stop reason и cleanup proof. Источник опубликован 2026-08-06, обновлён 2026-08-06; это дата advisory, а не показатель спроса или эксплуатации. После remediation повторите тот же fixture и сравните границу/side-effect counters.
Материал подготовлен редакцией VOne с помощью автоматизированного черновика; версии, даты, границы и ссылки вручную сверены по GitHub Advisory Database и прямой upstream-странице. Текст самостоятельный, не копирует источник и не содержит эксплуатационных шагов.
Источники и проверка
- GitHub Advisory Database — GHSA-vp3h-ghgh-jr7g проверено 2026-09-02
- Первичный upstream — nx проверено 2026-09-02
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.