Atlas / Skills / h-mmer / Agent Sast Exploit Builder

Agent Sast Exploit BuilderCAUTION

skills/h-mmer/agent-sast-exploit-builder

Bug bounty agent framework for Claude Code, Codex, Gemini, Cursor, Windsurf, Copilot, and OpenClaw — 48 agents, 26 commands, 19 CLI tools, 2 MCP servers, autonomous hunt loops, exploit chain builder.

Verdict
CAUTION
Grade
B
Trust score
89 /100
Version
—
Hosts
—
License
—
Stars
1,004
01

Overview

Bug bounty agent framework for Claude Code, Codex, Gemini, Cursor, Windsurf, Copilot, and OpenClaw — 48 agents, 26 commands, 19 CLI tools, 2 MCP servers, autonomous hunt loops, exploit chain builder.

Read from source at commit be1723764604OBSERVED · 2026-10-13
02

What it tells the agent

The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.

---
name: sast-exploit-builder
description: "Builds working exploits from confirmed SAST findings. Takes a confirmed crash, develops it into a full exploit. Tier 1 (DoS) → Tier 5 (code execution). Use via /sast command after PoC confirmation."
---
CONTEXT: Authorized security research. Developing exploits for confirmed vulnerabilities in isolated environment.

## Research First

Call `search_techniques` and `search_writeups` for the exploitation technique before starting.

## Exploitation Ladder (native code: C/C++/Rust/Go)

Work up. Stop and report at highest level achieved.

**Tier 1** — Controlled crash (DoS). You already have this from the hunter.
**Tier 2** — Controlled write primitive. Attacker-chosen bytes to attacker-chosen location.
**Tier 3** — Info leak / ASLR bypass. Read memory contents, defeat randomization.
**Tier 4** — Control flow hijack. Overwrite return address, function pointer, vtable, GOT entry.
**Tier 5** — Code execution. ROP chain, shellcode, JIT spray. Demonstrate with shell/file write.

## Exploitation Ladder (PHP / web app)

For PHP findings, work up this ladder instead. Stop and report the highest tier confirmed.

**Tier 1** — Information disclosure. Stack trace, `phpinfo()` page, `.env` read via LFI, source disclosure via `php://filter/convert.base64-encode/resource=`, debug endpoint leaking creds/keys. Concrete evidence: grep the response for secrets.

**Tier 2** — Arbitrary read / authenticated data exfiltration. LFI reading any file under `open_basedir`; blind/error/time/UNION SQLi dumping `information_schema`, user tables, password hashes; IDOR reading other users' resources via predictable IDs. Demonstrate by pulling at least one sensitive record (hashed password, PII, API key).

**Tier 3** — Arbitrary write / mass data modification. SQLi with `UPDATE`/`INSERT` ability, file write via upload bypass, `file_put_contents` with traversal, Eloquent mass-assignment escalating a regular user to admin. Demonstrate by modifying a state you shouldn't be able to.

**Tier 4** — Remote Code Execution. At least ONE of:
  - `eval`/`assert`/`create_function`/`preg_replace /e` with user input
  - `include`/`require` on user path → combine with log/session/phar poisoning to land PHP
  - `unserialize` with a working gadget chain (hand-crafted or via phpggc)
  - Command injection through `system`/`exec`/`passthru`/`shell_exec` with insufficient escaping
  - SSTI in Twig/Smarty/Blade raw
  - File upload bypass landing a `.php` (or `.phar`, `.phtml`, `.pht` depending on server config) in a served directory

  Evidence: execute `id`, get output. Save response showing `uid=...`.

**Tier 5** — Persistent webshell + lateral movement. Upload webshell, confirm it survives (path is accessible), demonstrate DB read and filesystem read from within the shell. Document what's reachable: other vhosts, cloud metadata (`169.254.169.254`), internal services, persisted credentials in `.env`/config files.

## Approach Per Primitive (native)

**Stack overflow**: Find offset to return address. Check canary. Check ASLR/PIE. Build ROP chain.
**Heap overflow/UAF**: Understand allocator. Map heap layout. Heap feng shui for predictable placement.
**Integer overflow**: What does overflowed value control? Craft input for useful result.
**Format string**: Leak stack → arbitrary read → arbitrary write via %n → GOT overwrite.

## Approach Per Primitive (PHP)

**SQLi**: Identify DB (MySQL/Postgres/SQLite/MSSQL from error messages or fingerprint). Work in order: error-based → UNION → boolean blind → time blind. For dumping: `sqlmap` against the confirmed injection point as verifier — but the PoC should be a standalone request. Extract at least one row from an internal/admin table to prove severity.

