Zum Inhalt springen / Skip to content

Siguria në Wavor

Të dhënat tuaja të biznesit meritojnë të njëjtën mbrojtje si një bankë. Ne nuk ju themi vetëm ÇFARË mbrojmë. Ne ju tregojmë SI.

AES-256TLS 1.32FADSGVO/GDPRUK GDPRLGPD (BR)DPDP (IN)Serverat e BE-së

Siguria Kryesore

Enkriptimi AES-256
Fushat e ndjeshme ruhen të enkriptuara. Lexohet pa çelësin, ato nuk tregojnë asgjë.
Qendrat e të Dhënave të BE-së (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.

Disponueshmëria & Infrastrukturën

99.9%
Qëllimi i Disponueshmërisë
6h
Intervali i Backup-it
90d
Longest retention
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.

Arkitektura e Sigurisë

Si rrjedh të dhënat tuaja. Nga kërkesa në ruajtje

HAPI 1
Cloudflare Edge
Mbrojtja DDoS, WAF, TLS 1.3 me rënien në 1.2. Rrjeti global anycast.
HAPI 2
Cloudflare Tunnel
Origjina fizikisht e paarritshme. Lidhje vetëm dalëse me CF, pa port hyrës. Besim vetëm për AOP me certifikatën Wavor RSA-4096.
HAPI 3
Node.js Aplikacion
Validimi i sesionit, kontrolli 2FA, RBAC, validimi i inputit përmes skemave Zod.
HAPI 4
PostgreSQL + Vault
Encrypted storage with AES-256. Secrets in HashiCorp Vault.
TLS 1.3 (1.2 Rënia)
HTTPS i plotë dhe i rreptë në të gjitha 7 domenet.
Mbrojtja DDoS
Mbrojtja Edge para se serveri të shohë kërkesën.
Ku ruhen të dhënat?
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.
Si sigurohen çelësat?
Të gjitha çelësat e API dhe sekretet në HashiCorp Vault (KV v2, të enkriptuara, me kontroll të aksesit). Paralajmërim automatik për rotacion në 90/180/365 ditë. Asnjë sekret në tekst të qartë në kod, ambient, ose logje.
Si funksionon backup-i?
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.

Shtresa të Mbrojtjes

HTTP Security Headers: 14 direktiva të fortifikuara

CSP Level 3 (21 Direktiven)
Režimi i detyrueshëm. Standardi maksimal W3C përfshin script-src-elem/-attr të hollësishëm, Trusted-Types në subdomenin e administratorit, manifest/worker/media-src whitelist.
HSTS (Strict-Transport-Security)
max-age 1 vit, includeSubDomains, preload i aktivizuar.
X-Frame-Options
NDALIM. Asnjë klikim i rremë përmes iframes.
X-Content-Type-Options
nosniff. Shfletuesit nuk mund të keqinterpretojnë llojet MIME.
Referrer-Policy
strict-origin-when-cross-origin.
Permissions-Policy
Kamera, mikrofon, gjeolokacion. Të gjitha të çaktivizuara si standard.
COOP (Cross-Origin-Opener-Policy)
same-origin. Izolon kontekstin e shfletimit.
CORP (Cross-Origin-Resource-Policy)
same-site. Burimet nuk mund të përfshihen nga origjina e ndryshme.

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)

Siguria e Llogarive

2FA: TOTP / SMS / Email
Tre metoda për faktorin e dytë. Kodet rezervë për përdorim të vetëm.
Njohja e Pajisjeve
Njoftim i menjëhershëm për pajisje të reja përmes emailit me IP + User-Agent.
Menaxhimi i Sesioneve
Shiko sesionet aktive, përfundo individualisht ose dil të gjitha njëherësh.
Mbrojtja nga Brute-Force (3 shtresa)
5 dështime për email / 15min bllokim. 10 për IP / 1h. 5 emaile të ndryshme nga një IP / 24h ndalim.
Cloudflare Turnstile Captcha
Mbrojtja nga botët pa puzzle klikimi. Skripti i ngarkuar me crossOrigin anonim + no-referrer. Asnjë rrjedhje sesioni në Cloudflare.
Bcrypt Hashimi i Fjalëkalimeve (kostot 12)
Çdo supozim kushton kohë llogaritjeje, e cila e bën sulmin me lista të paarsyeshëm. Fjalëkalimet >= 12 karaktere, kontrolli i forcës zxcvbn.
Validimi i Input-it Zod
Të gjitha inputet e API-së validohen në anën e serverit përmes Zod. Drizzle-Zod si burimi i vetëm i së vërtetës me skemën DB.
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.

