Безопасная проверка Winter Twig SecurityPolicy: карта разрешённых capability по GHSA-8cfw-pcwh-v63w: runtime inventory, изолированный fixture, измеримый verdict, стоп-правило и минимальный evidence bundle.
Короткий ответ — Winter Twig SecurityPolicy: карта разрешённых capability
Для запроса «проверить, что CMS Twig sandbox разрешает только явно заявленные функции, методы и свойства» нужен не агрессивный тест, а доказательная цепочка из четырёх состояний: runtime подходит под границу, entry point реально включён, безопасный control проходит, граничный fixture останавливается до побочного эффекта. Боль этого материала — запрещённая capability может стать достижимой через неполную SecurityPolicy. Результат оформляется как symbol class / policy decision / callback calls / verdict. Advisory GHSA-8cfw-pcwh-v63w задаёт ориентир «composer:winter/wn-system-module >= 1.2.7, < 1.2.13; first patched 1.2.13», но сам по себе не доказывает состояние конкретной установки.
Что подтвердить в inventory — Winter Twig SecurityPolicy: карта разрешённых capability
Запишите фактически загруженный package winter/wn-system-module, версию и immutable artifact digest. Сопоставьте их с диапазоном «composer:winter/wn-system-module >= 1.2.7, < 1.2.13; first patched 1.2.13» и отдельно подтвердите конфигурацию функции «Winter Twig SecurityPolicy: карта разрешённых capability». Статусы различаются: Not present, Outside range, Candidate и Unknown. Дата образа, зелёный health или запись в lockfile без runtime readback не переводят Candidate в PASS. Карточка отдельно рассматривает functions, filters, methods, properties и magic access. PASS означает default-deny для неизвестной capability и совпадение allowlist до и после обновления; HTML-рендер здесь не используется.
Безопасный fixture — Winter Twig SecurityPolicy: карта разрешённых capability
Используйте только следующий изолированный протокол: Передать policy unit-test набор синтетических symbol descriptors; render и callback заменить spies, которые не исполняют Twig и считают разрешения. Все данные синтетические, объём заранее ограничен, сеть и production-хранилища заменяются spies или in-memory adapters. До запуска сохраните hash fixture, нулевые counters и ожидаемое состояние. После каждой строки меняется одна переменная; роли, версия и конфигурация остаются теми же. Так наблюдение относится к «Winter Twig SecurityPolicy: карта разрешённых capability», а не к случайной разнице окружений.
Наблюдения и контроль — Winter Twig SecurityPolicy: карта разрешённых capability
Control обязан доказать, что harness достигает нужной ветки без нарушения. Boundary-case подтверждает stop до запрещённого действия. Снимайте только поля из «symbol class / policy decision / callback calls / verdict», монотонную длительность и sanitised reason code. Не сохраняйте payload, секреты, адреса, полные пути, пользовательские записи или environment dump. Специальная карта этого материала: Карточка отдельно рассматривает functions, filters, methods, properties и magic access. PASS означает default-deny для неизвестной capability и совпадение allowlist до и после обновления; HTML-рендер здесь не используется.
Как присвоить verdict — Winter Twig SecurityPolicy: карта разрешённых capability
PASS возможен, когда runtime подтверждён и граничная строка останавливается до состояния «запрещённая capability может стать достижимой через неполную SecurityPolicy». FAIL требует той же provenance плюс наблюдаемый запрещённый counter или неверный state transition. UNKNOWN ставится при отсутствии версии, configuration snapshot, control или точки наблюдения. NOT_APPLICABLE допустим только при доказанном отсутствии package/entry point. Номер исправленной версии без повторения fixture не считается runtime proof.
Стоп-правило и восстановление — Winter Twig SecurityPolicy: карта разрешённых capability
Немедленно прекратите проверку, если неизвестный symbol получил allow или spy callback был вызван. Не увеличивайте объём для наглядности и не переносите fixture в production. Восстановите disposable state по исходному hash, освободите test objects и убедитесь, что счётчики сети, процессов, файлов, сессий или записей равны ожидаемым. Если cleanup не доказан, итог остаётся UNKNOWN независимо от основного наблюдения.
Чем материал отличается — Winter Twig SecurityPolicy: карта разрешённых capability
Строит capability inventory вместо запуска шаблонного payload. Не stored XSS и не output encoding: это allowlist sandbox API. Поэтому нельзя создавать соседнюю страницу простой заменой продукта, ОС или устройства. Если существующий URL уже отвечает тем же intent, pain, answer и decision tree, нужен update/merge, а не новый адрес. Здесь самостоятельная практическая ценность — symbol class / policy decision / callback calls / verdict; особый диагностический контекст: Карточка отдельно рассматривает functions, filters, methods, properties и magic access. PASS означает default-deny для неизвестной capability и совпадение allowlist до и после обновления; HTML-рендер здесь не используется.
Пакет для владельца — Winter Twig SecurityPolicy: карта разрешённых capability
Передайте владельцу GHSA GHSA-8cfw-pcwh-v63w, runtime digest, version range «composer:winter/wn-system-module >= 1.2.7, < 1.2.13; first patched 1.2.13», включённый entry point, sanitized config, control/boundary rows, counters, verdict, stop reason и cleanup proof. Источник опубликован 2026-08-20, обновлён 2026-08-20; даты показывают свежесть advisory, но не популярность запроса и не эксплуатацию. После обновления повторите тот же fixture без изменения переменных и сравните state transition, а не только номер версии.
Материал подготовлен редакцией VOne с помощью автоматизированного черновика; версии, даты, границы и ссылки вручную сверены по GitHub Advisory Database и прямой upstream-странице. Текст самостоятельный, не копирует источник и не содержит эксплуатационных шагов.
Источники и проверка
- GitHub Advisory Database — GHSA-8cfw-pcwh-v63w проверено 2026-09-02
- Первичный upstream advisory — winter/wn-system-module проверено 2026-09-02
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.