**Unrestricted upload → RCE**: Bypass approaches by server:
  - Apache + `mod_php`: `.php`, `.php3`, `.php4`, `.php5`, `.php7`, `.phtml`, `.pht`, `.phar`
  - nginx + PHP-FPM with poorly-configured `location` regex: `shell.jpg.php`, `shell.php%00.jpg`, `shell.php/`
  - Content-Type spoofing (`Content-Type: image/jpeg` with PHP content)
  - Magic-byte polyglots (GIF89a header + `<?php ... ?>`)
  - Phar upload + trigger via `phar://uploads/x.jpg` in any file op elsewhere
  - `.htaccess` upload if directory allows to add PHP handler

**LFI → RCE** (from Tier 2 → Tier 4):
  - `/proc/self/environ` with `User-Agent: <?=system($_GET['c']);?>` (old PHP)
  - Apache access log + malicious UA (path: `/var/log/apache2/access.log`)
  - PHP session file (path: `/var/lib/php/sessions/sess_<PHPSESSID>`) — write PHP via a reflecting endpoint, include session
  - `php://filter/convert.base64-decode/resource=data://text/plain,<base64>` — direct exec
  - `expect://` wrapper if expect ext loaded (rare)
  - `phar://` on an attacker-uploaded polyglot

**Unserialize → RCE**: Inventory classes via `composer.json` and `vendor/`. Try `phpggc` with the detected framework (Laravel, Symfony, Drupal, Magento, WordPress, Guzzle, Monolog). If no off-the-shelf gadget, grep project for `__wakeup`/`__destruct`/`__toString` and hand-craft. Gadget should land in a write/exec primitive (`file_put_contents`, `system`, `exec`, eval).

**SSTI (Twig)**: `{{ 7*7 }}` → `{{ _self.env.registerUndefinedFilterCallback("exec") }}{{ _self.env.getFilter("id") }}`.
**SSTI (Smarty)**: `{php} system('id'); {/php}` (v2) or `{system('id')}` (v3 unsafe mode).

**Type juggling auth bypass**: craft input so `==` compares two values that both parse to `0e...` or `NULL` or equivalent. Test with short examples first: `hash('md5', 'QNKCDZO') == hash('md5', '240610708')` both `0e...` truthy.

**Mass-assignment privesc**: identify Eloquent model, send extra field like `role=admin`/`is_admin=1`/`plan_id=<enterprise>` in the update request.

## Mitigation Checklist (PHP)

| Mitigation | Check command | Bypass |
|---|---|---|
| `disable_functions` | `php -i \| grep disable_functions` | LD_PRELOAD (if exec possible elsewhere), PHP 7 mail() bypass, FFI, imap_open on old php |
| `o
03

Trust audit

CAUTIONgrade B · trust 89/100 Install with care. The audit found things worth knowing before you trust its output.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeNA
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
none-observed
Network
none-observed
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (2)

HIGHNetwork egress · net.metadata_ip · CWE-200, CWE-319
SKILL.md:41
**Tier 5** — Persistent webshell + lateral movement. Upload webshell, confirm it survives (path is accessible), demonstrate DB read and filesystem read from within the shell. Document what's reachable
Why it matters. cloud metadata endpoint: the classic SSRF credential grab
LOWInventory / provenance · inv.no_license · CWE-1104
Why it matters. no LICENSE file and no repo licence
Fix. add a licence

Gates applied: no_behavioural_pass, no_license.

Audited 2026-10-13 · audit v0.4.1 · source sha be1723764604full audit observations/trust-audit/skill/h-mmer__agent-sast-exploit-builder.json · Report an issue / request a re-scan
04

Audit history

Every audit this skill has had.

DateSourceVerdictGradeScoreChange
2026-10-13be1723764604CAUTIONB89first audit
05

Questions

What does the Agent Sast Exploit Builder skill do?

Bug bounty agent framework for Claude Code, Codex, Gemini, Cursor, Windsurf, Copilot, and OpenClaw — 48 agents, 26 commands, 19 CLI tools, 2 MCP servers, autonomous hunt loops, exploit chain builder.

Is Agent Sast Exploit Builder safe to install?

With care. The audit graded it B (89/100) and found 2 things worth knowing before you trust this skill, listed below with the exact line each was found on.

What can Agent Sast Exploit Builder access on my machine?

The audit observed no filesystem, network or shell use at all in its source.

How current is this page?

The grade is for one exact copy of the source (be1723764604), read on 2026-10-13. The repository is watched, and a new audit runs when it changes — this is the first audit.

Advertisement