Практическая проверка code.vikunja.io/api по GHSA-5pg6-m483-7vrg: диапазон версий, безопасный локальный fixture, критерии PASS/FAIL/Unknown, stop-rule и пакет данных для поддержки без production-секретов.
Что именно проверить в code.vikunja.io/api
Прямой ответ для владельца code.vikunja.io/api: не ищите подтверждение по одному баннеру или общему журналу. Проблема формулируется так: доска назначения может быть разрешена, а task_id в теле запроса принадлежать другому проекту. Сначала установите provenance зависимости, затем воспроизведите только безопасную границу на одноразовом контексте. Короткий ответ: для code.vikunja.io/api сначала подтвердите фактическую зависимость и границу «go/code.vikunja.io/api <= 2.3.0; первая исправленная версия — 2.4.0». Затем выполните только обратимую проверку на синтетических данных: сверить 2.4.0 и провести отрицательный тест с двумя тестовыми проектами и пустыми задачами. Результат считается доказанным лишь при рабочем positive control, явном PASS/FAIL/Unknown и отсутствии побочных изменений. Оценка severity high взята из GHSA-5pg6-m483-7vrg; локальный статус остаётся Unknown до инвентаризации и control-теста.
Попадает ли сборка code.vikunja.io/api в затронутую границу
Соберите минимальный inventory без пользовательских данных: имя code.vikunja.io/api, ecosystem go, resolved version, commit или digest, активные функции и точка вызова. Сверяемая граница — «go/code.vikunja.io/api <= 2.3.0; первая исправленная версия — 2.4.0». Затем нарисуйте путь от контролируемого входа до компонента и укажите место, где должно сработать исправление. Это убирает две частые ошибки: тестирование неиспользуемой библиотеки и объявление защищённым fork с неизвестной историей. Для backport приложите upstream commit или запись поставщика, а не словесное заверение.
Как провести обратимый тест для GHSA-5pg6-m483-7vrg
Сценарий проверки следует из ожидаемого ответа: сверить 2.4.0 и провести отрицательный тест с двумя тестовыми проектами и пустыми задачами. Формат доказательства — матрица прав на доску и задачу плюс проверка неизменности обеих задач. Создайте два пустых тестовых контекста и минимальную роль. Один объект должен принадлежать разрешённой области, второй — соседней запрещённой; имена и идентификаторы только синтетические. Сначала подтвердите positive control внутри разрешённой области, затем выполните единственный отрицательный запрос. Выполните positive control первым, чтобы отличить реальную блокировку от сломанного стенда. Затем один отрицательный fixture и read-back состояния. Не масштабируйте ввод и не перебирайте идентификаторы: для проверки механизма GHSA-5pg6-m483-7vrg достаточно минимального причинного случая.
Какие наблюдения означают PASS, FAIL или Unknown
Не смешивайте факт обновления и факт исправления. Первый подтверждает dependency inventory, второй — fixture с контролями. Запишите роль, область владельца, тип операции, HTTP/handler-результат и неизменность обоих тестовых объектов. Сообщение интерфейса само по себе недостаточно: сверяйте итоговое состояние через разрешённый read-back или журнал аудита без значений секретов. PASS: разрешённая операция работает, а пересечение границы отклоняется до изменения состояния. FAIL: минимальная роль получает данные или создаёт связь вне своей области. UNKNOWN: контроль не сработал, provenance сборки неизвестен или read-back недоступен. Если тест расходится с advisory, сначала проверьте fork, feature flags и выбранную ветку обработки. Не повышайте FAIL до заявления об эксплуатации: он означает лишь нарушение локального тестового invariant. Итоговый пакет должен позволять владельцу повторить проверку на той же сборке.
Что делать после проверки code.vikunja.io/api
Если применимость подтверждена, предпочтительный путь — обновить code.vikunja.io/api до 2.4.0 или поддерживаемой более новой ветки из upstream, сохранив резервную копию и план отката. Повторите тот же fixture после изменения; новый тест не нужен, иначе сравнение потеряет причинность. Не используйте реальные аккаунты, арендаторов, активы, токены или производственные журналы; при необходимости чужих данных передайте проверку владельцу системы. Минимальный пакет для maintainer: GHSA-5pg6-m483-7vrg, package/digest, версионная строка, feature state, обезличенный fixture hash, control, PASS/FAIL/Unknown и ссылка на upstream. Общий WAF, мониторинг или отсутствие инцидентов не считаются эквивалентом исправления.
Какой пакет доказательств сохранить для GHSA-5pg6-m483-7vrg
Evidence-карта этой проверки начинается не с общего списка полей, а с отдельной боли: доска назначения может быть разрешена, а task_id в теле запроса принадлежать другому проекту. Проверяемая гипотеза формулируется как «сверить 2.4.0 и провести отрицательный тест с двумя тестовыми проектами и пустыми задачами». Её практический результат — матрица прав на доску и задачу плюс проверка неизменности обеих задач. Причина не объединять страницу с соседним advisory: Отдельная версия и механизм GHSA-5pg6-m483-7vrg: Vikunja has cross-tenant IDOR in kanban move-task endpoint via unauthorized body task_id. Ответ строится вокруг конкретной границы пакета code.vikunja.io/api и не заменяется общим советом по обновлению. В карточке GHSA-5pg6-m483-7vrg сохраните точное имя go/code.vikunja.io/api, resolved version, digest или commit, состояние функции, границу «<= 2.3.0 → 2.4.0», дату fixture, hash синтетического ввода и отдельные результаты positive и negative control. Поля наблюдения зависят от механизма категории `boundary`: для границы доступа важны владелец и неизменность объекта; для парсера — нормализованный результат и отсутствие выполнения; для resource-case — время, память и доступность следующего запроса. Содержание входа, токены, адреса, полные логи и пользовательские данные не прикладывайте. Итоговая строка должна позволить другому специалисту повторить решение именно для code.vikunja.io/api, не получая доступ к production. Если upstream summary, локальная сборка и результат fixture расходятся, запишите расхождение дословно как Unknown и передайте его maintainer; не заменяйте отсутствующее доказательство предположением о том, что обновление «скорее всего» достаточно.
Материал подготовлен редакцией VOne с помощью ИИ; версионные границы, прямые источники, безопасный fixture, критерии решения, privacy-ограничения и отсутствие рекламных обещаний перепроверены человеком.
Источники и проверка
- GitHub Reviewed Advisory GHSA-5pg6-m483-7vrg проверено 2026-08-31
- Upstream security source for code.vikunja.io/api проверено 2026-08-31
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.