Arsenly
Tools
Free Tools
Pricing
Resources
Sign in Get started
← All tools

KeyHacks

Exploitation & OOB

Validate leaked API keys across 153 services + scan source code for known key formats - gitleaks-style, but in your browser.

What is KeyHacks?

KeyHacks is the reference for what to do after you find a secret. For 153 services across 19 categories - cloud (AWS, GCP, Azure, DO, Linode, Hetzner, Cloudflare, Vercel, Netlify, Render, Fly.io), payments (Stripe live/test, Square, Braintree, Razorpay, Plaid), AI/ML (OpenAI, Anthropic, Cohere, Hugging Face, Replicate, Mistral, Groq, Perplexity), messaging (Slack bot/user/app/webhook, Discord, Telegram, Twilio, Vonage, MessageBird), email (SendGrid, Mailgun, Postmark, Mailchimp), databases (MongoDB Atlas, Supabase, PlanetScale, Neon, Upstash, Pinecone, Weaviate), auth (Auth0, Okta, Clerk, Stytch, Cognito), observability (Datadog, New Relic, Sentry, PagerDuty), CRM (HubSpot, Salesforce, Klaviyo), productivity (Notion, Airtable, Linear, Atlassian), Web3 (Infura, Alchemy, QuickNode, Etherscan, Moralis), social, search, storage and more - the tool shows the exact validation request, the security impact, and the regex pattern that identifies the key in code.

Two modes: Browse - filter the 153-entry library by category, severity (low / medium / high / critical) or free-text search, then copy the read-only curl/CLI call to confirm whether a key is live. Scan - paste source code, a .env file, a minified JS bundle, or any text; the tool regex-matches against every high-signal key format in the library and returns hits with severity + impact + masked sample. 100% client-side - pasted text never leaves your browser.

Reporting a raw key is weak. Reporting that the key authenticates, with the specific impact statement (e.g. "Charges to OpenAI account, no upper cap unless org-set"), is a valid, high-impact bug.

What you get

  • 153 services across 19 categories - Cloud · DNS/CDN · Dev Tools · AI/ML · Payments · Communications · Email · Push · Maps · Auth/Identity · Databases · Observability · CRM · Productivity · Storage · Search · Web3 · Social · Misc APIs.
  • Severity ratings - every key is rated low / medium / high / critical so you know whether you've found something that warrants a same-day report or a low-severity disclosure.
  • Impact statements - concrete one-liner of what an attacker gains: "Full S3 read/write + IAM control", "Send SMS / make calls / read message logs", "Charges to OpenAI account", etc.
  • Validation commands - ready-to-run curl / aws / gcloud / mongosh / psql one-liners that confirm a key is live without modifying data.
  • Regex patterns - the canonical key format for each service. Copy and use with grep / gitleaks / trufflehog / Burp Macros to find more.
  • Scan mode (paste-and-detect) - built-in gitleaks-style detector. Paste a JS bundle / .env / source dump; the tool runs every high-signal pattern in the library and shows hits sorted by severity. 74 high-signal patterns covered (with literal-anchor prefixes like `AKIA`, `ghp_`, `xoxb-`, `sk-live_`, `eyJ`, etc.).
  • Category chips + severity filter + free-text search - narrow the 153 entries instantly. Filter by `aws`, `write`, `mongodb`, `critical` - pick any combination.
  • Client-side only - the JSON catalog loads once; everything after that runs in your browser. Pasted source in scan mode never touches our servers.

Where it fits in your workflow

  • After finding a key in a public GitHub repo / Wayback URL / JS bundle, paste it into the Browse search and run the validation command to confirm impact for your report.
  • Drop a leaked .env file, a webpack bundle or a memory dump into Scan mode and the tool tells you every recognised secret format inside - severity-sorted.
  • Cross-reference findings with Dork Builder (GitHub secret-search dorks) and Owner Footprint (find other assets under the same org that might leak more).
  • Pair with Payload Library for the OAuth / SSRF / file-upload chains that often combine with leaked-key findings.
Use KeyHacks

Sign in to access this tool.

Create free account Sign in

At a glance

CategoryExploitation & OOB
RunsIn your browser
Token cost Free - no tokens
Access Free
Status● Live

Frequently asked questions

Is it safe to test a found key?

The validation commands shown are minimal and read-only by design (e.g. sts get-caller-identity for AWS, auth.test for Slack, users/me for Twitter). Never use a leaked key to modify data, run write operations or generate billable usage. Authentication confirmation is enough impact for any bug-bounty report. Stay within authorised scope; in some jurisdictions even read-access to a system you don't own is unauthorised access.

How does Scan mode work?

Every entry in the library has a regex matching its canonical key format. Scan mode runs all 74 high-signal regexes (the ones with at least 3 literal anchor characters like AKIA, ghp_, xoxb-, sk-) against your pasted text in your browser. Matches are deduped, severity-sorted, and masked (only first 8 + last 4 chars shown) to reduce the risk of accidental leakage to onlookers. Generic-format patterns (e.g. just [a-f0-9]{32}) are intentionally skipped to avoid false-positive floods.

Why are some patterns missing from Scan mode?

Patterns without a distinctive prefix (e.g. plain 32-hex strings) match too many innocent strings and would drown out real findings. They're still usable in Browse mode where you have context. For broader scanning use dedicated tools (gitleaks, trufflehog) with the regex patterns from this library.

Does anything I paste in Scan mode get sent to the server?

No. 100% client-side. The JSON catalog is fetched once on load. After that, scan mode runs entirely in your browser; pasted text is processed and discarded locally.

How is this different from gitleaks / trufflehog?

Those are CLI tools that scan filesystems / git history. KeyHacks Scan is a quick-paste interactive companion: drop in a JS bundle or a single file, get an instant severity-ranked report. Use both: Scan for fast triage, gitleaks/trufflehog for full repo / org-level scans.

Explore more tools →