К обсуждениям

defaults-deep: запрет prototype keys при merge

Редакция VOne Технологии

Защитная диагностика defaults-deep: запрет prototype keys при merge по GHSA-mj3g-7xcc-x4vh: runtime inventory, bounded fixture, измеримый verdict, красная линия и evidence bundle без production-данных.

Решение в двух шагах — defaults-deep: запрет prototype keys при merge

Сначала подтвердите, что runtime действительно использует @phun-ky/defaults-deep в диапазоне «npm:@phun-ky/defaults-deep < 2.0.5; first patched 2.0.5» и что функция «defaults-deep: запрет prototype keys при merge» включена. Затем выполните только bounded fixture: Merge pure function получить JSON-like null-prototype objects и reserved key descriptors; global prototypes не мутировать, writes заменить spy. Боль, которую проверяет эта страница: ключи __proto__/constructor/prototype могут выйти из data object в global object behavior. Выходной артефакт — path segments / own-property target / prototype diff / verdict. GHSA GHSA-mj3g-7xcc-x4vh не заменяет inventory и не доказывает уязвимость конкретной системы.

Карта границы — defaults-deep: запрет prototype keys при merge

Нарисуйте последовательность Source → Normalize → Authorize/Validate → Side effect. Для «defaults-deep: запрет prototype keys при merge» особая карта такова: Карточка проверяет ключ на каждом уровне до recursion, использует own properties и не следует inherited values. Cleanup сверяет неизменные descriptors встроенных prototypes. На каждой стрелке укажите тип данных, владельца решения и измеримый counter. Если две стадии видят разные представления одной строки или объекта, итог UNKNOWN до устранения неоднозначности.

Подготовка без production-данных — defaults-deep: запрет prototype keys при merge

Создайте temp directory, in-memory graph/cache/store либо pure adapter, соответствующий протоколу: Merge pure function получить JSON-like null-prototype objects и reserved key descriptors; global prototypes не мутировать, writes заменить spy. Используются только короткие canary labels; IP, токены, customer records, реальные пути и environment values запрещены. Network, shell, database, filesystem и session issuance заменяются spies. Зафиксируйте hash fixture и нулевые counters до control.

Control и boundary-case — defaults-deep: запрет prototype keys при merge

Control подтверждает достижимость ветки на разрешённом входе. Boundary-case меняет ровно один параметр и должен остановиться до состояния «ключи __proto__/constructor/prototype могут выйти из data object в global object behavior». Запишите path segments / own-property target / prototype diff / verdict, reason code и monotonic duration. Карточка проверяет ключ на каждом уровне до recursion, использует own properties и не следует inherited values. Cleanup сверяет неизменные descriptors встроенных prototypes. Не повышайте размер/глубину после первого превышения, не используйте эксплуатационный payload и не сравнивайте разные ОС как доказательство исправления.

Таблица verdict — defaults-deep: запрет prototype keys при merge

PASS: применимый runtime подтверждён, control прошёл, boundary остановился до side effect, cleanup доказан. FAIL: та же provenance и наблюдаемое запрещённое состояние. UNKNOWN: отсутствуют версия, configuration snapshot, control, counter или cleanup. NOT_APPLICABLE: package либо entry point доказанно отсутствует. Версия вне диапазона без runtime readback остаётся только inventory clue.

Красная линия — defaults-deep: запрет prototype keys при merge

Стоп-условие: reserved segment достигает write или baseline prototype descriptors меняются. После остановки не повторяйте тест с большим вводом. Верните disposable state к hash, обнулите spies, освободите buffers/objects и выполните один benign control. Несовпадение state после cleanup блокирует PASS и должно войти в handoff как отдельный дефект harness или компонента.

Самостоятельная польза — defaults-deep: запрет prototype keys при merge

Даёт before/after prototype invariant на null-prototype fixtures. Не Angular attribute policy: отдельная object merge semantics. Практический результат не сводится к названию CVE: читатель получает path segments / own-property target / prototype diff / verdict. Карточка проверяет ключ на каждом уровне до recursion, использует own properties и не следует inherited values. Cleanup сверяет неизменные descriptors встроенных prototypes. Механическая замена framework, устройства или платформы не создаёт новый intent; совпадающая старая страница становится update/merge-кандидатом.

Минимальный handoff — defaults-deep: запрет prototype keys при merge

Передайте GHSA GHSA-mj3g-7xcc-x4vh, runtime digest, диапазон «npm:@phun-ky/defaults-deep < 2.0.5; first patched 2.0.5», entry point, sanitized config, control/boundary rows, counters, verdict, stop reason и cleanup proof. Источник опубликован 2026-07-31, обновлён 2026-07-31; это дата advisory, а не показатель спроса или эксплуатации. После remediation повторите тот же fixture и сравните границу/side-effect counters.

Материал подготовлен редакцией VOne с помощью автоматизированного черновика; версии, даты, границы и ссылки вручную сверены по GitHub Advisory Database и прямой upstream-странице. Текст самостоятельный, не копирует источник и не содержит эксплуатационных шагов.

Источники и проверка

Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.

Ответы

0 опубликовано
Ответов пока нет. Вы можете начать обсуждение.

Ваш ответ

Добавьте свой опыт или уточнение по теме.

Вы публикуете как Аноним Аватар отличает разговоры, но не раскрывает личные данные.

Ответ появится сразу. Не публикуйте личные данные, ключи и приватные ссылки.