Security

How we protect your data — and what to do if you find a vulnerability.

Found a vulnerability?

Email [email protected] — never open a public issue.

We acknowledge within 48 hours and provide a mitigation timeline within 7 days.

Reporting

Send to [email protected] with:

We'll acknowledge within 48 hours and provide a mitigation timeline within 7 days.

Coordinated disclosure: please hold public disclosure for up to 90 days from acknowledgement so we can ship a fix. We'll credit you in the advisory unless you prefer to remain anonymous.

Cryptography

Threat model

In scope

Assumptions

Out of scope

Defenses we ship

ThreatDefense
Brute-force loginbcrypt + per-IP rate limit
Token theftRefresh-token rotation; reuse of revoked token logs out all sessions
API key leakHashed storage; revocation in one click
XSSStrict CSP, no inline event handlers, escape-on-render
CSRFSameSite cookies + Bearer tokens preferred for state-changing calls
ClickjackingX-Frame-Options: DENY + frame-ancestors 'none'
MITMHSTS preload + TLS 1.2+ enforced
Webhook spoofingHMAC-SHA256 signature on every payload
SQL injectionPrisma ORM with parameterized queries throughout
Stolen DB dumpNo plaintext secrets stored; passwords + API keys are hashes

Operational security

Bug bounty

We don't run a formal monetary bounty yet. For confirmed non-trivial findings we send a swag pack and credit you in the advisory. We'll add cash bounties when our customer base warrants it.

Compliance roadmap

PGP key

For sensitive disclosure, fetch our PGP key:

curl https://droidfleet.dev/.well-known/pgp.asc

Fingerprint: (published with first signed advisory)