Wir veröffentlichen die erkannten Missbrauchsvektoren und was wir gegen jeden tun. Dies ist ein lebendes Dokument — es wird mit jeder Härtung aktualisiert.
Chargeback after dossier delivery
TeilweiseVektor
Buyer purchases dossier, downloads PDF, then disputes the charge as 'service not received' — claiming the receipt never arrived.
Gegenmaßnahme
Every dossier render and PDF download is logged with timestamp + IP + user-agent. Stripe webhook listens for chargeback events; we auto-submit the delivery log + IP-geo + signed-in user as compelling evidence (Reason Code 13.1 — credit not processed / friendly fraud).
Investor-plan credential sharing
In BereitschaftVektor
One €99/mo subscription used by a whole buyer-broker office or 20-person agency, undermining unit economics.
Gegenmaßnahme
Soft rate-limit dossier generation per account/IP (Upstash). Hard-cap implemented post-launch via concurrent-session detection in Supabase auth + fingerprint hashing. Agency pricing tier announced if abuse detected.
Card-testing via /upgrade
TeilweiseVektor
Bot probes /upgrade with stolen card numbers in a $1-€49 sweep to find live cards.
Gegenmaßnahme
Rate-limit /api/checkout (5/min/IP, hard 20/hr). Stripe Radar default rules cover BIN-velocity + CVC-mismatch + repeated-decline. Add reCAPTCHA Enterprise on checkout when bot ratio exceeds 5%.
Bad-actor solicitor lists fictional properties
DokumentiertVektor
Fake solicitor profile lists properties they don't represent, harvests buyer-intro leads, then disappears.
Gegenmaßnahme
Manual editorial review of every listing (24h SLA) during MVP. Post-launch: solicitor must complete bar-number verification + recent practising certificate upload + counter-signature from existing verified peer. Listing-to-close conversion ratio tracked; listings <10% are flagged for review.
Impersonating a verified firm
DokumentiertVektor
Attacker registers using a real solicitor firm's bar number from public register.
Gegenmaßnahme
Sign-up requires a verification email sent to the firm's domain (DNS MX-validated, no Gmail/Hotmail). Bar-number is cross-referenced against the country bar association's public register (England Bar Council, Ordem dos Advogados, Colegio de Abogados, Conseil National des Barreaux, Türkiye Barolar Birliği).
Server-side request forgery via /api/analyse URL parameter
DurchgesetztVektor
Attacker submits an internal-network URL (http://169.254.169.254, http://localhost) to extract metadata from cloud services.
Gegenmaßnahme
lib/geocode.ts PORTAL_ALLOWLIST hard-codes hostnames (rightmove.co.uk, idealista.com, seloger.com, imovirtual.com, sahibinden.com, …). Any URL not on the allowlist returns 422 before any fetch is initiated.
Prompt injection via scraped listing content
DurchgesetztVektor
Malicious og:title or og:description on a listing page contains 'Ignore previous instructions and …' attempting to alter the Gemini prompt.
Gegenmaßnahme
Scraped strings are escaped, length-capped (1000 char), and wrapped in delimited [USER_INPUT] blocks in the prompt. System prompt explicitly instructs Gemini to treat the input as untrusted data, not instructions.
Concierge deposit laundering
DokumentiertVektor
Buyer pays €699 deposit with card A, requests refund to card B — using us as a money-laundering mixer.
Gegenmaßnahme
Hard rule via Stripe Refunds API: refund must return to original payment method. No alternative-payee refunds. AML check (proof of funds) on deposits >€10k. Concierge customer must complete identity verification (Stripe Identity) before deposit is accepted.