Skip to content

Security: openpalliative/pal-norms

SECURITY.md

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

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

Закрыто, через GitHub: вкладка Security, кнопка Report a vulnerability (прямая ссылка). Отчёт увидят только мейнтейнеры. Не открывайте публичный issue и не пишите подробности в обсуждениях

Что помогает разобраться быстро: адрес страницы, шаги, что вы ожидали и что произошло, браузер. Отвечаем в течение 14 дней. Проект держат волонтёры, дежурства нет

Что считаем уязвимостью

  • выполнение чужого кода на страницах сайта (XSS), например через поле «Проверить памятку», адрес страницы или файл .ics
  • запрос с сайта к любому внешнему адресу: сайт не должен ходить никуда, кроме своих файлов
  • утечка введённого текста или дат за пределы браузера
  • подмена данных в релизе: zip и SQLite в релизе должны совпадать с SHA256SUMS
  • workflows в .github/workflows/, которые дают постороннему записать в репо

Как устроена защита

  • сайт статический, на GitHub Pages, без сервера, cookie, аналитики и трекинга. Шрифт, иконки и данные лежат на самом сайте
  • то, что человек вводит (даты, текст памятки), остаётся в его браузере и никуда не отправляется
  • политика безопасности контента задана тегом <meta http-equiv="Content-Security-Policy"> на каждой странице. Через meta не задаётся frame-ancestors, поэтому страницу технически можно встроить в чужой фрейм: на сайте нет входа и форм отправки, это осознанный компромисс GitHub Pages
  • действия GitHub закреплены по полному SHA коммита, у каждого workflow минимальные права

Что не уязвимость

Ошибка в цитате, сроке или статусе акта: это важно, но это не уязвимость. Откройте issue по форме, как написано в CONTRIBUTING.md

English

Please report vulnerabilities privately via GitHub private vulnerability reporting (Security tab, Report a vulnerability). Do not open a public issue. The site is static, makes no external requests and stores nothing outside the browser

There aren't any published security advisories