Не пишите об уязвимости в открытом issue. Используйте закрытое сообщение GitHub:
- Откройте вкладку Security этого репо
- Нажмите Report a vulnerability
Прямая ссылка: https://github.com/openpalliative/openpalliative.github.io/security/advisories/new
Сообщение увидят только мейнтейнеры. Отдельной почты для этого нет. Если уязвимость касается другого репо openpalliative, сообщите в нём, путь тот же
Опишите, что нужно сделать, чтобы повторить проблему, и что вы ожидали. Не прикладывайте настоящие личные данные, достаточно выдуманных
Проект ведут добровольцы. Мы постараемся ответить в течение 14 дней и сообщим, когда выйдет исправление. Если хотите, укажем вас в благодарностях, под именем или псевдонимом
- выполнение чужого кода на странице (XSS) через поля ввода, адрес страницы или импорт файла
- любая отправка введённого на чужой сервер или запрос за пределы сайта
- обход Content-Security-Policy
- service worker кэширует то, что ввёл человек, или отдаёт чужую версию страницы
- импорт файла, который ломает сохранённые данные или выполняет код
- небезопасные GitHub Actions: инъекции в шаблоны, лишние права токена, непиннованные экшены
Ошибки в цитатах, сроках и номерах это не уязвимость, о них пишите в обычном issue по шаблону
- Сайты статические, сервера с данными людей нет. Всё, что вводит человек, хранится только в его браузере (localStorage и IndexedDB)
- Аналитики, счётчиков, cookie и внешних шрифтов нет. Тесты проверяют, что страницы не делают запросов за пределы своего адреса
- Content-Security-Policy задана через
<meta http-equiv>в<head>раньше любых скриптов и стилей, одна строка для всех страниц. GitHub Pages не даёт задать свои HTTP-заголовки, поэтомуframe-ancestors,report-uriиsandboxтак задать нельзя: через meta браузер их не применяет. Встраивание сайта в чужой фрейм этим способом не запретить - Нет инлайн-скриптов, обработчиков
on*=в разметке и атрибутовstyle, это проверяетopsite check - Экшены в workflows закреплены по SHA, у токена минимальные права, кэш выключен там, где собирается то, что публикуется
Исправления выходят только для последней версии на GitHub Pages и в ветке main. Если вы развернули копию у себя, обновите её из последнего релиза