Awesome Backend Security Auditors [](https://awesome.re)
June 25, 2026 · View on GitHub
Curated, keyless security auditors for the modern backend stack — BaaS platforms, headless CMSs, GraphQL engines, workflow runners and local LLM servers. Every tool here runs locally and confirms each leak with an active anonymous probe instead of just inferring it from config.
The single most common production breach in this stack is boring and universal: a backend left readable by the public / anonymous role. Supabase ships RLS-disabled tables, Firebase ships allow read: if true, Strapi/Directus/Payload leave the Public role on find, Hasura sets unauthorized-role: public, Ollama binds 0.0.0.0 with no auth. The tools below find that — and prove it — one command at a time.
Contents
- Why active-probe
- BaaS & Databases
- Headless CMS
- GraphQL
- Workflow & Automation
- Local LLM / AI
- Secrets & Exposure
- MCP servers
- Reference reading
🔍 Free audit
Not sure if your backend is exposed? Open a free-audit request with your URL and I'll run the matching auditor and post the findings + exact fixes back — free, read-only, nothing downloaded or changed. If you'd rather have the fixes done for you, there's a $99 fixed-scope audit.
Guides
- How to tell if your backend is leaking data (and fix it) — a platform-by-platform checklist with a one-line command to confirm each leak.
- Is your Ollama server exposed? — 175,000+ instances run with no auth. Check yours in one command.
- Supabase is locking down public table access on Oct 30, 2026 — are you ready? — pre-deadline checklist to find and fix anon-exposed tables.
- Can opening a repo in Claude Code run code or steal your API key? — the
.claude/config attack surface (CVE-2025-59536) and how to scan a repo before you open it.
Why active-probe
A linter that reads your rules file tells you what might be exposed. An active probe sends the exact unauthenticated request an attacker would and shows you the bytes that actually come back. Every tool in this list is:
- Keyless where possible — point it at a URL, no admin token needed for the public-exposure checks.
- Local-first — your data and credentials never leave your machine.
- Zero-dependency, MIT — auditable in one file, free forever.
BaaS & Databases
- supabase-security — RLS-disabled tables, anon grants, public buckets and
SECURITY DEFINERfunctions; active anon-key probe confirms each leak. npm - firebase-security — the infamous
match /{document=**} { allow read, write: if true; }, expired test-mode rules and auth-without-ownership infirestore.rules. npm - pocketbase-security — empty API rules (fully public),
@request.auth.id != ""over-permissive rules, dangeroustrueliterals. npm - appwrite-security —
anyrole grants, document-security misconfig and over-permissive collection permissions. npm - nhost-security — Hasura/Nhost anonymous role with open SELECT, missing row filters, public introspection. npm
- convex-security — public queries/mutations reachable without auth on a Convex deployment's HTTP API, CORS reflection and metadata leaks. npm
Headless CMS
- strapi-security — public-role read exposure, CORS reflection,
/api/usersenumeration, GraphQL introspection and the relational-populate admin oracle (CVE-2026-27886 class). npm - directus-security — public-role data exposure, search-param field enumeration (CVE-2025-30352), unauth version/schema leak (CVE-2025-53887) and GraphQL introspection. npm
- payload-security — collections readable without auth, field-level leaks (
apiKey/email/hash/salt), user enumeration and open first-user registration. npm
GraphQL
- hasura-security — open introspection without the admin secret, the anonymous
publicunauthorized role leaking tables/rows, an unauthenticated console and a missing admin secret. npm
Workflow & Automation
- n8n-security — unauthenticated
/rest/settingsconfig+version leak, open owner-setup takeover, version vs known critical CVEs (CVE-2026-21858 "Ni8mare", CVSS 10.0) and no-auth editor/REST API. npm
Local LLM / AI
- ollama-security — a publicly bound, unauthenticated Ollama API (175k+ found exposed) proven via anonymous probes of
/api/tags,/api/ps,/api/versionand CORS reflection — without downloading a model or running a workload. npm - dotclaude-security — scans a repo's
.claude/config (hooks, MCP servers, env, permissions) for the RCE (CVE-2025-59536) and API-key-exfiltration (CVE-2026-21852) footguns that fire when you open an untrusted repo. npm
Secrets & Exposure
- dotenv-exposure-check — probes a live URL for accidentally-served secret artifacts (
.env,.git/,.js.mapsource maps,.DS_Store, backups) and confirms each by fetching and fingerprinting the bytes. npm
MCP servers
- web-exposure-mcp — an MCP server that points an AI agent at a deployed URL and confirms which secret files are actually being served, by fetching the bytes and fingerprinting content (not trusting status codes). npm
Reference reading
- OWASP API Security Top 10
- Supabase: securing your data with RLS
- Firebase Security Rules
- Strapi: Users & Permissions
- Hasura: the
HASURA_GRAPHQL_UNAUTHORIZED_ROLEfootgun - Ollama has no authentication by default (CNVD-2025-04094)
Contributing
Found a tool that fits — keyless, local-first, actively probes to confirm? PRs welcome. Keep entries one line, alphabetical within a section, with a [npm] link where published.
License
To the extent possible under law, the contributors have waived all copyright and related rights to this work.