Kontrolla të Avancuara

RBAC i Hollësishëm (mbyllje e dështuar)
Roli + i vetëdijshëm për metodën HTTP: GET ka nevojë për shikim, POST/PATCH kanë nevojë për redaktim, DELETE ka nevojë për fshirje. Mungesa e lejes = 403, kurrë nuk kalon.
Izolimi Multi-Tenant
companyId-scope në çdo kërkesë DB. Asnjë rrjedhje të dhënash midis tenantëve.
Regjistrat e Auditit
Çdo ndryshim i regjistruar përmes eventLog + AuditLogger. Një gjurmë e pandryshueshme me userId, companyId, veprim, entitet.
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 e Rotacionit të Sekreteve
Paralajmërim automatik në 90/180/365 ditë përmes secretRotation.ts.
Maskimi i PII në Përgjigje
Email, IBAN, telefon të maskuar për anëtarët e ekipit pa akses në PII. piiMasking.ts qendror.
Pastrimi i Logjeve
Të gjitha log-et janë të pastruara në qendër. Zero PII në log-e, monitorim ose dalje debug.
Çelësat e API me Skopa
Lejet e hollësishme me skadencë përmes apiKeyAuth.ts.
Fshirja e Butë & Rikuperimi
Rikuperimi 28-ditor i të dhënave të fshira. kolona deletedAt me filtrin automatik të kërkesës.
Data export
Eksporti i plotë JSON i të gjitha të dhënave të përdoruesve në një kërkesë. Fshirja përmes rrjedhës DSAR (Art. 17).

Mbrojtja e të Dhënave

Concrete technical measures

Enkriptimi në Nivelin e Fushës (AES-256-GCM)
IBAN, ID tatimore, sigurimi shoqëror, detajet e bankës, sekretet e TOTP 2FA dhe kodet njëherësh (login/verifikim/rivendosje): AES-256-GCM me 96-bit IV, 128-bit auth-tag. IV rastësor për çdo enkriptim.
Enkriptimi i Mbyllur
Pa ENCRYPTION_KEY në prodhim: serveri refuzon të fillojë. Asnjë rënie në tekst të qartë (GDPR Art. 32 lit. a).
Zbulimi i Ndryshimeve (GCM)
AES-GCM auth-tag zbulon çdo manipulim të ciphertext. Dekriptimi dështon rëndë. Kurrë pranohet heshtazi.
HMAC-SHA256 Kërkime Hash
Fushat e enkriptuara mbeten të kërkueshme përmes HMAC të përcaktuar. Çelësi i veçantë (Ndarja e Çelësit sipas NIST SP 800-57).
Menaxhimi i Çelësit të Vault
ENCRYPTION_KEY + SESSION_SECRET + të gjithë çelësat e API në HashiCorp Vault (KV v2). Asnjë tekst i qartë në kod, ambient, ose logje.
Versionimi i Çelësit për Rotacion
Formati i ciphertext v1:iv:data:tag. I rotueshëm në version të ri pa humbje të të dhënave.

Siguria e Zinxhirit të Furnizimit

