Skip to content

Security: Aleksandr-Litvinenko/ladno

Security

SECURITY.md

Безопасность

Поддерживаемые версии

Версия Статус
0.1.x Демонстрационная, исправления критических проблем
ниже 0.1 Не поддерживается

Как сообщить об уязвимости

Не публикуйте сведения об уязвимости и тестовые секреты в обычном issue. Используйте приватное сообщение через GitHub Security Advisories.

Укажите:

  • затронутую версию или commit;
  • понятные шаги воспроизведения;
  • возможное влияние;
  • минимальный безопасный пример без реальных данных и credentials.

Модель безопасности версии 0.1.0

Версия 0.1.0 — статическое локальное демо:

  • нет серверной аутентификации;
  • нет разграничения доступа;
  • нет шифрования или серверного резервного копирования;
  • данные доступны JavaScript-коду того же origin и хранятся в localStorage;
  • live-соединения с 1С нет.

Не используйте демо для реальных счетов, банковских реквизитов, персональных данных или коммерческой тайны. Для очистки удалите данные сайта в браузере или воспользуйтесь сбросом демоданных в интерфейсе.

Секреты OData

.env.example содержит только недействительные placeholder. Реальные OData credentials должны:

  • существовать только на сервере;
  • храниться вне репозитория и публичных логов;
  • принадлежать отдельному пользователю 1С с минимальными правами;
  • использоваться только read-only коннектором;
  • регулярно заменяться и немедленно отзываться после возможной утечки.

Нельзя помещать credentials в app.js, index.html, localStorage, query-параметры или переменные с публичными префиксами VITE_, NEXT_PUBLIC_, PUBLIC_.

Требования к будущему OData API

  • allowlist хостов и entity sets;
  • запрет произвольных URL со стороны клиента;
  • лимиты размера, пагинации и времени ответа;
  • защита от SSRF и повторных запросов;
  • проверка TLS по умолчанию;
  • журналирование без заголовков авторизации и содержимого чувствительных полей;
  • структурный запрет методов записи на первом этапе;
  • проверка лицензий и полномочий на доступ к данным 1С.

Публичное развёртывание

Пример nginx-конфигурации включает ограничительную CSP и базовые защитные заголовки. Перед эксплуатацией с реальными данными дополнительно нужны аутентификация, управление сессиями, CSRF-защита, аудит, обновления зависимостей, резервные копии и проверенная процедура восстановления.

There aren't any published security advisories