Bezpečnosť na Wavor Vaše obchodné údaje si zaslúžia rovnakú ochranu ako banka. Nepovedzeme vám len ČO chránime. Ukážeme vám AKO.
AES-256 TLS 1.3 2FA DSGVO/GDPR UK GDPR LGPD (BR) DPDP (IN) EU servery
AES-256 šifrovanie
Citlivé polia sú uložené šifrované. Bez kľúča neukazujú nič.
EU dátové centrá (Hetzner DE)
Servers and customer files in Germany. Offsite backups sit encrypted outside the EU under the EU's transfer safeguards; the privacy policy names the provider.
Dostupnosť & Infrastruktúra Nerd zone It gets technical from here. You do not need to read any of it to use Wavor safely - it is here so it can be checked.
Bezpečnostná architektúra Ako prúdi vaše dáta. Od požiadavky po ukladanie
KROK 1
Cloudflare Edge
Ochrana proti DDoS, WAF, TLS 1.3 s 1.2 zálohou. Globálna anycast sieť.
KROK 2
Cloudflare Tunnel
Pôvod fyzicky nedosiahnuteľný. Iba odchádzajúce pripojenie na CF, žiadny prichádzajúci port. AOP iba dôveryhodné s certifikátom Wavor RSA-4096.
KROK 3
Node.js aplikácia
Overenie relácie, kontrola 2FA, RBAC, overenie vstupu prostredníctvom Zod schém.
KROK 4
PostgreSQL + Vault
Encrypted storage with AES-256. Secrets in HashiCorp Vault.
TLS 1.3 (1.2 záloha)
Úplne prísne HTTPS na všetkých 7 doménach.
Ochrana proti DDoS
Ochrana na okraji predtým, ako server uvidí požiadavku.
Kde sú dáta uložené?
The servers are at Hetzner in Germany (Falkenstein and Nuremberg), customer files in object storage in Germany. The data centres are guarded around the clock, with biometric access. Backups and some services such as email, SMS and AI run through providers outside the EU. Those transfers are secured under the EU's rules, and the privacy policy names every provider.
Ako sú kľúče zabezpečené?
Všetky API kľúče a tajomstvá v HashiCorp Vault (KV v2, šifrované, prístupovo kontrolované). Automatické varovanie o rotácii po 90/180/365 dňoch. Žiadne tajomstvá v plaintext v kóde, env alebo logoch.
Ako funguje záloha?
Automated PostgreSQL backups every 6 hours. Kept: every one for two days, one a day up to 14 days, one a week up to 90 days. Each is decrypted again and checked after encryption, and every night the newest is restored as a test. Offsite copy at Backblaze, encrypted with our own key before it leaves the server.
Obranné vrstvy HTTP bezpečnostné hlavičky: 14 zosilnených direktív
CSP Level 3 (21 Direktiven)
Vynútený režim. Maximálny W3C štandard vrátane granularity script-src-elem/-attr, Trusted-Types na administrátorskom subdoméne, manifest/worker/media-src whitelist.
HSTS (Strict-Transport-Security)
max-age 1 rok, includeSubDomains, preload povolené.
X-Frame-Options
ZAKÁZANÉ. Žiadne clickjacking cez iframes.
X-Content-Type-Options
nosniff. Prehliadače nemôžu nesprávne interpretovať MIME typy.
Referrer-Policy
strict-origin-when-cross-origin.
Permissions-Policy
Kamera, mikrofón, geolokácia. Všetko predvolene zakázané.
COOP (Cross-Origin-Opener-Policy)
rovnaký pôvod. Izoluje kontext prehliadania.
CORP (Cross-Origin-Resource-Policy)
rovnaká stránka. Zdroje nemôžu byť vložené z iného pôvodu.
Independently verifiable: Mozilla's HTTP Observatory grades the headers of wavor.io A+. A test asks Mozilla for the result again every night. https://developer.mozilla.org/en-US/observatory/analyze?host=wavor.io(developer.mozilla.org)
2FA: TOTP / SMS / Email
Tri metódy pre druhý faktor. Záložné kódy na jednorazové použitie.
Rozpoznávanie zariadenia
Okamžité oznámenie o nových zariadeniach cez email s IP + User-Agent.
Správa relácií
Zobraziť aktívne relácie, ukončiť jednotlivé alebo sa odhlásiť všetky naraz.
Ochrana proti hrubej sile (3 vrstvy)
5 neúspechov na e-mail / 15minútové zablokovanie. 10 na IP / 1h. 5 rôznych e-mailov z jednej IP / 24h zákaz.
Cloudflare Turnstile Captcha
Ochrana pred botmi bez klikacieho puzzle. Skript načítaný s crossOrigin anonymne + no-referrer. Žiadny únik relácie do Cloudflare.
Bcrypt hashovanie hesiel (náklady 12)
Každý pokus stojí výpočtový čas, čo robí útoky zoznamom neúnosnými. Heslá >= 12 znakov, kontrola sily zxcvbn.
Zod validácia vstupu
Všetok API vstup overený na serverovej strane prostredníctvom Zod. Drizzle-Zod ako jediný zdroj pravdy s DB schémou.
Rate limiting with a sliding window
A sliding window rather than fixed blocks, so a limit is not handed out afresh at the top of every minute. The counter currently lives in the individual worker process; once Redis is configured, all processes share one.
Pokročilé ovládacie prvky Detailné RBAC (fail-closed)
Role + HTTP-metóda vedomá: GET potrebuje zobraziť, POST/PATCH potrebujú upraviť, DELETE potrebuje zmazať. Chýbajúce povolenie = 403, nikdy obísť.
Izolácia viacerých nájomcov
companyId-scope na každý DB dotaz. Žiadny únik údajov medzi nájomcami.
Auditné záznamy
Každá mutácia je zaznamenaná prostredníctvom eventLog + AuditLogger. Nemenná stopa s userId, companyId, akcia, entita.
Approval by two people
Four actions need two approvals: changes to legal values, prices and terms, and a new sub-processor. While only one person is authorised, that person decides alone. The rule takes effect once there is a second.
Politika rotácie tajomstiev
Automatické varovanie pri 90/180/365 dňoch prostredníctvom secretRotation.ts.
Maskovanie PII v odpovediach
E-mail, IBAN, telefón maskovaný pre členov tímu bez prístupu k PII. piiMasking.ts centrálne.
Čistenie protokolov
Všetky protokoly sú centrálne čistené. Nula PII v protokoloch, monitorovaní alebo ladacích výstupoch.
API kľúče s rozsahmi
Granulárne povolenia s expiráciou prostredníctvom apiKeyAuth.ts.
Mäkké mazanie a obnova
28-dňová obnova vymazaných údajov. stĺpec deletedAt s automatickým filtrom dotazu.
Data export
Úplný JSON export všetkých používateľských údajov v jednom požiadavku. Vymazanie prostredníctvom DSAR toku (Art. 17).
Ochrana údajov Concrete technical measures
Šifrovanie na úrovni polí (AES-256-GCM)
IBAN, daňové ID, sociálne zabezpečenie, bankové údaje, TOTP 2FA tajomstvá a jednorazové kódy (prihlásenie/overenie/obnovenie): AES-256-GCM s 96-bitovým IV, 128-bitovým auth-tag. Náhodný IV na každé šifrovanie.
Šifrovanie s fail-closed
Bez ENCRYPTION_KEY v produkcii: server odmieta spustiť. Žiadny textový fallback (GDPR čl. 32 písm. a).
Detekcia manipulácie (GCM)
AES-GCM auth-tag detekuje akékoľvek manipulácie s ciphertextom. Dešifrovanie zlyhá tvrdo. Nikdy ticho neprijímať.
HMAC-SHA256 vyhľadávacie hash
Šifrované polia zostávajú vyhľadateľné prostredníctvom deterministického HMAC. Oddelený kľúč (Oddelenie kľúčov podľa NIST SP 800-57).
Správa kľúčov Vault
ENCRYPTION_KEY + SESSION_SECRET + všetky API kľúče v HashiCorp Vault (KV v2). Žiadny text v kóde, env alebo protokoloch.
Verzionovanie kľúčov pre rotáciu
Formát ciphertextu v1:iv:data:tag. Možnosť rotácie na novú verziu bez straty údajov.
Bezpečnosť dodávateľského reťazca Ochrana pred kompromitovanými závislosťami (event-stream 2018, ua-parser-js 2021)
Dependencies as a build gate
Every build checks all dependencies against the vulnerability database. New findings block; known ones sit in a dated baseline that may only shrink.
Dependabot Upozornenia
GitHub Dependabot kontroluje denne proti CVE databáze. Automatické bezpečnostné PR.
Zamknutý súbor bol potvrdený
package-lock.json v repozitári. Zabraňuje CI v ťahaní rôznych verzií ako lokálne.
SSRF protection on outbound fetches
Every address that comes from user input is checked before Wavor fetches it. Private networks are blocked, and each redirect is checked again instead of being followed blindly.
Automatické bezpečnostné záplaty
unattended-upgrades installs operating-system security fixes automatically.
Externé skripty: CORS + Referrer
Turnstile (Cloudflare) načítaný s crossOrigin anonymne + referrerPolicy no-referrer. Žiadny únik poverení.
Monitorovanie & Pozorovateľnosť Sledovanie chýb (samo-hostované)
Upozornenia na chyby v reálnom čase so zásobníkmi chýb.
Metódy (Prometheus + Grafana)
Latencia požiadaviek, DB dotazy, pamäť, vlastné obchodné metriky.
Monitorovanie servera
Dostupnosť, CPU, pamäť, disk: 24/7 automatizované kontroly.
Bezpečnosť nahrávania súborov (7-vrstvový stack) Ochrana pred malvérom, polyglot útokmi, SVG-XSS, path-traversal, MIME-sniffing
Vrstva 1: Absolútna veľkostná brána (100 MB)
Tvrdý limit proti zip bombám + DoS. Multer + obrana v hĺbke.
Vrstva 2: Veľkostná brána podľa typu
Obrázky 5 MB, PDF 20 MB, video 100 MB. Limity špecifické pre typ.
Vrstva 3: MIME Whitelist + Blocklist
22 typov povolených. HTML/JS/EXE/SH/JAR výslovne zablokované (XSS vektory).
Vrstva 4: Sanitizácia názvov súborov
Prechádzanie cestou (../), null-byte, názvy rezervované pre Windows sú zablokované.
Vrstva 5: Validácia magických bajtov
Obsah súboru MUSÍ zodpovedať príponám + MIME. Knižnica typov súborov detekuje útoky 'evil.exe premenovaný na picture.jpg'.
Vrstva 6: Sanitizácia SVG
DOMPurify odstraňuje vložené <script> tagy zo SVG. Bez sanitizácie je nahrávanie SVG bežný XSS vektor.
Layer 7: virus scan
Server-side virus scan before storage, provided the scanner is running on the server. If it is missing, that is logged rather than passed over silently.
Obrana proti XSS v hĺbke (4 vrstvy) Uložené, odrazené, DOM, dodávateľské XSS. Všetky vektory pokryté
Vrstva 1: React JSX Automatické úniky
Všetky vstupy používateľa sú predvolene uniknuté. <script> tagy sú zobrazené ako text, nikdy sa nevykonávajú. Pravidlo kódu: nikdy nebezpečneSetInnerHTML s používateľským vstupom.
Vrstva 2: DOMPurify Sanitizátor
sanitizeProse() + sanitizeEmailPreview() čistia HTML článku, náhľady e-mailov + markdown. Odstraňuje <script>, <iframe>, on*-handler, javascript:/data: URI.
Vrstva 3: CSP script-src 'self'
Aj keď vrstvy 1+2 zlyhajú: prehliadač blokuje cudzie skripty. Biela lista iba pre Stripe + Turnstile captcha.
Vrstva 4: Dôveryhodné typy (Admin)
require-trusted-types-for 'script' na admin.wavor.io núti každú manipuláciu s DOM prostredníctvom politiky. Zabraňuje chybám knižnice spôsobujúcim DOM-XSS.
Sme transparentní: Budujeme a ešte nemáme formálne certifikácie. Ale už implementujeme štandardy a aktívne na nich pracujeme.
DSGVO / GDPR (EU)
Implementované UK GDPR (Data Protection Act 2018)
Implementované LGPD (Brasilien)
Implementované DPDP Act 2023 (Indien)
Implementované AVG (Niederlande)
Implementované FADP (Schweiz)
Implementované ePrivacy (Cookie-Consent)
Implementované DSA (Digital Services Act)
Implementované
ISO 27017 + 27018 (Cloud)
Plánované
ISO 27701 (Privacy)
Plánované
ISO 42001 (AI Management)
Plánované
CSA STAR Level 1
Plánované Dodatočne sa zhodujeme s nariadením EÚ o AI, NIS2 a GoBD (nemecké účtovníctvo). Tieto sú regulácie, nie certifikácie.
We only work with vetted, certified providers. Each one has been checked for security and data protection.
Hetzner Online GmbH ISO 27001, data centre in Germany
Cloudflare, Inc. SOC 2, ISO 27001
Stripe Payments Europe Ltd. PCI DSS Level 1
Amazon Web Services, Inc. (AWS) ISO 27001, SOC 2
OVH SAS (OVHcloud) ISO 27001, stored in Germany. Encryption at rest by the provider (AES-256).
Backblaze, Inc. SOC 2. Bucket with Object Lock (compliance mode): once written, a backup cannot be deleted before its retention date.
Twilio, Inc. SOC 2, ISO 27001
Mistral AI SAS SOC 2 Type II, ISO 27001/27701, data in the EU
OpenAI LLC SOC 2 Type II, no training on API inputs
OpenProvider B.V. EU-based (Netherlands)
Nahlásiť bezpečnostný problém Našli ste zraniteľnosť? Nahláste ju dôverne nášmu tímu. Každé hlásenie berieme vážne a čo najskôr sa vám ozveme.
Nahlásiť