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

Spring Boot Artemis: проверка непредсказуемого temp directory

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

Защитная инструкция по Spring Boot Artemis и ghsa-ggg2-9786-hwc8: проверить применимость, выполнить обратимый стендовый сценарий, распознать безопасный исход и остановиться без опасного payload.

Паспорт применимости: Spring Boot Artemis

Сначала исключите смешанные версии и старые процессы. Для Spring Boot Artemis Reviewed advisory ghsa-ggg2-9786-hwc8 подтверждает отдельную проблему: auto-configuration embedded Artemis могла использовать фиксированный temp path, доступный для pre-create или symlink локальным субъектом. Пакетная граница записи: maven:org.springframework.boot:spring-boot-autoconfigure >= 4.0.0, <= 4.0.6; первая исправленная 4.0.7; maven:org.springframework.boot:spring-boot-autoconfigure >= 3.5.0, <= 3.5.14; первая исправленная 3.5.15; maven:org.springframework.boot:spring-boot-autoconfigure >= 3.4.0, <= 3.4.16; исправленная версия в Reviewed record не указана; maven:org.springframework.boot:spring-boot-autoconfigure >= 3.3.0, <= 3.3.19; исправленная версия в Reviewed record не указана; maven:org.springframework.boot:spring-boot-autoconfigure >= 2.7.0, <= 2.7.33; исправленная версия в Reviewed record не указана. SBOM не завершает проверку: нужны runtime version, digest, команде запуска и build provenance. Отсутствие artifact либо inactive path означает not-applicable с доказательством; при неизвестном происхождении — unknown. Severity medium задаёт приоритет разбора, но не доказывает эксплуатацию, ущерб или состояние конкретной установки. GitHub фиксирует публикацию 2026-06-11 и обновление 2026-08-21; эти даты не заменяют локальный inventory.

Наблюдения до изменения Spring Boot Artemis

До update или containment сохраните набор наблюдений, специфичный для этой карточки: версия spring-boot-autoconfigure, embedded mode, configured data dir, owner/mode, canonical target и startup log. Происхождение, время и владелец сопровождают каждое значение. Четыре допустимые отметки — expected, observed, unknown, not-applicable; пустота запрещает зелёный вывод. Отдельно укажите входной субъект, policy/parser, защищаемый объект и вид контролируемого отказа. Это отделяет «auto-configuration embedded Artemis могла использовать фиксированный temp path, доступный для pre-create или symlink локальным субъектом» от обычной ошибки конфигурации, stale process, proxy/cache или прежнего инцидента. Повторите тот же сбор baseline после действия без новых инструментов. Редактируйте tokens, cookies, реальные адреса, персональные данные и закрытые пути; полные дампы в редакционный пакет не входят. Если health был красным заранее, сначала закройте этот инцидент.

Стендовый сценарий без опасного входа

В disposable среде выполняют только это: запустить isolated app дважды в разных temp roots с заранее созданным обычным canary directory без symlink. Опыт содержит ровно контроль A, один B и повтор A2. До запуска задают synthetic input, disposable scope, time и resource budget. Ожидаемый исход записывают до запуска: каждый запуск выбирает безопасный owner-controlled path либо явный configured path, canary не используется и permissions строгие. Между A, B и A2 не меняйте одновременно dependency, роли, network и storage. Любая потеря health, timeout, пустой ответ или ручное изменение отменяют успех. Не копируйте рабочий exploit из источника, не направляйте запрос к чужой системе и не используйте production данные. Если A2 отличается от A, вернитесь к baseline.

Как классифицировать результат

Таблица решения для Spring Boot Artemis содержит version boundary, runtime digest, active-path evidence, исходы A/B/A2, health и cleanup. Статус passed-bounded-check допустим только когда каждый запуск выбирает безопасный owner-controlled path либо явный configured path, canary не используется и permissions строгие. Affected runtime получает update-required; непроверенный новый — patched-unverified; без evidence остаётся unknown; провал — failed-safe-check. Если Reviewed record не называет first patched version, не придумывайте её: используйте vendor release или containment и оставляйте patch boundary unknown. Зелёный fixture относится только к этому deployment и времени. Он не является общей гарантией безопасности Spring Boot Artemis, не исключает соседние дефекты и не доказывает качество всей установки.

Остановка, возврат и передача владельцу

Условие немедленной остановки: требуется системный temp, настоящий symlink к данным, production broker или запуск под общим privileged user. После stop не увеличивают нагрузку, privileges, объём или время. Заранее подготовленный возврат: остановить brokers, удалить roots, вернуть property snapshot и проверить отсутствие lock files. Очистка доказана повтором A, отсутствием внешнего diff и закрытием всех временных объектов. Владелец получает только такой минимальный пакет: artifact digest, effective paths, owner/mode, startup decisions и cleanup. Добавьте время, expected/actual, две прямые ссылки и ответственного за очистку. Не включайте секреты, активный payload, личные обстоятельства и инфраструктуру третьих лиц. Отчёт помогает выбрать update либо containment, но не обещает поисковый результат, спрос или уже выполненный тест.

Материал подготовлен редакцией VOne с помощью ИИ по открытым официальным, первичным и исследовательским источникам; факты, даты, версии и ссылки перепроверены. Реальные пользовательские данные, активные опасные payload и вымышленные результаты тестов не использовались.

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

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

Ответы

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

Ваш ответ

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

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

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