Не открывайте публичный issue. Напишите на kotlaevdanilcontact@gmail.com с темой
security: <короткое описание>. Ответ — в течение 72 часов.
Полезно приложить: затронутый эндпоинт или экран, шаги воспроизведения, версию
(тег vX.Y.Z или коммит), оценку последствий.
viremusic.ruиcdn.viremusic.ru- API
/api/v1/** - клиенты: веб, десктоп (Tauri)
Вне периметра: отчёты сканеров без подтверждённого воздействия, отсутствие заголовков без вектора эксплуатации, социальная инженерия, DoS-нагрузка на прод.
Модель угроз и покрытие — docs/security/owasp-top-10.md. Права и роли —
docs/features/rbac.md. Аутентификация устройств — docs/features/device-auth.md.
Известные осознанные размены (например, rate limiting fail-open при недоступности Redis) зафиксированы там же — если находка совпадает с уже описанным решением, напишите всё равно: возможно, размен пора пересмотреть.
Две линии, и они делят работу намеренно:
pnpm audit --audit-level=high— гейт CI, блокирует релиз. Advisory без патча в апстриме проходят с--ignore-unfixableи разбираются вручную. Порог оставлен наhighсознательно: наmoderateрелиз начнёт падать на advisory, которые нечем чинить (прецедент — сорванный тег v1.48.0 наnanoid).- Dependabot alerts — всё, что ниже порога. Включены 02.09.2026; до этого были
выключены, и две medium-уязвимости (
decode-uri-component,uuid) не видел никто: гейт их пропускал по порогу, а алертов не существовало.
Транзитивные уязвимости чинятся через pnpm.overrides в корневом package.json —
точной версией или кареткой, не открытым диапазоном (>= утягивает пакет на
свежий мажор; так sharp уехал мимо закреплённой версии).