SYSTEMS OPERATIONAL — All security modules running

Security

How SecuProbe protects the platform and your data

A security testing service has to be held to the standard it applies to others. This page describes, in concrete terms, the controls that protect your account, your domains and your scan results.

No active test without proof of ownership

SecuProbe never runs an active security test on a domain until its ownership has been verified with a DNS record or a file placed on the site. This rule has no exception and applies to every plan, to the API and to scheduled scans.

Verification protects third parties as much as customers: it guarantees that SecuProbe cannot be used to probe a site by someone who does not control it. Administrators can also block a domain entirely, after which no account can add or scan it.

Outbound requests are confined

A scanner sends requests to addresses supplied by users, which is exactly the kind of feature attackers try to abuse. Every outbound request made by SecuProbe goes through a single guarded function that resolves the host, refuses private, loopback and cloud metadata addresses, limits ports, re-checks each redirect and caps the response size and duration.

A lint rule forbids any direct network call in the scanning code, so the guard cannot be bypassed by mistake.

Account protection

Passwords are stored as salted hashes and are never logged. Multi-factor authentication with a time-based code is available to every account and is mandatory for administrators. Sessions can be reviewed and revoked from the account settings.

API keys are shown once, at creation; only their SHA-256 hash is stored. Each key carries scopes that limit what it can do, and a key can be revoked at any time.

Isolation between accounts

Every query that reads a scan, a domain or a report filters on the owner of the resource. An automated test suite runs against a real database and attempts, for each route that takes an identifier, to read another account's data; the build fails if any attempt succeeds.

Shared report links are random and read-only: they give access to one report and nothing else in the account.

Hardened web application

SecuProbe serves a strict Content-Security-Policy with a per-request nonce, without unsafe-inline or unsafe-eval for scripts in production. HSTS with preload, X-Frame-Options DENY, a restrictive Permissions-Policy and a strict referrer policy are set on every response.

Every API route validates its input against a schema before touching the database, and every public route is rate limited per IP address. Authentication routes refuse requests when the rate limiter is unavailable instead of failing open.

Audit log, backups and recovery

Sensitive actions such as sign-ins, plan changes, administrative operations and data exports are written to an audit log that cannot be modified or deleted, including by administrators.

The database is backed up on a schedule to storage that we operate ourselves. Backups are encrypted before they leave the server, and the administration console includes a restoration test.

A delivery pipeline that tests itself

Each change goes through automated checks before it can be deployed: unit and integration tests, a dependency audit that blocks known high and critical vulnerabilities, secret detection across the whole history and static analysis.

Your data, your control

Scan data is processed in the European Union. You can export or delete your data from your account settings, and a Data Processing Agreement is available. The privacy policy lists what we collect and why.

If you find a vulnerability in SecuProbe, our responsible disclosure policy explains how to report it. We publish a security.txt file with the contact address.

Frequently asked questions

Can someone use SecuProbe to attack my website?

No. SecuProbe only runs active tests on domains whose ownership has been verified with a DNS record or a file, so a third party cannot launch them against a site they do not control.

Does SecuProbe store my passwords or API keys in clear text?

No. SecuProbe stores passwords as salted hashes and API keys as SHA-256 hashes; a key is displayed only once, when it is created.

Where is SecuProbe data hosted?

SecuProbe processes customer data in the European Union and keeps encrypted backups on storage that it operates itself.

How do I report a vulnerability in SecuProbe?

Follow the responsible disclosure policy linked from this page. It lists the contact address, the scope and the response times we commit to.

Test your own site with the same rigour

Create a free account and run your first scan in 60 seconds.