Как проверить CodeWhale 0.8.64 на передачу parent environment в model context: canary variables, child allowlist и отрицательный scan без настоящих секретов.
Сначала отделите симптом от факта: CodeWhale js_execution sandbox
До 0.8.64 js_execution мог наследовать parent environment и возвращать его значения в model context из-за отсутствующей очистки. Применимость устанавливают по реально загруженной версии и доступности именно этого entry point; совпадение названия продукта, общего класса ошибки или CVE в scanner недостаточно. Зафиксируйте package/image/binary digest и effective configuration. GHSA-h539-c7r8-3xq4 задаёт внешнюю границу исследования, а primary change показывает, что изменил maintainer. Пока provenance или reachability не подтверждены, состояние остаётся UNKNOWN. Advisory не сообщает, что конкретная система была атакована, и материал не воспроизводит опасный input.
Матрица решения: environment map parent key × allowlist status × child visibility × model-output marker
Соберите «environment map parent key × allowlist status × child visibility × model-output marker». Нужные поля: CodeWhale digest, launch path, explicit env allowlist, three fake canary names, child environment count, output serializer и audit redaction. Каждую строку свяжите с измерением, а не предположением: runtime query, immutable hash, test recorder или bounded counter. Desired config и effective behavior держите в разных колонках. Применяйте TRUE, FALSE, UNKNOWN и NOT-APPLICABLE с короткой причиной. Удалите hostname, IP, usernames, tokens, document content, memory dumps и raw request bodies; для воспроизводимости достаточно относительных ids, размеров, типов и итоговых классов.
Два контроля без опасного payload
В disposable process задать только synthetic canaries, вызвать mock JavaScript runtime, который перечисляет имена без значений, и выполнить negative scan serialized response. Перед выполнением запишите SHA-256 fixture, исходные counters, deadline, memory/process ceiling и rollback. Positive control доказывает, что harness достигает нужной функции; negative control должен остановиться на validator, authorization, containment или lifecycle boundary до необратимого эффекта. После каждого случая выполните cleanup и повторно проверьте baseline. Не увеличивайте вход до фактического отказа: достаточно test double, recorder, inert marker либо малого synthetic object.
Что считать PASS для CVE-2026-75915
PASS разрешён только при таком результате: Ни один non-allowlisted canary не попадает в child или response; нужные safe locale/runtime keys доступны; parent process после teardown неизменён. Практическое действие: Обновить CodeWhale до 0.8.64; до этого запускать tool с пустым explicit env и отключить его там, где это невозможно доказать. Если runtime входит в affected range и path доступен, ставят UPDATE-REQUIRED. NOT-REACHABLE относится только к проверенной функции; UNKNOWN сохраняют при неподтверждённом backport или расходящихся hashes. После update повторяют ровно ту же матрицу и один штатный smoke-test. Одновременные изменения network, policy, dependency или data state запрещены: они делают причинность непроверяемой.
Красные линии и передача владельцу
Немедленный stop-rule: Не читать настоящее окружение, не логировать значения и прекратить, если child стартует вне disposable harness или получает непредусмотренный key. Не расширяйте привилегии, глубину, размер, скорость или охват после неожиданного warning, timeout, cross-boundary call или state mutation. Передайте только binary hash, launch policy, canary-name list, child key count, response scan zero и process cleanup, плюс московское время, expected/actual, advisory/primary URLs и владельца rollback. Очистите secrets и персональные данные. Такой пакет подтверждает выбранный инвариант, но не отсутствие прошлой эксплуатации, безопасность всей системы, применимость к другой версии, поисковую популярность, индексацию или позиции.
Материал подготовлен редакцией VOne с помощью автоматизированного черновика. Факты и границы вывода сверены 5 сентября 2026 года по прямой advisory и первичному upstream изменению. Текст написан самостоятельно; опасные действия и реальные пользовательские данные не использовались.
Источники и проверка
- GitHub Advisory GHSA-h539-c7r8-3xq4 проверено 2026-09-05
- Primary fix for CodeWhale js_execution sandbox проверено 2026-09-05
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.