Mbrojtja ndaj varësive të komprometuara (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.
Njoftimet e Dependabot
GitHub Dependabot kontrollon çdo ditë kundër bazës së të dhënave CVE. PR të automatizuar për sigurinë.
Lockfile i angazhuar
package-lock.json në repo. Parandalon CI nga tërheqja e versioneve të ndryshme nga lokale.
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.
Patch-e Automatikë të Sigurisë
unattended-upgrades installs operating-system security fixes automatically.
Skripte të Jashtme: CORS + Referuesi
Turnstile (Cloudflare) i ngarkuar me crossOrigin anonim + referrerPolicy no-referrer. Asnjë rrjedhje kredencialesh.

Monitorim & Vëzhgim

Gjetja e Gabimeve (vetë-hostuar)
Njoftime për gabime në kohë reale me gjurmë të stack-ut.
Metrika (Prometheus + Grafana)
Latenca e kërkesës, pyetje DB, memorie, metrika të biznesit të personalizuara.
Monitorimi i Serverit
Disponueshmëria, CPU, memoria, disku: kontrolle automatike 24/7.

Siguria e Ngarkimit të Skedarëve (7-Layer Stack)

Mbrojtja nga malware, sulme poliglot, SVG-XSS, kalimi i rrugëve, MIME-sniffing

Shtresa 1: Porta e Madhësisë Absolute (100 MB)
Kap i fortë kundër bombave zip + DoS. Multer + mbrojtje në thellësi.
Shtresa 2: Porta e Madhësisë sipas Llojit
Imazhet 5 MB, PDF 20 MB, video 100 MB. Kufij specifikë për llojin.
Shtresa 3: Lista e Lejueshme MIME + Lista e Bllokuar
22 lloje të lejuara. HTML/JS/EXE/SH/JAR të bllokuara shprehimisht (XSS vektorët).
Shtresa 4: Sanitizimi i Emrave të Skedarëve
Kalimi i rrugëve (../), null-byte, emrat e rezervuar të Windows bllokohen.
Shtresa 5: Validimi i Magic-Byte
Përmbajtja e skedarit DUHET të përputhet me zgjerimin + MIME. Biblioteka e llojeve të skedarëve zbulon sulmet 'evil.exe e rinovuar në picture.jpg'.
Shtresa 6: Sanitizimi i SVG
DOMPurify heq etiketat e ngulitura <script> nga SVG-të. Pa sanitizim, ngarkimi i SVG është një vektor i zakonshëm XSS.
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.

Mbrojtja XSS në Thellësi (4 Shtresa)

XSS të ruajtura, të reflektuara, DOM, zinxhir furnizimi. Të gjitha vektorët e mbuluar

Shtresa 1: Auto-Escape React JSX
Të gjitha inputet e përdoruesve janë të shpëtuara si parazgjedhje. <script> etiketat shfaqen si tekst, kurrë nuk ekzekutohen. Rregulli i kodit: kurrë dangerouslySetInnerHTML me inputin e përdoruesit.
Shtresa 2: Sanitizuesi DOMPurify
sanitizeProse() + sanitizeEmailPreview() pastroni HTML-në e artikujve, parashikimet e email-it + markdown. Heq <script>, <iframe>, on*-handlers, javascript:/data: URIs.
Shtresa 3: CSP script-src 'self'
Edhe nëse shtresat 1+2 dështojnë: shfletuesi bllokon skriptet e huaja. Lista e bardhë vetëm për Stripe + Turnstile captcha.
Shtresa 4: Llojet e Besuara (Admin)
require-trusted-types-for 'script' në admin.wavor.io e detyron çdo manipulim DOM përmes një politike. Parandalon gabimet e bibliotekës nga shkaktimi i DOM-XSS.

Rruga e Certifikimit

Ne jemi transparent: Ne po ndërtojmë dhe nuk kemi akoma certifikata formale. Por ne tashmë zbatojmë standardet dhe po punojmë aktivisht drejt tyre.

DSGVO / GDPR (EU)
E implementuar
UK GDPR (Data Protection Act 2018)
E implementuar
LGPD (Brasilien)
E implementuar
DPDP Act 2023 (Indien)
E implementuar
AVG (Niederlande)
E implementuar
FADP (Schweiz)
E implementuar
ePrivacy (Cookie-Consent)
E implementuar
DSA (Digital Services Act)
E implementuar
SOC 2 Type II
E planifikuar
ISO 27001:2022
E planifikuar
ISO 27017 + 27018 (Cloud)
E planifikuar
ISO 27701 (Privacy)
E planifikuar
ISO 42001 (AI Management)
E planifikuar
BSI C5 Type II
E planifikuar
CSA STAR Level 1
E planifikuar

Ne gjithashtu jemi në përputhje me Aktin e AI të BE-së, NIS2 dhe GoBD (kontabiliteti gjerman). Këto janë rregullore, jo certifikata.

Raporto Problemin e Sigurisë

Gjetët një vulnerabilitet? Raportoni atë në mënyrë konfidenciale në ekipin tonë. Ne e marrim çdo raport seriozisht dhe do t'ju kthejmë përgjigje sa më shpejt të jetë e mundur.