MAB Play — Notes

New Note

note7/28/2026

URLs проекта

- Стейджинг: https://dev.mab-play.ru - Прод: https://mabplay.ru

#infrastructure#urls
note7/27/2026

Security Audit — оставшиеся пункты

## Выполнено (2026-07-28) - #1 CRITICAL — YooKassa webhook (пропущено, платежи не активны) - #2 CRITICAL — update-user-credentials: добавлена проверка JWT + admin role ✓ - #3 CRITICAL — send-email: добавлена проверка service_role key ✓ - #10 CRITICAL — phone_verifications: включён RLS ✓ - #4 HIGH — calculate-skill-change: добавлена проверка JWT ✓ - #5 HIGH — экспорт-функции: удалены полностью ✓ - #6 HIGH — HTML injection в send-contact-form: экранирование ✓ - #7 HIGH — phone-auth brute-force (пропущено, не активно) - #9 HIGH — recalculate-all-skill-levels: добавлена проверка service_role ✓ - #12-13 HIGH — subscription write policies: удалены INSERT/UPDATE ✓ Также исправлены функции с verify_jwt=true (не работает на self-hosted Supabase): - finalize-tournament: добавлена проверка admin role ✓ - send-message-notification: добавлена проверка JWT + sender ✓ ## Осталось (MEDIUM) - #8 — Auth-функции без CSRF/origin проверки - #11 — PII в profiles доступен без аутентификации (отложено) - #15 — Race condition в промокодах - #16 — Промокоды видны всем через RLS - #17 — Impersonation без серверной проверки - #20 — CORS `*` на всех edge functions - #21 — Nginx без security headers ## Осталось (LOW/INFO) - #24-28 — менее критичные ## Незакоммиченные изменения - MatchScoreRecorder.tsx (добавлен Authorization header) - config.toml (удалены экспорт-функции, изменён send-email) - Миграции (phone_verifications RLS, subscription policies) - Удалённые директории экспорт-функций ## Бэкап /opt/mabplay/functions-backup-20260728-021847.tar.gz

#security#audit#todo