Защитная диагностика Graylog Fortigate syslog parser по GHSA-gqr6-r77p-c2pj: применимость, обратимый локальный control, измеримый verdict, критерий остановки и минимальный пакет данных для владельца системы.
Короткий ответ — Graylog Fortigate: сохранение исходных полей syslog
Задача страницы — проверить, что key-value разбор Fortigate не перезаписывает и не удаляет защищённые поля исходного сообщения. Сначала установите фактически загруженный Graylog Fortigate syslog parser, package lock или image digest и границу «org.graylog2:graylog2-server: introduced 0, fixed 6.3.12; org.graylog2:graylog2-server: introduced 7.0.0, fixed 7.0.7; org.graylog2:graylog2-server: introduced 7.1.0, fixed 7.1.2». Advisory GHSA-gqr6-r77p-c2pj — сигнал для inventory, а не доказательство состояния вашей установки. Практический порядок: provenance, один benign control, один boundary-case, измеримый verdict и cleanup. Боль конкретна: коллизия ключей при разборе способна исказить журнал или скрыть ошибку обработки. Итогом должен стать матрица raw key / parsed key / protected owner / collision action / indexing counter, а не субъективное утверждение «вроде безопасно».
Граница решения в Graylog Fortigate syslog parser
Разделите путь данных на переходы: raw syslog envelope → key-value parser → protected fields → indexing decision. На каждом переходе запишите владельца значения, тип, допустимое состояние и запрещённый side effect. Проверяемая инварианта: envelope-поля сохраняют provenance, конфликт получает отдельный reason code, а discard наблюдаем и учитывается. NOT_APPLICABLE допустим только если component/function доказанно отсутствует; неизвестные digest, версия или effective config дают UNKNOWN. Номер исправленного релиза без runtime readback не является PASS, а отсутствие инцидента не доказывает соблюдение границы.
Безопасный локальный стенд для Graylog Fortigate syslog parser
Control выполняется только в disposable state: разобрать две синтетические строки: корректную и с коллизией имени защищённого поля; индекс заменить recorder. Сеть, shell, production database, реальные bucket, broker, SMTP, файловые пути, токены и пользовательские данные замените spies, stubs или in-memory объектами. До запуска сохраните baseline hash, нулевые counters и лимит времени/памяти. Входы должны быть короткими синтетическими маркерами; цель — проверить ветвление и ownership, а не воспроизводить эксплуатацию или усиливать воздействие.
Control, boundary-case и наблюдения
Benign control подтверждает достижимость ожидаемой ветки. Boundary-case меняет ровно один признак, связанный с болью «коллизия ключей при разборе способна исказить журнал или скрыть ошибку обработки», и не выходит за минимальный тестовый масштаб. Сохраните матрица raw key / parsed key / protected owner / collision action / indexing counter, reason code, duration и counters до/после. Ключевое правило остаётся неизменным: envelope-поля сохраняют provenance, конфликт получает отдельный reason code, а discard наблюдаем и учитывается. Если control не достигает целевой функции или точка наблюдения двусмысленна, verdict — UNKNOWN; добавлять более сильный вход ради красивого результата нельзя.
Как вынести PASS, FAIL и UNKNOWN
PASS требует подтверждённых provenance/version, успешного benign control, соблюдения инварианты «envelope-поля сохраняют provenance, конфликт получает отдельный reason code, а discard наблюдаем и учитывается», нулевых запрещённых side effects и доказанного cleanup. FAIL — тот же provenance плюс наблюдаемое нарушение: защищённое поле изменилось или сообщение исчезло без failure record. UNKNOWN означает, что нет digest, effective config, control, recorder либо возможности восстановить fixture. Запишите решение в матрица raw key / parsed key / protected owner / collision action / indexing counter; один HTTP status, отсутствие exception или факт установки новой версии по отдельности недостаточны.
Красная линия и восстановление
Немедленно прекратите проверку, если защищённое поле изменилось или сообщение исчезло без failure record. Не увеличивайте объём, глубину, число повторов и не переносите эксперимент на чужую систему. Откатите fixture к baseline, убедитесь, что counters сети, файлов, процессов, очередей и persistent writes вернулись в ожидаемое состояние, затем один раз повторите benign control. Любой неожиданный side effect блокирует PASS даже тогда, когда основной parser или policy вернул правильный код.
Почему это отдельный поисковый intent
Ценность — трассировка происхождения полей журнала, а не общий совет обновить syslog-сервер. Поэтому статья отвечает на самостоятельный запрос «проверить, что key-value разбор Fortigate не перезаписывает и не удаляет защищённые поля исходного сообщения» и не создаётся как замена бренда, ОС или устройства. Её deliverable — матрица raw key / parsed key / protected owner / collision action / indexing counter, а измеримый stop-rule — защищённое поле изменилось или сообщение исчезло без failure record. Если существующий URL уже покрывает ту же боль, ожидаемый ответ и дерево решения, нужен отдельный update/merge-контракт, а не новая соседняя страница.
Минимальный пакет для владельца системы
Передайте владельцу GHSA-gqr6-r77p-c2pj, component digest, effective version/config, границу «org.graylog2:graylog2-server: introduced 0, fixed 6.3.12; org.graylog2:graylog2-server: introduced 7.0.0, fixed 7.0.7; org.graylog2:graylog2-server: introduced 7.1.0, fixed 7.1.2», описание перехода «raw syslog envelope → key-value parser → protected fields → indexing decision», control/boundary rows, counters, verdict, stop reason и cleanup proof. Advisory опубликована 2026-08-28 и обновлена 2026-08-28; эти даты подтверждают свежесть источника, но не популярность запроса, не факт эксплуатации и не применимость к конкретному deployment. После обновления повторите тот же fixture без изменения масштаба и сравните матрица raw key / parsed key / protected owner / collision action / indexing counter.
Материал подготовлен редакцией VOne с помощью автоматизированного черновика; даты, версии и ссылки сверены по GitHub Advisory Database и первичному upstream-материалу. Текст самостоятельный, не копирует источники, не содержит эксплуатационных последовательностей и предназначен для безопасной локальной проверки.
Источники и проверка
- GitHub Advisory Database — GHSA-gqr6-r77p-c2pj проверено 2026-09-02
- Первичный upstream-материал — Graylog Fortigate syslog parser проверено 2026-09-02
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.