exploit-hunt — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited exploit-hunt (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
The offensive counterpart to eskills:security-bar. security-bar asks _"is this built right?"_; this asks _"can an attacker actually reach a sink?"_. Use it for a deeper, on-demand pass on a codebase — not as a per-task lens. It is not in the default eskills:task-flow quality stage; reach for it when a change touches a real boundary, or when auditing an app end-to-end.
Unreachable is not a finding. A theoretically-unsafe call that no external input can reach is a note, not a vulnerability. Prove that user-controlled input travels from a real boundary to a meaningful sink — or drop it. Bias hard toward remotely reachable, user-driven paths; throw away the rest.
| Pattern | CWE | Impact |
|---|---|---|
| SSRF via user-controlled URL | 918 | internal network, cloud metadata theft |
| Auth bypass in middleware / API guards | 287 | unauthorized account or data access |
| Remote deserialization / upload→RCE | 502 | code execution |
| SQL injection in a reachable endpoint | 89 | exfiltration, auth bypass, data loss |
| Command injection in a request handler | 78 | code execution |
| Path traversal in file-serving paths | 22 | arbitrary file read/write |
| Auto-triggered XSS | 79 | session/admin compromise |
| Open RLS / PostgREST direct write reachable with the anon key | 284/639 | read/overwrite any row, bypassing the app |
pickle.loads / torch.load / equivalent with no remote patheval() / exec() in CLI-only toolingshell=True on a fully hardcoded commandThe React/PWA UI is not the boundary. My apps ship the Supabase anon key, so the real attack surface is PostgREST + Edge Functions / RPCs — anything reachable with that key is a public API, regardless of what the UI exposes. So:
that lives only in front-end code does not exist for an attacker (see eskills:security-bar for the RLS / server-side-PIN rules this feeds).
fetches a user-supplied URL (SSRF) or shells out, a storage path built from user input.
background jobs, parsers, any table exposed through PostgREST.
file path, the DOM?
request or curl against PostgREST is usually enough).
semgrep --config=auto --severity=ERROR --severity=WARNINGto seed candidates, then manually drop the unreachable / test / vendored hits.
Per finding: file:line → reachability (which boundary, which input) → what the attacker achieves → the fix, plus the minimal PoC. State the boundary explicitly — if you can't name how it's reached, it goes in a separate "theoretical / needs-confirmation" list, not the findings. Don't re-report an already-accepted, documented risk.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.