Fake registrations
Bots create accounts faster than your team can delete them.
They distort metrics, burn limits and prepare the ground for fraud.
Corpilus Shield is a security layer between the user, your website, e-shop, backend and AI tools. It protects forms, login, checkout, uploads and the chat that works with your data. It checks risky requests, answers and tool actions, anonymizes sensitive data and stops problems before they reach your systems.
A 15-minute technical call. We review your chat, website, MCP tools or the highest-risk data flow.
Three real attacks every business sees daily. Then one line of code that stops all of them.
Credential stuffing is the most common attack on the open web. A bot uses lists of leaked username/password pairs from previous breaches — your site, your users.
Real HTTP request to our production API. No login required.
Real HTTP request to our production API. No login required.
We'll scan your domain for 18 known vulnerabilities — admin path probes, missing security headers, exposed config files, supply-chain risks, AI scraper policy — and send you a branded PDF report.
An attack no longer has to look like a classic hack. It can be a chat prompt, a file in a form, a fake login or an MCP call requesting more data than it should receive.
Bots create accounts faster than your team can delete them.
They distort metrics, burn limits and prepare the ground for fraud.
Someone tests stolen or guessed passwords against your site, often distributed across thousands of IPs.
One successful login can turn a customer account into an incident.
Your inbox fills with messages no human wrote.
Real customer messages get buried, the team loses time and deliverability suffers.
Fraudsters test thousands of cards against your checkout for cents, just to verify which numbers work.
Payment providers penalize you, Stripe trust drops and real customers may be blocked.
Macro viruses, PDFs with JavaScript and SVG payloads arrive as attachments through a contact form.
Malware reaches a mailbox, cloud drive or a colleague's computer.
An attacker uses your form to send email in the name of a bank or supplier, with a fake invoice attached.
Your brand becomes the delivery path for phishing, creating reputational and legal risk.
Scrapers copy your catalogue, prices and copy for competitors or fake shops.
You lose SEO value, pricing edge and content you paid to create.
A chatbot can be talked into breaking rules or revealing its system prompt.
Internal instructions or data leak, and your company carries the responsibility.
These are not eight separate problems. They are one problem: an unguarded entrance to your data, accounts and tools. Shield puts those entrances under one policy and one audit trail.
47% of web traffic in 2026 is non-human. (Imperva Bad Bot Report.)
Shield helps companies use AI without blindly trusting every prompt, answer or tool call. It can protect Corpilus AI and the chat you already use through an LLM proxy, MCP policy engine, sensitive-data anonymization, a web-form widget and auditable rules.
The same policy can cover contact forms, login, uploads, AI chat, MCP tool calls and read-only database access. Your team sees risk in one dashboard, not five separate tools.
Prompt injection, jailbreaks, system-prompt leakage, excessive MCP calls and sensitive data in text are evaluated before the request moves forward.
PII, secrets, API keys and company identifiers can be anonymized, redacted or blocked by policy. The goal is not to slow AI down, but to prevent unnecessary data exposure.
Every decision has a reason, risk level and audit trail. Detection details are protected against bypassing, while customers get explanations, log exports and technical evidence.
Shield is not just anti-bot. It is a security layer for the places where a user or agent interacts with your company: a prompt, form, upload, login, MCP tool or database query.
Combines behavioural signals with a rotating device fingerprint and IP reputation. Detection thresholds are not published to avoid calibration mapping.
Per-account throttling works independently of IP, the k-anonymity HIBP proxy never sees a plaintext password. Password change requires a combination of velocity, recent-login and session-drift signals.
The LLM proxy is BYOK — we never see or store customer tokens. The semantic firewall uses local embedding models, with no per-request API cost.
Works with the card-fingerprint hash from your PSP — we never see the raw PAN. Combines BIN-level velocity and fingerprint linking across device, session and tenant.
Uploads pass through a quarantine with an extension allowlist, magic-byte sniffing and content scanning. Phishing detection is brand-agnostic — it detects the pattern, not a specific brand.
AST validation on every query. Sensitive-field redaction is configurable per tenant. Crypto detection covers 7 blockchain address formats.
New rules go through canary rollout with anomaly-based gating. Cross-tenant learning only propagates anonymised patterns with maturity: experimental → candidate → confirmed.
RLS is forced on every shield_* table. The HMAC signing secret is server-only — a leaked site_key cannot forge a token. The audit log captures actor, timestamp and a before/after diff.
The SDK runs a 3-state circuit breaker (closed / open / half-open) and is not coupled to a single point of failure. The remediation code lets the front-end show a user-friendly message.
Append-only at the database role level (REVOKE UPDATE, DELETE), per-tenant Ed25519 keypairs, and RFC 3161 anchoring against an external TSA. A single byte changed inside the log invalidates every subsequent hash — the chain refuses to verify and the tampering is auditable.
Snapshots are sealed with a hybrid envelope (RSA-OAEP-SHA256 for the AES-256-GCM key, AES-256-GCM for the payload). The archive can be uploaded to any S3-compatible store. Weekly cron auto-archives are optional. Only the private key holder can decrypt — Shield infrastructure cannot read past snapshots.
Keystroke dynamics, mouse trajectory R², scroll patterns, touch events, form-fill timing, page-dwell — multi-signal inputs fed into the local scorer and backend scoring pipeline.
Canvas, WebGL, audio context, font detection, navigator fingerprinting fused into a SHA-256 device hash. Detects headless browsers and anti-detect tools.
Short-lived cache snapshot of device_hash, webgl_renderer, user_agent, timezone, screen_resolution at session start. Sensitive events (login, form submit, checkout) compare the live fingerprint; drift adds significant risk signals respectively.
OpenAI- and Anthropic-compatible base URL. Shield scans every prompt before forwarding and every completion before returning, blocks on policy hit, strips PII / secrets on stream.
Embedding-based detection across many attack categories. "Disregard earlier directives" ≈ "Ignore previous instructions" at cosine similarity. Ollama-local embeddings — zero per-request API cost.
Tool-call interception for Claude / Cursor / IDE agents. JSON Schema validation of arguments, chain-step limit, domain allowlist, explicit approval gates on destructive tools. Inspects every invocation against agent-protection rules before execution.
40+ patterns scanning input + output + tool calls before / after the model runs. Runs alongside the Semantic Firewall for layered defence.
5 tools exposed via MCP: shield_get_stats, shield_get_threats, shield_add_rule, shield_get_events, shield_verify_token. Let your Claude / Cursor agent investigate and act on incidents without leaving the chat.
AST-parsed SQL validation. Blocks UNION, INTO OUTFILE, pg_sleep, information_schema. LIMIT capped. Sensitive columns (password, api_key, ssn) auto-redacted. Query fingerprinting and honeytoken trap tables.
Wallet detection: BTC (P2PKH/Bech32), ETH, SOL, TRX, XRP, LTC, DOGE. BIP-39 seed phrase scanning (12/24 word). Signing prompts (EIP-712). Mining domains blocked. Payment redirect patterns.
Bigram gibberish detection (EN / DE / CS / SK / ES), 100+ disposable email domains, spam patterns (repeated chars, ALL CAPS, URL flood), suspicious name detection. Phishing and bad-content corpus covers 9 languages (see Phishing card). Additive scoring with cluster bonuses.
Multi-layered email + attachment scanner. Detects Slovak/Czech/Polish/German/French/Spanish/Serbian bodies stripped of diacritics (the strongest real-world phishing signal), password-hint social engineering across 9 languages, mainframe-mimicry filenames, and password-protected PDF / Office files. Brand-agnostic cluster catches the same shape with any impersonated company name.
check_upload() accepts form_fields. When a file upload is accompanied by form data (title, description, name, message), Content Quality Scoring runs on those fields too. A clean PDF with gibberish metadata still gets rejected at high-confidence score.
Every file passes a quarantine gate — extension allowlist, magic-byte MIME sniffing, Office macro detection, PDF JavaScript / Launch / OpenAction, SVG / HTML script injection. Per-tenant max size and extension list.
Python (FastAPI / Django / Flask), Node.js (Express / Next.js), PHP (WordPress / Laravel). Validates X-Shield-Token on every request. No token → 403. HMAC verify is cached with a short-lived cache per (token, path).
3-state breaker (closed / open / half_open) in all three backend SDKs. After consecutive transport errors → OPEN for a brief interval → 1 HALF_OPEN probe. 4xx doesn't trip the breaker. PHP uses APCu for cross-FPM-worker state. No more timeouts on every request during an upstream incident.
Reason → (machine_code, human_hint) map. /shield/verify and all 3 SDK 403 bodies return remediation + remediation_code. Legit false-positive users see "Your session expired — please reload" instead of a silent 403.
Drop-in PHP plugin: auto-injects the widget, ships middleware that validates Shield tokens on /wp-login.php and admin endpoints. Fail-closed by default, configurable.
Multi-dimensional rate limiting: per-IP, per-device, per-endpoint, with progressive escalation. Server-side counters with sliding windows.
IP geolocation via ip-api.com (short-lived cache). Per-site blocked / allowed country lists. Datacenter and proxy / Tor score modifiers. Page-load hard block with access-denied overlay before widget initialises.
Widget prevents form submission at high-confidence score. Red overlay: "Blocked by Corpilus Shield". Server-signed HMAC-SHA256 tokens auto-attached to fetch() via interceptor.
278 compiled detection patterns scanned automatically on every event — covers all OWASP Top 10 2025 categories. Payload-level inspection happens before scoring.
AI analyzér analyses events continuously. RAG context grounded in a curated security knowledge base. Auto-creates threats and rules from real observations.
Pre-built threat-intel context (mini-CAG). Bot signatures, attack patterns, OWASP samples baked in — new sites are protected from the first page view.
Shield's Security Knowledge collection ships with curated docs (OWASP Top 10, bot detection, incident response). Admins can upload their own company playbooks, post-mortem reports, or domain-specific threat intel. Every upload runs through a multi-layer scan. Clean docs land as trust_state='pending' until an admin explicitly promotes them to 'active'. Only active docs reach the AI analyzer's RAG context.
Anonymised pattern sharing — IPs reduced to /24, PII stripped, maturity gating (experimental → candidate → confirmed). One tenant's confirmed attacker becomes everyone's known threat within minutes.
Widget MutationObserver snapshots all <script> tags at boot. Any subsequently injected script is reported as script_integrity_violation telemetry with src, external/same-origin, content length, stable hash. Capped per page-load. Tenant allowlist for trusted CDNs.
Redis counter per SHA-256(account_id). Each failure over the cap adds significant risk score. A distributed attack that spreads many attempts over thousands of IPs still lands on the same account bucket — the attempt on victim@corp.com triggers challenge regardless of which IP sent it. Counter resets on a successful login.
GET /shield/password/breach-range/{prefix} — client computes SHA-1(password) locally in the browser, sends only the 5-char hex prefix, Shield proxies to api.pwnedpasswords.com and streams back the suffix+count list. Client compares its own suffix locally. Server never sees plaintext OR the full hash.
A/AAAA + MX record check on signup. Fail-open on timeout. Short-lived per-domain cache so rapid signup waves from the same throwaway domain don't re-hammer DNS.
25+ protected brands (Google, Microsoft, Apple, PayPal, Stripe, Meta, LinkedIn, Revolut, SK/CZ banks & insurers). Three-tier detector: 1) normalised exact match via homoglyph map, 2) Levenshtein distance for long brands, 3) brand-substring + decorative suffix (secure/login/support/verify/auth/signin/account/official/help).
Velocity counters per IP and per device. Recent-login requirement: no successful login from this device recently → significant risk signal. Session Continuity: password_change is now in the SENSITIVE event set, so full fingerprint drift blocks immediately. The classic 'attacker grabs session → changes password → locks out user' chain needs to survive all three gates.
Email (HTML), Slack, Discord, generic JSON webhooks. Weekly security report with stats, top threats, block rate. Per-webhook severity gate (low / medium / high / critical).
Every rule change, site config edit, manual block, AI decision is recorded with actor, timestamp, before/after diff. Hash-chained, signed, and exportable as auditor-ready evidence bundle.
HMAC-SHA256 tokens are minted server-side from the per-site secret and returned via /shield/events. The widget never holds the signing secret — a leaked site_key cannot be used to forge valid tokens.
PostgreSQL Row-Level Security forced on all shield_* tables. Each request runs under a tenant-scoped role — no application-layer bypass possible even if the API has a bug.
Tracks attempts per card BIN across rolling windows. Burst patterns consistent with card-testing activate progressive challenge or block. Thresholds are tenant-tunable; defaults are conservative.
When the same PSP-provided card fingerprint appears across multiple devices, sessions or tenants in a short window, attempts are correlated and scored as a coordinated attack. Raw PAN never leaves your PSP.
Tenant-scoped baseline of issuer-country distribution. A sudden concentration of attempts against issuers from a small number of countries — well above baseline — flags probable carding traffic.
Aggregates multiple signals — diverse BIN spread, same device or session, high failure ratio — into a named carding verdict. Upgrades decision severity when confirmed by post-charge PSP feedback.
Slow-burn attacks no longer slip through. Shield watches the whole conversation arc, not just one message at a time. An attacker who chats innocuously for many turns and only then pivots to data extraction or credential phishing is caught at the moment the pattern emerges.
Before your agent runs a tool, Shield asks: is the user's actual intent consistent with calling this tool? A request to summarise a document should not trigger a database export. A travel-booking chat should not be calling a payments tool. Mismatches are gated for review.
Compromised agents and curious LLMs typically scan the environment before acting — listing directories, reading config paths, enumerating environment variables. Shield flags this reconnaissance pattern early, before any data leaves the box.
A single conversation can never quietly burn your whole monthly AI budget. Shield enforces a per-session ceiling on tokens, tool calls and elapsed time. When the cap is reached the session is paused or terminated and the operator is notified.
Shield learns what normal looks like for each user — typical hours, typical actions, typical pace — and quietly flags the day that pattern breaks. A logged-in session that suddenly behaves nothing like the real user is treated as a possible takeover.
Decoy records, files and credentials are planted in places only an attacker would dig. Real users never see them. The moment one is touched, accessed or used, Shield has a high-confidence breach signal with effectively zero false positives.
Attackers hide malicious payloads inside layered encodings — base64, hex, percent-encoding, unicode escapes — to slip past simple string filters. Shield unwraps these layers before scoring, so the underlying attack is matched against the same protections as a plain-text version.
Before any rule, model or scorer update ships, it is run against a continuously growing corpus of real-world attack scenarios. If a release accidentally weakens detection on a known threat shape, the change is blocked at CI — not after a customer is breached.
Every security decision and config change is written to a tamper-evident chain. Edits and deletions are mathematically detectable. Auditors, regulators and incident responders get a trustworthy timeline even in the worst-case scenario where an attacker reaches admin credentials.
When something happens, you do not want to spend hours collecting logs. One click produces an encrypted, time-stamped bundle of the relevant tenant state — events, rules, decisions, recent traffic — ready to hand to your security team, lawyer or regulator.
Shield does not lock you into one AI vendor. Bring your own OpenAI / Anthropic / Google key, point at a dedicated Ollama instance, or run fully local. Set hard cost caps and routing rules. Your data flows only to providers you explicitly approve.
For your highest-risk actions Shield can require a hardware-rooted gesture: Touch ID, Windows Hello, a hardware security key. These are physical-presence checks that an LLM-powered agent or remote attacker cannot solve, no matter how clever the prompt.
For regulated, classified or disconnected environments Shield ships as a self-hosted package with signed release artifacts and a fully offline install path. Nothing has to talk to the public internet, but you still get rule, model and intel updates on your own schedule.
Shield can flag form, message and document submissions that look machine-generated rather than human-typed. Combined with behaviour and timing signals, this gives operators a clear answer to "is this real?" on application forms, CVs, support tickets and reviews.
The widget snapshots fetch, XHR, navigator and userAgent at boot and re-checks periodically. If a browser extension, injected script or third-party tag flips navigator.webdriver, wraps fetch, replaces XHR or mutates navigator descriptors, Shield reports the tampering and can refuse to issue a token. Per-attribute form.action / hidden-input change tracking is roadmap, not wired today.
Every request is checked in O(1) against 48,000+ real-time threat indicators refreshed frequently. No customer setup — platform-funded. Adds score boost on match.
Premium reputation services lookup on suspicious events only. Per-tenant Fernet-encrypted keys; no platform-shared keys, lookups happen on your quota.
All ten 2025 OWASP categories addressed — A01 access control, A02 misconfig, A03 supply chain, A04 crypto, A05 injection, A06 design, A07 auth, A08 integrity, A09 logging, A10 exception handling. Pattern set sourced from OWASP CRS v4, nuclei templates, PayloadsAllTheThings.
Identifies bots from OpenAI, Anthropic, Google-Extended, Perplexity, ByteDance, CommonCrawl, Meta, Apple, Cohere, Mistral, AllenAI, You.com and more. Tenant chooses block / monitor / allow per vendor.
log4j JNDI gadgets (${jndi:ldap://...}), LDAP injection, XML External Entity, MongoDB-style NoSQL operator injection — all blocked at the /shield/events ingest before reaching your backend.
Read-only view of all 278 patterns Shield runs on every request, grouped by category. Customers see exactly what's protecting them — no marketing claims to verify.
Click any card to expand for the full description and threat model.
LLM-driven attacks now defeat naive bot detection — realistic Playwright sessions, Bezier-curve mouse trajectories, image CAPTCHA solving. We shipped 8 phases of client-side hardening so the widget defends itself against adaptive adversaries.
Zero changes to your install — the same one-line snippet still works.
Runtime is bundled per-tenant per-week. Reverse engineering one tenant's widget doesn't help attack another.
Widget snapshots window.fetch, XMLHttpRequest, navigator at boot — re-checks every 15s. Malicious extensions get caught.
Backend no longer returns score or reason to the widget — closes the gradient leak adaptive attackers exploit.
Hardware-rooted UV challenge — Touch ID, Windows Hello, security keys. No LLM can solve it.
On-device k-means assigns every session to one of 8 profiles — 4 human, 3 bot, 1 unknown. Backend uses it as a coarse persona key.
Cross-session similarity score cached in localStorage. Sudden drops indicate spoofing.
When 10+ personas share a behavior + IP CIDR + UA family signature, an alert fires. Counter to warmup-then-strike attacks.
Pre-screen registrations: disposable email, phone validity, SSO presence. Stops account farms before they exist.
Pricing is based on protected domains, protected actions and support level. Core security layers are included in every plan, without hidden add-ons for essential protection.
Bot protection, forms, login, AI chat, MCP tools, uploads, SQL protection and audit are included in every Shield plan. You mainly choose by traffic volume, number of domains and required support level.
Protected action = form submission, login, checkout, upload, API call or AI/MCP request. A normal page view does not count.
Does not apply to Dedicated — everything is included in the offer.
When you approach a limit, we notify you first. No silent invoice surprises.
No diplomacy. If you looked elsewhere and did not find the answer, it is probably here.
Five attack families: bots and scrapers, account-takeover attempts, attacks through your AI (prompt injection, jailbreak, MCP abuse), malicious files and phishing in uploads, suspicious SQL payloads and data copying. The full capability matrix belongs to these families.
Yes. Shield does not have to replace your existing chat. It can work as a protective layer in front of an LLM endpoint, chat interface or MCP tools. It checks inputs, responses and tool calls against your company policy and can anonymize sensitive data before it is sent further.
Every decision has a confidence score, reason code and one-click override. When uncertain, Shield prefers a softer challenge (honeypot, PoW) instead of a hard 403. You can whitelist an IP, user ID or country in 30 seconds, and every block is auditable.
WAF and reCAPTCHA handle generic HTTP abuse and human-vs-bot checks at the edge. Shield works one layer deeper: prompt injection against LLM endpoints, MCP agent abuse, semantic form spam and suspicious SQL patterns that a regex-based engine can miss. Use it alongside your WAF, not instead of it.
All telemetry stays on EU infrastructure (Germany primary, EU-West failover). A signed DPA and sub-processor list are available before signature. IP addresses are hashed, with 30-day default retention that can be configured.
Default: embeddings and bot classification run on local Ollama models in our EU infrastructure, so ordinary traffic never sees a US LLM. Optional deeper analysis can call OpenAI / Anthropic / Google as a per-tenant opt-in, logged and switchable. The LLM proxy is BYOK — your API key and tokens remain yours, and we do not see the content.
No. Shield uses only strictly necessary cookies / localStorage for the security session. Under ePrivacy and GDPR, these are exempt from consent. Your existing cookie banner can cover the notice.
Three options: SDK for Next.js / Node / Python / PHP / WordPress, reverse-proxy mode without code changes, or an edge worker for Cloudflare / Vercel. The SDK path does not require a DNS change. First installation typically takes less than 30 minutes.
With the default local Ollama path, p95 overhead is in the low tens of milliseconds and runs in parallel with your request. Optional deep-analysis calls are async by default, so the user does not wait. Strict inline mode can be enabled on sensitive endpoints.
The default mode is fail open: the SDK lets the request through and logs the incident for audit. For sensitive endpoints such as login or payment, you can enable fail closed. The SDKs include a circuit breaker to avoid cascading timeouts.
You set the cap. At 80% of the limit, we alert you; at 100%, we close the meter and offer a pre-order add-on pack. No silent overage. No per-request surprises.
We do not offer a public free plan, but for a suitable project we can prepare a 14-day integration beta for your domain and the full protection flow. Contracts can be monthly or annual, with 10% off annual plans. Log export and cancellation are handled transparently within the billing cycle.
Fair question. Shield is part of the Corpilus platform and is designed for European companies that need to protect websites, e-shops, AI chat and data flows. SDKs and integration materials are provided to customers during deployment. The HMAC signing secret stays server-side, data is exportable, and enterprise deployments can include code escrow or partner continuity options.
Did not find an answer? Ask us directly →
We will run a security audit of your website, show bots and prompt-injection attempts you do not currently see, and review integration in 15 minutes. No slide deck — just your data.
External scan of the public surface. It does not replace antivirus, firewall or a formal penetration test.
A technical discussion about your infrastructure, website, chat and data flows.
Response and report within 3 business days.
Protection scope notice. Corpilus Shield is a real-time AI protection layer designed to extend standard security mechanisms for websites, e-shops and LLM applications, not replace them. It does not replace antivirus, firewall, penetration testing or a formal security audit. For comprehensive protection, we recommend combining several layers.