Bezpieczeństwo
Ostatnia aktualizacja: 16 kwietnia 2026
Bezpieczeństwo Twoich danych to priorytet Samael sp. z o.o. — właściciela i administratora platformy MailVerra. Niniejszy dokument opisuje techniczne i organizacyjne środki ochrony stosowane w celu zapewnienia bezpieczeństwa danych przetwarzanych w ramach Usługi, zgodnie z art. 32 RODO.
Szyfrowanie danych
Dane w transporcie (encryption in transit)
- TLS 1.2 / 1.3 — całe połączenie z serwisem szyfrowane protokołem TLS. Obsługa przestarzałych wersji TLS 1.0 i 1.1 jest wyłączona.
- HSTS — nagłówek Strict-Transport-Security (max-age=63072000, includeSubDomains) zapobiega atakom typu downgrade i wymusza połączenia HTTPS.
- Bezpieczne nagłówki HTTP — X-Frame-Options: SAMEORIGIN, X-Content-Type-Options: nosniff, Content-Security-Policy, Referrer-Policy: strict-origin-when-cross-origin.
- Połączenia IMAP/SMTP — komunikacja z zewnętrznymi serwerami pocztowymi odbywa się wyłącznie przez szyfrowane połączenia (STARTTLS lub implicit TLS/SSL).
Dane w spoczynku (encryption at rest)
- Hasła IMAP/SMTP — szyfrowane algorytmem AES-256-GCM z losowym IV (12 bajtów) i tagiem uwierzytelniającym (16 bajtów). Klucz szyfrowania przechowywany jest oddzielnie od bazy danych, w zmiennej środowiskowej niedostępnej z poziomu aplikacji webowej.
- Hasła użytkowników — przechowywane wyłącznie jako skróty kryptograficzne bcrypt (koszt 12 rund). Hasła w postaci jawnej nie są nigdy zapisywane ani logowane.
- Tokeny weryfikacyjne i reset hasła — generowane kryptograficznie (256-bitowe, losowe), jednorazowe, z ograniczonym czasem ważności.
- Kopie zapasowe — przechowywane w postaci zaszyfrowanej.
Uwierzytelnianie i kontrola dostępu
- Uwierzytelnianie dwuskładnikowe (2FA/TOTP) — możliwość włączenia aplikacji TOTP (Google Authenticator, Authy, Microsoft Authenticator) dla dodatkowego zabezpieczenia konta.
- Sesje JWT — tokeny sesji ważne 30 dni, przechowywane w bezpiecznych ciasteczkach HttpOnly, Secure, SameSite=Lax.
- Ochrona CSRF — tokeny CSRF generowane i weryfikowane przy każdym żądaniu modyfikującym stan.
- Rate limiting — ograniczenie prób logowania (10 prób / 15 minut z jednego IP) i żądań API (200 żądań / minutę). Ochrona przed atakami brute-force i DDoS na poziomie aplikacji.
- Logowanie OAuth 2.0 — bezpieczna integracja z Google i Microsoft. Tokeny OAuth nie są przechowywane na serwerze dłużej niż jest to konieczne.
- Kontrola dostępu RBAC — system ról i uprawnień (właściciel, administrator, członek) w ramach subkont firmowych.
Infrastruktura
- Serwery zlokalizowane w centrum danych w Unii Europejskiej (Francja, OVH SAS) — zgodnie z wymogami RODO dotyczącymi lokalizacji danych.
- Izolacja komponentów — baza danych PostgreSQL, Redis, aplikacja Next.js i worker BullMQ działają w odizolowanych kontenerach Docker z ograniczonymi uprawnieniami.
- Redis (kolejka zadań BullMQ, cache) — dostępny wyłącznie wewnętrznie przez sieć Docker, brak ekspozycji na publiczny internet.
- PostgreSQL — brak dostępu publicznego, komunikacja wyłącznie przez wewnętrzną sieć Docker. Uwierzytelnianie hasłem.
- Firewall — tylko niezbędne porty otwarte (80/443 HTTP/HTTPS). Dostęp SSH ograniczony do autoryzowanych kluczy.
- Regularne aktualizacje systemu operacyjnego, obrazów Docker i bibliotek zależności.
Bezpieczeństwo aplikacji
- Content Security Policy (CSP) — restrykcyjna polityka ograniczająca źródła zasobów, blokada inline scripts i eval().
- SQL Injection — baza danych obsługiwana przez ORM (Prisma) z parametryzowanymi zapytaniami. Brak surowych zapytań SQL w kodzie aplikacji.
- XSS (Cross-Site Scripting) — automatyczna sanityzacja danych wyjściowych przez React, dodatkowo zabezpieczona polityką CSP.
- Walidacja danych wejściowych — wszystkie żądania API walidowane schemami Zod po stronie serwera. Odrzucanie nieprawidłowych danych przed przetwarzaniem.
- Nagłówki bezpieczeństwa — X-XSS-Protection, X-Content-Type-Options: nosniff, X-Frame-Options: SAMEORIGIN, Permissions-Policy.
- Audyt zależności — regularne skanowanie zależności npm pod kątem znanych podatności (npm audit, Dependabot).
- Zasada najmniejszego uprawnienia — procesy aplikacyjne uruchomione z minimalnymi wymaganymi uprawnieniami.
Audyt i monitorowanie
- Logi dostępu i błędów — przechowywane przez 90 dni, automatycznie usuwane po upływie retencji.
- Dziennik zdarzeń bezpieczeństwa (AuditLog) — rejestracja logowań (udanych i nieudanych), zmian konfiguracji konta, operacji na skrzynkach, zmian haseł i ustawień 2FA.
- Monitorowanie anomalii — automatyczne wykrywanie podejrzanych wzorców (np. nietypowa lokalizacja logowania, masowe operacje).
- Alerty bezpieczeństwa — automatyczne powiadomienia administracyjne o podejrzanych próbach dostępu i potencjalnych naruszeniach.
- Health checks — ciągłe monitorowanie stanu komponentów infrastruktury (baza danych, Redis, aplikacja).
Kopie zapasowe
- Codzienne automatyczne kopie zapasowe bazy danych.
- Kopie przechowywane w postaci zaszyfrowanej, w oddzielnej lokalizacji.
- Testy przywracania danych przeprowadzane regularnie w celu weryfikacji integralności kopii.
- Retencja kopii zapasowych: 30 dni.
Reagowanie na incydenty bezpieczeństwa
Samael sp. z o.o. posiada wewnętrzną procedurę reagowania na incydenty bezpieczeństwa obejmującą:
- Wykrycie — automatyczny monitoring i system alertów.
- Powstrzymanie — natychmiastowe ograniczenie skutków incydentu.
- Analiza — ocena skali naruszenia i identyfikacja przyczyn.
- Powiadomienie — zgłoszenie do UODO w ciągu 72h (jeśli wymagane, art. 33 RODO), powiadomienie poszkodowanych użytkowników (jeśli wymagane, art. 34 RODO).
- Naprawienie — wdrożenie poprawek i środków zapobiegawczych.
- Dokumentacja — pełna dokumentacja incydentu zgodnie z art. 33 ust. 5 RODO.
Odpowiedzialne ujawnianie podatności (Responsible Disclosure)
Jeśli odkryłeś podatność bezpieczeństwa w MailVerra, prosimy o kontakt przed publicznym ujawnieniem:
Zobowiązujemy się do:
- Potwierdzenia odbioru zgłoszenia w ciągu 48 godzin.
- Poinformowania o postępach w ciągu 7 dni roboczych.
- Rozwiązania potwierdzonych podatności w możliwie najkrótszym czasie.
- Niepodjęcia kroków prawnych wobec badaczy działających w dobrej wierze, zgodnie z programem responsible disclosure.
Certyfikaty i standardy
- Zgodność z RODO (GDPR) — Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679.
- Płatności obsługiwane przez Stripe, Inc. — certyfikat PCI DSS Level 1.
- Szyfrowanie zgodne z rekomendacjami ENISA (European Union Agency for Cybersecurity) i NIST (National Institute of Standards and Technology).
- Architektura aplikacji zgodna z wytycznymi OWASP Top 10.
Kontakt
Zgłoszenia dotyczące bezpieczeństwa: security@mailverra.com
Administrator platformy: Samael sp. z o.o.