Юзер указал что вся документация opensource-репо должна быть на русском. Также: - .env.example комменты на русском - package.json description на русском - Описания org и repo в Gitea обновлены через API
4.3 KiB
4.3 KiB
Политика безопасности
Поддерживаемые версии
Только ветка main получает security-обновления. Тегированные релизы (v0.x) — best-effort.
Сообщение об уязвимости
НЕ открывай публичный issue для уязвимостей безопасности.
Уязвимости в этом плеере могут напрямую повлиять на наш продакшен player.rublox.pro и игры, опубликованные юзерами. Публичное раскрытие до выпуска патча может привести к реальному вреду реальным пользователям (включая несовершеннолетних, играющих в наши игры).
Пиши на: security@rublox.pro (читает только мейнтейнер проекта)
Включи в письмо:
- Описание проблемы
- Шаги воспроизведения (или proof-of-concept)
- Затронутые версии / файлы
- Твою оценку воздействия (XSS / RCE / IDOR / побег из песочницы / и т.д.)
- Твой контакт для уточнений
- Хочешь ли публичное упоминание после фикса (добавим в Hall of Fame в CHANGELOG)
Что ожидать
| Шаг | Сроки |
|---|---|
| Подтверждение получения | в течение 24 часов |
| Оценка серьёзности | в течение 3 рабочих дней |
| Фикс в приватной ветке | в течение 7 дней для критичных |
| Публичный релиз патча | когда готов, с благодарностью |
Особенно ценные находки
Следующие классы багов высоко ценятся (потому что могут скомпрометировать пользователей):
- Побег из script-песочницы (
engine/scripts/ScriptSandbox*.js) — скрипт юзера получает доступ кwindow,document,fetch,localStorage, либо угоняет сессии других игроков. - XSS в рендере контента игр — названия игр, чат-сообщения, тексты комментов рендерятся как HTML.
- Инъекция мультиплеер-сообщений — кастомные Colyseus-сообщения роняют других клиентов или выполняют код атакующего.
- Утечка auth-токена — JWT или ticket появляется в URL, query-string, console-логах, error-страницах или analytics-событиях.
- Инъекция в asset-URL — префиксы
url:...(модели от дизайнеров) загружают произвольные файлы вне нашего asset-бакета.
Что НЕ является уязвимостью
(Не теряй своё и наше время — эти отчёты отклоняются.)
- Отсутствующий
X-Frame-OptionsилиContent-Security-Policy(знаем, работаем над этим на стороне сервера). - Self-XSS (юзер сам вставляет JS в свой DevTools).
- Устаревшие
npm auditwarning'и без рабочего эксплойта. - Раскрытие информации о файлах в репо (это же open-source!).
- Отчёты от автоматических сканеров без ручной проверки.
Награда
Мы маленький проект и не можем платить bounty, но за любую настоящую уязвимость:
- Публичное упоминание в
CHANGELOG.md(если хочешь) - Включение в раздел «Hall of Fame» этого файла
- Личное спасибо от мейнтейнера
- За high-impact-репорты: разовый денежный подарок по усмотрению мейнтейнера (редко, но возможно)
Hall of Fame
Пока пусто — стань первым!