Chris Farhood 47a6e4933a
CI / Type-check & lint (pull_request) Successful in 16s
CI / Build & push worker image (pull_request) Has been skipped
CI / Build & push API image (pull_request) Has been skipped
feat: backport auth-validation preflight + email_login credentials
Backport upstream Shannon PR #335:
- Add credential validation activity that drives a real browser login
  before the full pipeline, catching bad credentials early
- New email_login credentials type for magic-link and email-OTP flows
- Make credentials.password optional for passwordless flows
- Playwright stealth config (chrome.runtime, plugin simulation, UA)
- Centralize prompt directory resolution into resolvePromptDir helper
- New AUTH_LOGIN_FAILED error code with non-retryable classification
- Remove dangerous-pattern validation on credentials.password
- Pipeline-testing stub for auth validation (returns success)
- Auth validation timeout of 10 minutes for browser-based login
- .playwright directory workspace overlay for CLI/Docker

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-20 00:59:27 +00:00
2026-04-16 12:54:16 -07:00
2025-10-03 19:35:08 -07:00
2025-10-03 19:35:08 -07:00
2025-10-03 19:35:08 -07:00
2025-11-26 18:45:36 -08:00

Trebuchet — AI Pentester

Trebuchet is a fork of Shannon by Keygraph, wrapped with a REST API and Kubernetes tooling for cluster-based deployments.

What is Trebuchet?

Trebuchet is an API-driven AI pentester built on top of Shannon's autonomous penetration testing engine. It performs white-box security testing of web applications and APIs by combining source code analysis with live exploitation.

Unlike the upstream Shannon CLI, Trebuchet is designed to run as a service on Kubernetes — scans are triggered via REST API, orchestrated by Temporal, and executed in ephemeral worker pods.

Important

White-box only. Trebuchet expects access to your application's source code and repository layout.

Features

  • Fully Autonomous Operation: A single API call launches the full pentest. Handles 2FA/TOTP logins (including SSO), browser navigation, exploitation, and report generation without manual intervention.
  • Reproducible Proof-of-Concept Exploits: The final report contains only proven, exploitable findings with copy-and-paste PoCs. Vulnerabilities that cannot be exploited are not reported.
  • OWASP Vulnerability Coverage: Identifies and validates Injection, XSS, SSRF, and Broken Authentication/Authorization.
  • Code-Aware Dynamic Testing: Analyzes source code to guide attack strategy, then validates findings with live browser and CLI-based exploits against the running application.
  • Integrated Security Tooling: Leverages Nmap, Subfinder, WhatWeb, and Schemathesis during reconnaissance and discovery phases.
  • Parallel Processing: Vulnerability analysis and exploitation phases run concurrently across all attack categories.

Architecture

Trebuchet uses a multi-agent architecture that combines white-box source code analysis with dynamic exploitation across five phases:

        +----------------------+
        |   Pre-Reconnaissance |
        |  (nmap, subfinder,   |
        |  whatweb, code scan) |
        +----------+-----------+
                   |
                   v
        +----------------------+
        |   Reconnaissance     |
        |  (attack surface     |
        |   mapping)           |
        +----------+-----------+
                   |
                   v
        +----------+----------+
        |          |          |
        v          v          v
  +-----------+ +---------+ +---------+
  | Vuln      | | Vuln    | |   ...   |
  |(Injection)| |  (XSS)  | |         |
  +-----+-----+ +----+----+ +----+----+
        |             |           |
        v             v           v
  +-----------+ +---------+ +---------+
  | Exploit   | | Exploit | |   ...   |
  |(Injection)| |  (XSS)  | |         |
  +-----+-----+ +----+----+ +----+----+
        |             |           |
        +------+------+-----------+
               |
               v
        +----------------------+
        |      Reporting       |
        +----------------------+

Each scan runs as an ephemeral Kubernetes Job with a per-invocation Temporal task queue, enabling concurrent scans with different target repositories.

Deployment

Kubernetes manifests live in a separate repository: farhoodlabs/trebuchet-infra.

Sample Reports

Sample penetration test reports from industry-standard vulnerable applications:

  • OWASP Juice Shop — 20+ vulnerabilities including auth bypass and database exfiltration. View Report
  • c{api}tal API — ~15 critical/high vulnerabilities including command injection and auth bypass. View Report
  • OWASP crAPI — 15+ critical/high vulnerabilities including JWT attacks and database compromise. View Report

Benchmark

Shannon Lite scored 96.15% (100/104 exploits) on a hint-free, source-aware variant of the XBOW security benchmark.

Full results with detailed agent logs and per-challenge pentest reports

Disclaimers

Warning

DO NOT run Trebuchet on production environments. It actively executes attacks to confirm vulnerabilities. Use only on sandboxed, staging, or local development environments.

Caution

You must have explicit, written authorization from the owner of the target system before running Trebuchet. Unauthorized scanning is illegal.

  • Verification is Required: Human oversight is essential to validate all reported findings. LLMs can still generate hallucinated content.
  • Targeted Vulnerabilities: Broken Authentication & Authorization, Injection, XSS, SSRF.
  • Cost: A full test run typically takes 1-1.5 hours and may cost ~$50 USD using Claude Sonnet.

License

Released under the GNU Affero General Public License v3.0 (AGPL-3.0).

Support


Based on Shannon by Keygraph

S
Description
No description provided
Readme AGPL-3.0 123 MiB
Languages
TypeScript 91.7%
JavaScript 6.3%
Dockerfile 1.2%
Go Template 0.7%
Shell 0.1%