agentic-bug-hunter 6.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (192) hide show
  1. agentic_bug_hunter-6.0.0/CHANGELOG.md +283 -0
  2. agentic_bug_hunter-6.0.0/LICENSE +21 -0
  3. agentic_bug_hunter-6.0.0/MANIFEST.in +4 -0
  4. agentic_bug_hunter-6.0.0/PKG-INFO +962 -0
  5. agentic_bug_hunter-6.0.0/README.md +937 -0
  6. agentic_bug_hunter-6.0.0/agentic_bug_hunter.egg-info/PKG-INFO +962 -0
  7. agentic_bug_hunter-6.0.0/agentic_bug_hunter.egg-info/SOURCES.txt +190 -0
  8. agentic_bug_hunter-6.0.0/agentic_bug_hunter.egg-info/dependency_links.txt +1 -0
  9. agentic_bug_hunter-6.0.0/agentic_bug_hunter.egg-info/entry_points.txt +3 -0
  10. agentic_bug_hunter-6.0.0/agentic_bug_hunter.egg-info/requires.txt +5 -0
  11. agentic_bug_hunter-6.0.0/agentic_bug_hunter.egg-info/top_level.txt +1 -0
  12. agentic_bug_hunter-6.0.0/bughunter/__init__.py +8 -0
  13. agentic_bug_hunter-6.0.0/bughunter/__main__.py +29 -0
  14. agentic_bug_hunter-6.0.0/bughunter/agent.py +1874 -0
  15. agentic_bug_hunter-6.0.0/bughunter/agents/README.md +17 -0
  16. agentic_bug_hunter-6.0.0/bughunter/agents/autopilot.md +218 -0
  17. agentic_bug_hunter-6.0.0/bughunter/agents/chain-builder.md +92 -0
  18. agentic_bug_hunter-6.0.0/bughunter/agents/credential-hunter.md +170 -0
  19. agentic_bug_hunter-6.0.0/bughunter/agents/recon-agent.md +124 -0
  20. agentic_bug_hunter-6.0.0/bughunter/agents/recon-ranker.md +93 -0
  21. agentic_bug_hunter-6.0.0/bughunter/agents/report-writer.md +193 -0
  22. agentic_bug_hunter-6.0.0/bughunter/agents/token-auditor.md +195 -0
  23. agentic_bug_hunter-6.0.0/bughunter/agents/validator.md +133 -0
  24. agentic_bug_hunter-6.0.0/bughunter/agents/web3-auditor.md +174 -0
  25. agentic_bug_hunter-6.0.0/bughunter/brain.py +2749 -0
  26. agentic_bug_hunter-6.0.0/bughunter/engine.py +857 -0
  27. agentic_bug_hunter-6.0.0/bughunter/mcp/README.md +19 -0
  28. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/README.md +40 -0
  29. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/__init__.py +3 -0
  30. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/adapters.py +413 -0
  31. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/claude-config.json +11 -0
  32. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/cli.py +102 -0
  33. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/opencode-config.json +12 -0
  34. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/policy/__init__.py +26 -0
  35. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/policy/decisions.py +46 -0
  36. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/policy/engine.py +190 -0
  37. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/policy/tool_meta.py +95 -0
  38. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/redact.py +31 -0
  39. agentic_bug_hunter-6.0.0/bughunter/mcp/bughunter-mcp/server.py +362 -0
  40. agentic_bug_hunter-6.0.0/bughunter/mcp/burp-mcp-client/README.md +101 -0
  41. agentic_bug_hunter-6.0.0/bughunter/mcp/burp-mcp-client/config.json +13 -0
  42. agentic_bug_hunter-6.0.0/bughunter/mcp/burp-mcp-client/opencode-config.json +16 -0
  43. agentic_bug_hunter-6.0.0/bughunter/mcp/caido-mcp-client/README.md +84 -0
  44. agentic_bug_hunter-6.0.0/bughunter/mcp/caido-mcp-client/opencode-config.json +14 -0
  45. agentic_bug_hunter-6.0.0/bughunter/mcp/hackerone-mcp/config.json +10 -0
  46. agentic_bug_hunter-6.0.0/bughunter/mcp/hackerone-mcp/opencode-config.json +10 -0
  47. agentic_bug_hunter-6.0.0/bughunter/mcp/hackerone-mcp/server.py +336 -0
  48. agentic_bug_hunter-6.0.0/bughunter/memory/README.md +16 -0
  49. agentic_bug_hunter-6.0.0/bughunter/memory/__init__.py +48 -0
  50. agentic_bug_hunter-6.0.0/bughunter/memory/audit_log.py +374 -0
  51. agentic_bug_hunter-6.0.0/bughunter/memory/hunt_journal.py +69 -0
  52. agentic_bug_hunter-6.0.0/bughunter/memory/pattern_db.py +169 -0
  53. agentic_bug_hunter-6.0.0/bughunter/memory/research_case.py +115 -0
  54. agentic_bug_hunter-6.0.0/bughunter/memory/rotation.py +123 -0
  55. agentic_bug_hunter-6.0.0/bughunter/memory/schemas.py +560 -0
  56. agentic_bug_hunter-6.0.0/bughunter/serve.py +17 -0
  57. agentic_bug_hunter-6.0.0/bughunter/tools/README.md +129 -0
  58. agentic_bug_hunter-6.0.0/bughunter/tools/__init__.py +6 -0
  59. agentic_bug_hunter-6.0.0/bughunter/tools/_auth_helper.sh +75 -0
  60. agentic_bug_hunter-6.0.0/bughunter/tools/_spray_http_form.py +279 -0
  61. agentic_bug_hunter-6.0.0/bughunter/tools/_spray_oauth.py +216 -0
  62. agentic_bug_hunter-6.0.0/bughunter/tools/auth_session.py +304 -0
  63. agentic_bug_hunter-6.0.0/bughunter/tools/banner.py +151 -0
  64. agentic_bug_hunter-6.0.0/bughunter/tools/banner.sh +105 -0
  65. agentic_bug_hunter-6.0.0/bughunter/tools/breach_checker.py +240 -0
  66. agentic_bug_hunter-6.0.0/bughunter/tools/bypass_403.sh +391 -0
  67. agentic_bug_hunter-6.0.0/bughunter/tools/cicd_scanner.sh +148 -0
  68. agentic_bug_hunter-6.0.0/bughunter/tools/cloud_recon.sh +112 -0
  69. agentic_bug_hunter-6.0.0/bughunter/tools/cors_scanner.py +261 -0
  70. agentic_bug_hunter-6.0.0/bughunter/tools/credential_store.py +92 -0
  71. agentic_bug_hunter-6.0.0/bughunter/tools/crlf_scanner.py +191 -0
  72. agentic_bug_hunter-6.0.0/bughunter/tools/cve_scan.sh +108 -0
  73. agentic_bug_hunter-6.0.0/bughunter/tools/dashboard.py +596 -0
  74. agentic_bug_hunter-6.0.0/bughunter/tools/dom_xss_harness.py +214 -0
  75. agentic_bug_hunter-6.0.0/bughunter/tools/eol_check.py +276 -0
  76. agentic_bug_hunter-6.0.0/bughunter/tools/external_arsenal.sh +170 -0
  77. agentic_bug_hunter-6.0.0/bughunter/tools/graphql_audit.sh +340 -0
  78. agentic_bug_hunter-6.0.0/bughunter/tools/h1_idor_scanner.py +595 -0
  79. agentic_bug_hunter-6.0.0/bughunter/tools/h1_mutation_idor.py +381 -0
  80. agentic_bug_hunter-6.0.0/bughunter/tools/h1_oauth_tester.py +281 -0
  81. agentic_bug_hunter-6.0.0/bughunter/tools/h1_race.py +252 -0
  82. agentic_bug_hunter-6.0.0/bughunter/tools/h1_run.sh +159 -0
  83. agentic_bug_hunter-6.0.0/bughunter/tools/hai_browser_recon.js +171 -0
  84. agentic_bug_hunter-6.0.0/bughunter/tools/hai_payload_builder.py +726 -0
  85. agentic_bug_hunter-6.0.0/bughunter/tools/hai_probe.py +193 -0
  86. agentic_bug_hunter-6.0.0/bughunter/tools/hunt.py +938 -0
  87. agentic_bug_hunter-6.0.0/bughunter/tools/intel_engine.py +414 -0
  88. agentic_bug_hunter-6.0.0/bughunter/tools/jwt_scanner.py +197 -0
  89. agentic_bug_hunter-6.0.0/bughunter/tools/lead_board.py +436 -0
  90. agentic_bug_hunter-6.0.0/bughunter/tools/learn.py +474 -0
  91. agentic_bug_hunter-6.0.0/bughunter/tools/llm_redteam.py +243 -0
  92. agentic_bug_hunter-6.0.0/bughunter/tools/memory_gc.py +183 -0
  93. agentic_bug_hunter-6.0.0/bughunter/tools/memory_migrate.py +95 -0
  94. agentic_bug_hunter-6.0.0/bughunter/tools/mindmap.py +366 -0
  95. agentic_bug_hunter-6.0.0/bughunter/tools/multipart_mutator.py +275 -0
  96. agentic_bug_hunter-6.0.0/bughunter/tools/nosqli_scanner.py +209 -0
  97. agentic_bug_hunter-6.0.0/bughunter/tools/oob_listener.py +210 -0
  98. agentic_bug_hunter-6.0.0/bughunter/tools/osint_employees.sh +207 -0
  99. agentic_bug_hunter-6.0.0/bughunter/tools/param_discovery.sh +83 -0
  100. agentic_bug_hunter-6.0.0/bughunter/tools/poc_bundler.py +644 -0
  101. agentic_bug_hunter-6.0.0/bughunter/tools/port_scanner.py +218 -0
  102. agentic_bug_hunter-6.0.0/bughunter/tools/prompt_safety.py +23 -0
  103. agentic_bug_hunter-6.0.0/bughunter/tools/recon_adapter.py +347 -0
  104. agentic_bug_hunter-6.0.0/bughunter/tools/recon_engine.sh +729 -0
  105. agentic_bug_hunter-6.0.0/bughunter/tools/research_log.py +201 -0
  106. agentic_bug_hunter-6.0.0/bughunter/tools/safe_http.py +99 -0
  107. agentic_bug_hunter-6.0.0/bughunter/tools/sast_scan.py +171 -0
  108. agentic_bug_hunter-6.0.0/bughunter/tools/scope_aggregator.sh +212 -0
  109. agentic_bug_hunter-6.0.0/bughunter/tools/scope_checker.py +267 -0
  110. agentic_bug_hunter-6.0.0/bughunter/tools/secrets_hunter.sh +129 -0
  111. agentic_bug_hunter-6.0.0/bughunter/tools/sneaky_bits.py +231 -0
  112. agentic_bug_hunter-6.0.0/bughunter/tools/spray_orchestrator.sh +242 -0
  113. agentic_bug_hunter-6.0.0/bughunter/tools/takeover_scanner.sh +91 -0
  114. agentic_bug_hunter-6.0.0/bughunter/tools/target_selector.py +320 -0
  115. agentic_bug_hunter-6.0.0/bughunter/tools/token_scanner.py +816 -0
  116. agentic_bug_hunter-6.0.0/bughunter/tools/validate.py +989 -0
  117. agentic_bug_hunter-6.0.0/bughunter/tools/visual_triage.py +173 -0
  118. agentic_bug_hunter-6.0.0/bughunter/tools/vuln_scanner.sh +620 -0
  119. agentic_bug_hunter-6.0.0/bughunter/tools/waf_encoder.py +230 -0
  120. agentic_bug_hunter-6.0.0/bughunter/tools/waf_response_analyzer.py +920 -0
  121. agentic_bug_hunter-6.0.0/bughunter/tools/wordlist_engine.sh +183 -0
  122. agentic_bug_hunter-6.0.0/bughunter/tools/zendesk_idor_test.py +390 -0
  123. agentic_bug_hunter-6.0.0/bughunter/tools/zero_day_fuzzer.py +597 -0
  124. agentic_bug_hunter-6.0.0/bughunter/wordlists/README.md +14 -0
  125. agentic_bug_hunter-6.0.0/bughunter/wordlists/REFERENCES.md +51 -0
  126. agentic_bug_hunter-6.0.0/bughunter/wordlists/api-endpoints.txt +298 -0
  127. agentic_bug_hunter-6.0.0/bughunter/wordlists/common.txt +4751 -0
  128. agentic_bug_hunter-6.0.0/bughunter/wordlists/params.txt +6453 -0
  129. agentic_bug_hunter-6.0.0/bughunter/wordlists/raft-medium-dirs.txt +29999 -0
  130. agentic_bug_hunter-6.0.0/bughunter/wordlists/sensitive-files.txt +109 -0
  131. agentic_bug_hunter-6.0.0/pyproject.toml +47 -0
  132. agentic_bug_hunter-6.0.0/requirements.txt +3 -0
  133. agentic_bug_hunter-6.0.0/setup.cfg +4 -0
  134. agentic_bug_hunter-6.0.0/tests/test_agent_dispatcher_hardening.py +215 -0
  135. agentic_bug_hunter-6.0.0/tests/test_agent_dispatcher_scope.py +89 -0
  136. agentic_bug_hunter-6.0.0/tests/test_agent_time_budget_gate.py +118 -0
  137. agentic_bug_hunter-6.0.0/tests/test_audit_log.py +216 -0
  138. agentic_bug_hunter-6.0.0/tests/test_auth_session.py +355 -0
  139. agentic_bug_hunter-6.0.0/tests/test_autopilot_guard.py +245 -0
  140. agentic_bug_hunter-6.0.0/tests/test_brain_auto_detect.py +198 -0
  141. agentic_bug_hunter-6.0.0/tests/test_brain_litellm.py +145 -0
  142. agentic_bug_hunter-6.0.0/tests/test_breach_checker.py +150 -0
  143. agentic_bug_hunter-6.0.0/tests/test_bughunter_mcp.py +88 -0
  144. agentic_bug_hunter-6.0.0/tests/test_bypass_403_review_fixes.py +39 -0
  145. agentic_bug_hunter-6.0.0/tests/test_config_file_permissions.py +21 -0
  146. agentic_bug_hunter-6.0.0/tests/test_cookie_redaction.py +44 -0
  147. agentic_bug_hunter-6.0.0/tests/test_cors_scanner.py +77 -0
  148. agentic_bug_hunter-6.0.0/tests/test_credential_store.py +129 -0
  149. agentic_bug_hunter-6.0.0/tests/test_crlf_scanner.py +50 -0
  150. agentic_bug_hunter-6.0.0/tests/test_dashboard.py +291 -0
  151. agentic_bug_hunter-6.0.0/tests/test_dom_xss_harness.py +79 -0
  152. agentic_bug_hunter-6.0.0/tests/test_exploit_command_gate.py +57 -0
  153. agentic_bug_hunter-6.0.0/tests/test_exploit_loop_budget.py +95 -0
  154. agentic_bug_hunter-6.0.0/tests/test_false_positives.py +265 -0
  155. agentic_bug_hunter-6.0.0/tests/test_hackerone_mcp.py +123 -0
  156. agentic_bug_hunter-6.0.0/tests/test_hackerone_server.py +221 -0
  157. agentic_bug_hunter-6.0.0/tests/test_hunt_session_dirs.py +140 -0
  158. agentic_bug_hunter-6.0.0/tests/test_hunt_target_types.py +101 -0
  159. agentic_bug_hunter-6.0.0/tests/test_install_standalone.py +103 -0
  160. agentic_bug_hunter-6.0.0/tests/test_intel_engine.py +191 -0
  161. agentic_bug_hunter-6.0.0/tests/test_jwt_scanner.py +82 -0
  162. agentic_bug_hunter-6.0.0/tests/test_lead_board.py +70 -0
  163. agentic_bug_hunter-6.0.0/tests/test_llm_redteam.py +56 -0
  164. agentic_bug_hunter-6.0.0/tests/test_memory_gc.py +153 -0
  165. agentic_bug_hunter-6.0.0/tests/test_mindmap.py +141 -0
  166. agentic_bug_hunter-6.0.0/tests/test_model_selection.py +78 -0
  167. agentic_bug_hunter-6.0.0/tests/test_nosqli_scanner.py +52 -0
  168. agentic_bug_hunter-6.0.0/tests/test_oob_listener.py +54 -0
  169. agentic_bug_hunter-6.0.0/tests/test_opencode_agent_frontmatter.py +47 -0
  170. agentic_bug_hunter-6.0.0/tests/test_pattern_db.py +221 -0
  171. agentic_bug_hunter-6.0.0/tests/test_plugin_manifest.py +31 -0
  172. agentic_bug_hunter-6.0.0/tests/test_poc_bundler.py +279 -0
  173. agentic_bug_hunter-6.0.0/tests/test_port_scanner.py +72 -0
  174. agentic_bug_hunter-6.0.0/tests/test_prompt_injection_delimiting.py +134 -0
  175. agentic_bug_hunter-6.0.0/tests/test_recon_adapter.py +305 -0
  176. agentic_bug_hunter-6.0.0/tests/test_research_learning.py +118 -0
  177. agentic_bug_hunter-6.0.0/tests/test_rotation.py +297 -0
  178. agentic_bug_hunter-6.0.0/tests/test_safe_http_redirects.py +212 -0
  179. agentic_bug_hunter-6.0.0/tests/test_safe_method_policy.py +92 -0
  180. agentic_bug_hunter-6.0.0/tests/test_sast_scan.py +65 -0
  181. agentic_bug_hunter-6.0.0/tests/test_schemas.py +155 -0
  182. agentic_bug_hunter-6.0.0/tests/test_schemas_session_id.py +170 -0
  183. agentic_bug_hunter-6.0.0/tests/test_scope_checker.py +236 -0
  184. agentic_bug_hunter-6.0.0/tests/test_shell_injection_fixes.py +59 -0
  185. agentic_bug_hunter-6.0.0/tests/test_sneaky_bits.py +155 -0
  186. agentic_bug_hunter-6.0.0/tests/test_target_selector.py +290 -0
  187. agentic_bug_hunter-6.0.0/tests/test_tls_verification_default.py +40 -0
  188. agentic_bug_hunter-6.0.0/tests/test_token_scanner.py +595 -0
  189. agentic_bug_hunter-6.0.0/tests/test_validation_handoff.py +129 -0
  190. agentic_bug_hunter-6.0.0/tests/test_visual_triage.py +49 -0
  191. agentic_bug_hunter-6.0.0/tests/test_vuln_scanner_review_fixes.py +25 -0
  192. agentic_bug_hunter-6.0.0/tests/test_zendesk_idor_tool.py +17 -0
@@ -0,0 +1,283 @@
1
+ # Changelog
2
+
3
+ ## Unreleased
4
+
5
+ ### Added
6
+ - **Fluxion AI provider** (`fluxion`) for standalone `bughunter` / `brain.py` — optional OpenAI-compatible gateway at `https://fluxionai.world/v1` via `FLUXION_API_KEY`. Not the default; choose option 9 in `bughunter setup`, `BRAIN_PROVIDER=fluxion`, or `--provider fluxion`. README partner placement + setup docs link [docs](https://docs.fluxionai.world/user-guide/help-center) and [Model Plaza](https://fluxionai.world/model-plaza).
7
+ - **Claude Code plugin manifest** (`.claude-plugin/plugin.json`) — declares skills, commands, agents, and hooks so the repo passes Claude Code / marketplace plugin validation.
8
+ - **LiteLLM provider** (`litellm`) for standalone `bughunter` / `brain.py` — one gateway reaches 100+ LLM backends (OpenAI, Anthropic, Gemini, Bedrock, Vertex, Groq, …), routed by the `provider/model` prefix using each provider's own key, or via a LiteLLM proxy (`LITELLM_API_KEY` / `LITELLM_API_BASE`). Choose option 9 in `bughunter setup` or set `BRAIN_PROVIDER=litellm`. Uses `drop_params=True` for cross-provider compatibility, omits blank creds so each provider's own env var is honored, and lists models via live discovery (proxy `/models`, or `get_valid_models()` in SDK mode) — no hardcoded list. Opt-in in auto-detect so it never preempts an already-configured provider.
9
+ - **DOM XSS confirmation harness** (`/domxss`, `tools/dom_xss_harness.py`) — drives headless Chromium via Playwright, injects uniquely-tagged canary payloads into every query + URL-fragment parameter, and reports `[CONFIRMED]` **only when the browser actually executes** the payload (dialog / hooked sink / console), vs `[POSSIBLE]` for reflected-but-neutralized. Turns the toolkit's biggest "confirmation-poor" gap (client-side/JS-execution bugs) into proven findings, and captures a screenshot for the report. Payload generation, URL injection, and verdict classification are pure and unit-tested; Playwright is lazy-imported so the suite needs no browser. Playwright registered in `external_arsenal.sh`.
10
+ - **Continuous integration** — `.github/workflows/tests.yml` runs the full `pytest` suite on every push to `main` and every pull request, across Python 3.10 / 3.11 / 3.12. A status badge is shown in the README.
11
+
12
+ ### Changed
13
+ - **Minimum Python is now stated as 3.10** (was advertised as 3.9). The codebase uses PEP 604 `X | None` unions at runtime (e.g. `memory/schemas.py`), which raise `TypeError` on 3.9 — CI confirmed 3.9 never actually worked. README badge updated to match.
14
+
15
+ ### Fixed
16
+ - **Go / Dependency Graph package identity** — add `go.mod` declaring `module github.com/awarexone/Agentic-Bug-Hunter` (matches GitHub `go-import`). Pre-rename tags were indexed by the Go proxy as `github.com/shuvonsec/claude-bug-bounty` `+incompatible`, which is why Insights → Dependents showed that path. Old requires still resolve via the repo redirect.
17
+ - **`tests/test_bypass_403_review_fixes.py`** re-pointed at the current WAF-aware bypass verdict pipeline (block-baseline sampling + `_is_real_bypass` signature/length gating + confirmed-vs-uncertain output split). It was still asserting the pre-#40 `_normalize_body` internals that the rewrite removed, so it failed on every run once CI was added.
18
+ - **Port/service scanning** (`/portscan`, `tools/port_scanner.py`) — wraps `naabu` with an `smap` passive fallback and flags the non-web services the HTTP-only recon pipeline can't see (Redis, Docker API, exposed DBs, RDP, SMB). Parsing + service classification are pure and unit-tested. Closes a `[registered-not-wired]` gap.
19
+ - **Visual triage / PoC screenshots** (`/screenshot`, `tools/visual_triage.py`) — screenshots live hosts via `eyewitness`/`aquatone`/`httpx -screenshot` into a self-contained HTML gallery that doubles as report evidence. Tool selection, command build, and gallery rendering are unit-tested. Closes a `[registered-not-wired]` gap and the "no automatic PoC capture" gap.
20
+ - **SAST source audit** (`/sast`, `tools/sast_scan.py`) — runs Semgrep security packs over fetched JS/source and normalizes results into the toolkit's severity + `POSSIBLE` confidence model (SAST is a lead, not proof — `/validate` still requires a runtime PoC). Result parsing is unit-tested. Closes a `[registered-not-wired]` gap.
21
+ - **AwareXone sponsorship & branding** — README now leads with an "Open for Sponsorship" callout and a "Powered by AwareXone.com" credit (hero badge + footer). Same credit added to the project site footer, plus a `.github/FUNDING.yml` so the repo shows a Sponsor button.
22
+ - **OpenRouter provider** (`openrouter`) for standalone `bughunter` / `brain.py` — set `OPENROUTER_API_KEY`, choose option 7 in `bughunter setup`, or `BRAIN_PROVIDER=openrouter`. OpenAI-compatible gateway with default model `anthropic/claude-sonnet-4.6` and a short curated model list (same pattern as other cloud providers).
23
+ - **OrcaRouter provider** (`orcarouter`) for standalone `bughunter` / `brain.py` — set `ORCAROUTER_API_KEY`, choose option 8 in `bughunter setup`, or `BRAIN_PROVIDER=orcarouter`. OpenAI-compatible gateway with default model `openai/gpt-4o` and a short curated model list (same pattern as other cloud providers).
24
+ - **Explicit Ollama model selection** — `bughunter setup` now lists installed local models and persists the selected provider/model pair; `bughunter setup --provider ollama --model <name>` supports non-interactive configuration. `--model` / `BRAIN_MODEL` provide one-off overrides, and explicit choices no longer silently fall back to or race a different model.
25
+ - **Standalone installer updates** — rerunning `install.sh --agent standalone` now refreshes the active managed `bughunter` path instead of allowing an older system installation to shadow a newer user-local link, and verifies the updated symlink target.
26
+ - **SDK-free Ollama fallback** — standalone provider setup and chat now use Ollama's local HTTP API when the Python `ollama` package is unavailable; dependency installation failures are reported instead of silently ignored.
27
+ - **Expanded uninstaller** — `uninstall.sh` now covers standalone and every supported agent harness, with managed-file checks, confirmation, configuration preservation by default, explicit `--purge-config` support, and compatibility with its previous `--claude` / `--opencode` / `--both` flags.
28
+
29
+ ## v4.3.2 — AI Hunt Playbook (Jun 2026)
30
+
31
+ ### Added
32
+ - AI-assisted hunt guidance in `skills/bb-methodology/SKILL.md` and `skills/bug-bounty/SKILL.md`: use the model for feature decomposition, sibling-endpoint diffing, role matrices, and chain planning, while keeping proof requirements anchored to live requests and cross-account deltas.
33
+ - AI-assisted planning signals in `tools/mindmap.py` so generated hunt checklists now surface hypothesis expansion and validation-gate reminders alongside the traditional vuln-class checklist.
34
+
35
+ ## v4.3.1 — Bug Fixes + Hardening (Jun 2026)
36
+
37
+ ### Fixed
38
+ - **`tools/vuln_scanner.sh` parse failure** — removed the broken duplicate XSS merge block and restored a single dalfox path against `urls/with_params.txt`.
39
+ - **macOS bash 3.2 auth crashes** — replaced empty-array auth splats with the bash 3.2-safe form across recon/scanning scripts so anonymous runs no longer abort under `set -u`.
40
+ - **`tools/scope_checker.py` CLI gap** — added a real deterministic CLI with asset checks, URL filtering, JSON output, and clean missing-file errors.
41
+ - **`tools/hai_probe.py` / `tools/zendesk_idor_test.py` help-path crashes** — both tools now handle missing `requests` gracefully and print useful `--help` output without importing the dependency first.
42
+
43
+ ### Added
44
+ - `requirements.txt` for the Python helper tools and test runner.
45
+ - `tests/test_scope_checker.py` coverage for the new deterministic scope checker CLI.
46
+
47
+ ### Changed
48
+ - `install.sh` now supports Claude Code, OpenCode, Pi Agent, Codex-style installs, shared Agent Skills, and project-local installs.
49
+ - `install_tools.sh` attempts to install Python dependencies after the binary tool pass.
50
+ - `tools/validate.py` persists `submission-notes.md` and `validation.json` beside each report skeleton.
51
+ - `tools/vuln_scanner.sh` now writes `summary.json` so validation can ingest the scanner confidence and tier counts directly.
52
+ - `tools/validate.py` now accepts `--scanner-summary` and records the scanner handoff in `validation.json` and the report skeleton.
53
+ - `tools/bypass_403.sh` now compares normalized response bodies before marking a bypass confirmed.
54
+ - Added regression coverage for the scanner handoff, bypass normalization, and false-positive classes that commonly come back N/A.
55
+
56
+ ## v4.2.3 — Auto-rotation Stop Hook (May 2026)
57
+
58
+ ### Added
59
+ - **`.claude/settings.json`** with a `Stop` hook that runs `python3 -m tools.memory_gc --rotate` (quietly, non-blocking via `async: true`) whenever a Claude Code session ends. Long-running hunts that never trigger an inline write-time rotation now still get GC'd at session end. Hook is a no-op if `tools/memory_gc.py` is missing or the working dir isn't the repo root, so it is safe to ship in the project file.
60
+
61
+ ---
62
+
63
+ ## v4.2.2 — Restore ReconAdapter (May 2026)
64
+
65
+ ### Fixed
66
+ - **`tools/recon_adapter.py`** was missing the `ReconAdapter` class that `tests/test_recon_adapter.py` imports — the test file had been silently uncollectable since the rename in 0db9640. Added the class with read accessors for the subdir-nested layout that `recon_engine.sh` writes (`subdomains/all.txt`, `live/urls.txt`, `urls/with_params.txt`, `js/potential_secrets.txt`, etc.), graphql extraction, fallback path resolution, summary counts, and a `normalize()` method that creates the derived files brain.py expects (`priority/`, `api_specs/`, `urls/graphql.txt`, `subdomains/resolved.txt`).
67
+
68
+ ### Tests
69
+ - 31 previously-uncollectable tests in `tests/test_recon_adapter.py` now run and pass. Suite total: **215 passing** (was 184).
70
+
71
+ ---
72
+
73
+ ## v4.2.1 — PatternDB Perf Fix (May 2026)
74
+
75
+ ### Fixed
76
+ - **`PatternDB.save()` was O(n²)** — every save re-read the entire JSONL file to dedup. At 10k entries this pegged CPU for 5+ minutes per insert pass. Replaced with an in-memory dedup index of `(target, vuln_class, technique)` tuples, populated lazily on first save and updated per write. 10k saves now complete in ~2 seconds instead of 5+ minutes.
77
+
78
+ ### Added
79
+ - `tests/test_pattern_db.py::TestPatternPerformance`: 4 new tests covering the perf bound, dedup correctness at 10k entries, lazy-load via reopen, and corrupted-line resilience.
80
+
81
+ ### Resolved
82
+ - **TODO-8 (final item)** — `PatternDB.save()` performance test at 10,000 entries.
83
+
84
+ ---
85
+
86
+ ## v4.2.0 — Memory Rotation (Apr 2026)
87
+
88
+ ### Added
89
+ - `memory/rotation.py`: size-based JSONL rotator under `fcntl.LOCK_EX`. Default cap 10 MB, keep 3 backups.
90
+ - `tools/memory_gc.py` + `/memory-gc` slash command: scan, rotate, or purge backups across the hunt-memory tree.
91
+ - `tests/test_rotation.py`: 22 tests covering rotation primitives, auto-rotation in `AuditLog`/`PatternDB`, multi-process concurrent writes (with and without rotation), and disk-full OSError propagation.
92
+
93
+ ### Changed
94
+ - `memory/audit_log.py` `AuditLog.log()`: calls `rotate_if_needed` before each append.
95
+ - `memory/pattern_db.py` `PatternDB.save()`: calls `rotate_if_needed` before each append.
96
+ - `memory/__init__.py`: exports rotation helpers.
97
+
98
+ ### Resolved
99
+ - **TODO-7** — memory GC / rotation policy.
100
+ - **TODO-8** (partial) — concurrent-write stress test + disk-full OSError propagation test.
101
+
102
+ ---
103
+
104
+ ## v4.1.0 — Patch: Bug Fixes + Assets (Apr 2026)
105
+
106
+ ### Fixed
107
+ - **TODO-4 resolved**: `hunt.py` BASE_DIR path resolution — `hunt.py` was relocated to `tools/` so `TOOLS_DIR`/`BASE_DIR`/`RECON_DIR`/`FINDINGS_DIR` now resolve correctly. All 5 open TODOs are now closed.
108
+
109
+ ### Added
110
+ - `logo-banner.svg` and `logo-icon.svg` — SVG vector assets for banner and icon variants
111
+
112
+ ---
113
+
114
+ ## v4.0.0 — Meme Coin Security Module (Apr 2026)
115
+
116
+ ### Added — New Skill Domain
117
+ - `skills/meme-coin-audit/SKILL.md`: **Meme coin rug pull detection + 8 token bug classes**
118
+ - Mint authority / freeze authority checks
119
+ - Bonding curve exploit patterns
120
+ - LP lock verification
121
+ - Honeypot detection
122
+ - Token metadata tampering
123
+ - Solana-specific audit path (SPL token checks)
124
+ - Pre-dive kill signals for obvious rugs
125
+
126
+ ### Added — Tool
127
+ - `tools/token_scanner.py`: automated token red flag scanner supporting EVM + Solana
128
+ - EVM: ABI analysis, ownership checks, hidden mint functions, transfer tax detection
129
+ - Solana: SPL token account authority checks, metadata validation
130
+
131
+ ### Changed
132
+ - `CLAUDE.md`: Skills count 8 → 9, added `meme-coin-audit` to skill table; Commands 13 → 14, added `/token-scan`
133
+ - `README.md`: Updated skill domain count
134
+
135
+ ---
136
+
137
+ ## v3.1.1 — CI/CD GitHub Actions Security Expansion (Mar 2026)
138
+
139
+ ### Changed — Existing Skill Enhancement
140
+ - `SKILL.md` CI/CD Pipeline section: **5 checklist items → 6 categories, 30+ checks, PoC templates, hunting workflow, and GHSA reference table**
141
+ - **Category 1: Code Injection & Expression Safety** — expression injection, envvar/envpath/output clobbering, argument injection, SSRF via workflow, taint source catalog, fix patterns (env var extraction, heredoc delimiters, end-of-options markers)
142
+ - **Category 2: Pipeline Poisoning & Untrusted Checkout** — untrusted checkout on `pull_request_target`/`workflow_run`, TOCTOU with label-gated approvals, reusable workflow taint, cache poisoning, artifact poisoning, artipacked credential leakage
143
+ - **Category 3: Supply Chain & Dependency Security** — unpinned actions (tag → SHA), impostor commits from fork network, ref confusion, known vulnerable actions, archived actions, unpinned container images
144
+ - **Category 4: Credential & Secret Protection** — secret exfiltration, secrets in artifacts, unmasked `fromJson()` bypass, excessive `secrets: inherit`, hardcoded credentials
145
+ - **Category 5: Triggers & Access Control** — dangerous triggers without/with partial mitigation, label-based approval bypass, bot condition spoofing, excessive GITHUB_TOKEN permissions, self-hosted runners in public repos, OIDC token theft
146
+ - **Category 6: AI Agent Security** — unrestricted AI triggers, excessive tool grants to AI agents, prompt injection via workflow context
147
+ - **Hunting workflow** — 6-step recon→scan→triage→verify→PoC→prove pipeline
148
+ - **Expression injection PoC template** — ready-to-use `gh issue create` payload
149
+ - **10 real-world GHSAs** — proven Critical/High advisories with affected actions
150
+ - **A→B signal chains** — 7 CI/CD-specific escalation paths
151
+ - **Tooling**: integrated [sisakulint](https://sisaku-security.github.io/lint/) — 52 rules, taint propagation, 81.6% GHSA coverage
152
+ - **Deep-dive guide**: Decision tree for verifying sisakulint findings based on 36 real-world paid reports (Bazel $13K, Flank $7.5K, PyTorch $5.5K, GitHub $20K, DEF CON $250K+)
153
+
154
+ ### Added — Tool Integration
155
+ - `tools/cicd_scanner.sh`: standalone sisakulint wrapper — org/repo scanning, recursive reusable workflow analysis, parsed summary output with per-rule breakdown
156
+ - `install_tools.sh`: sisakulint binary auto-download with OS/arch detection (v0.2.11, linux/darwin, amd64/arm64/armv6), cicd_scanner install now optional (`--with-cicd-scanner`)
157
+ - `tools/recon_engine.sh` Phase 8: auto-detects GitHub orgs from recon data (httpx, JS endpoints, URLs), invokes `cicd_scanner.sh` per org
158
+ - `tools/hunt.py`: surfaces CI/CD findings between recon and vuln scan stages via `check_cicd_results()`
159
+ - `tests/test_cicd_scanner.sh`: shell tests for cicd_scanner (syntax check + CLI behavior)
160
+
161
+ ## v3.1.0 — Hunting Methodology Skill (Mar 2026)
162
+
163
+ ### Added — New Skill Domain
164
+ - `skills/bb-methodology/SKILL.md`: **Hunting mindset + 5-phase non-linear workflow** — the "HOW to think" layer that was missing from the toolkit
165
+ - **Part 1: Mindset** — Define/Select/Execute discipline, 4 thinking domains (critical, multi-perspective, tactical, strategic), developer psychology reverse-engineering, Amateur vs Pro 7-phase comparison, Feature-based vs Vuln-based route selection, anti-patterns
166
+ - **Part 2: Workflow** — 5-phase non-linear flow (Recon → Map → Find → Prove → Report) with decision trees per phase, input-type → vuln-class routing, Error vs Blind detection cascade, escalation decision trees per vuln class
167
+ - **Part 3: Navigation & Timing** — "I'm stuck because..." quick reference table, 20-minute rotation clock, tool routing by phase with rationale, session start/end checklists
168
+
169
+ ### Changed
170
+ - `CLAUDE.md`: Skills count 7 → 8, added `bb-methodology` to skill table
171
+ - `README.md`: Updated skill domain count to 8
172
+ - `SKILL.md`: Added cross-reference to `bb-methodology` after CRITICAL RULES section
173
+
174
+ ## v3.1.0 — CVSS 4.0 + TODO Fixes (Mar 2026)
175
+
176
+ ### Changed — CVSS 3.1 → 4.0
177
+ - `tools/validate.py`: Full CVSS 4.0 interactive scorer. Replaces 8-metric CVSS 3.1 with 11-metric CVSS 4.0. New metrics: AT (Attack Requirements), VC/VI/VA (Vulnerable System), SC/SI/SA (Subsequent System, incl. Safety). Scope metric removed. UI now has three values (None / Passive / Active). Score verified via FIRST.org calculator link in output.
178
+ - `agents/report-writer.md`: Updated CVSS section to 4.0. New metric descriptions, updated common-pattern examples, verification link.
179
+
180
+ ### Fixed — TODOs resolved
181
+ - `agents/autopilot.md` already implemented TODO-2 (safe HTTP methods) and TODO-3 (circuit breaker) — marked resolved in TODOS.md
182
+ - `tools/hunt.py` BASE_DIR path resolution was already correct (TODO-4 was based on wrong assumption about file location) — marked resolved
183
+ - `tools/recon_adapter.py` created (TODO-5): auto-detects nested vs flat recon format, returns unified `ReconData`. `normalize_to_nested()` migrates legacy flat output. CLI: `python3 tools/recon_adapter.py example.com --migrate`
184
+
185
+ ---
186
+
187
+ ## v2.1.0 — 20 Vuln Classes + Payload Expansion (Mar 2026)
188
+
189
+ ### Config
190
+ - Recon commands now read the Chaos API key from the `$CHAOS_API_KEY` environment variable for cleaner setup across different environments.
191
+
192
+ ### Added — New Vuln Classes
193
+ - `web2-vuln-classes`: **MFA/2FA Bypass** (class 19) — 7 bypass patterns: rate limit, OTP reuse, response manipulation, workflow skip, race, backup codes, device trust escalation
194
+ - `web2-vuln-classes`: **SAML/SSO Attacks** (class 20) — XML signature wrapping (XSW), comment injection, signature stripping, XXE in assertion, NameID manipulation + SAMLRaider workflow
195
+
196
+ ### Added — security-arsenal Payloads
197
+ - **NoSQL injection**: MongoDB `$ne`/`$gt`/`$regex`/`$where` operators, URL-encoded GET parameter injection
198
+ - **Command injection**: Basic probes, blind OOB (curl/nslookup), space/keyword bypass techniques, Windows payloads, filename injection context
199
+ - **SSTI detection**: Universal probe for all 6 engines (Jinja2, Twig, Freemarker, ERB, Spring, EJS) + RCE payloads for each
200
+ - **HTTP smuggling payloads**: CL.TE, TE.CL, TE.TE obfuscation variants, H2.CL
201
+ - **WebSocket testing**: IDOR/auth bypass messages, CSWSH PoC, Origin validation test, injection via messages
202
+ - **MFA bypass payloads**: OTP brute force (ffuf), race async script, response manipulation, device trust cookie test
203
+ - **SAML attack payloads**: XSW XML templates, comment injection, signature stripping workflow, XXE payload, SAMLRaider CLI
204
+
205
+ ### Added — web2-recon Skill
206
+ - **Setup section**: `$CHAOS_API_KEY` export instructions, subfinder config.yaml with 5 API sources, nuclei-templates update command
207
+ - **crt.sh** passive subdomain source (no API key needed) added as Step 0
208
+ - **Port scanning**: naabu command for non-standard ports (8080/8443/3000/9200/6379/etc.)
209
+ - **Secret scanning**: trufflehog + SecretFinder JS bundle scan, grep patterns
210
+ - **GitHub dorking**: `gh search code` commands, GitDorker integration for org-wide secret search
211
+
212
+ ### Added — report-writing Skill
213
+ - **Intigriti template**: Full format with platform-specific notes (video PoC preference, safe harbor stance)
214
+ - **CVSS 4.0 quick reference**: Key differences from CVSS 3.1, score examples for common findings, calculator link
215
+
216
+ ### Added — rules/hunting.md
217
+ - **Rule 18**: Mobile = different attack surface (APK decompile workflow, key targets)
218
+ - **Rule 19**: CI/CD is attack surface (GitHub Actions expression injection, dangerous workflow patterns)
219
+ - **Rule 20**: SAML/SSO = highest auth bug density (test checklist)
220
+
221
+ ### Updated
222
+ - README: CHAOS_API_KEY setup section with free key instructions and optional subfinder API keys
223
+ - README: Updated vuln class count from 18 → 20, updated skill descriptions
224
+ - `web2-vuln-classes` description updated to reflect 20 classes and new additions
225
+
226
+ ---
227
+
228
+ ## v2.0.0 — ECC-Style Plugin Architecture (Mar 2026)
229
+
230
+ Major restructure into a full Claude Code plugin with multi-component architecture.
231
+
232
+ ### Added
233
+ - `skills/` directory with 7 focused skill domains (split from monolithic SKILL.md)
234
+ - `skills/bug-bounty/` — master workflow (unchanged from v1)
235
+ - `skills/web2-recon/` — recon pipeline, subdomain enum, 5-minute rule
236
+ - `skills/web2-vuln-classes/` — 18 bug classes with bypass tables
237
+ - `skills/security-arsenal/` — payloads, bypass tables, never-submit list
238
+ - `skills/web3-audit/` — 10 smart contract bug classes, Foundry template
239
+ - `skills/report-writing/` — H1/Bugcrowd/Intigriti/Immunefi templates
240
+ - `skills/triage-validation/` — 7-Question Gate, 4 gates, always-rejected list
241
+ - `commands/` directory with 8 slash commands
242
+ - `/recon` — full recon pipeline
243
+ - `/hunt` — start hunting a target
244
+ - `/validate` — 4-gate finding validation
245
+ - `/report` — submission-ready report generator
246
+ - `/chain` — A→B→C exploit chain builder
247
+ - `/scope` — asset scope verification
248
+ - `/triage` — quick 7-Question Gate
249
+ - `/web3-audit` — smart contract audit
250
+ - `agents/` directory with 5 specialized agents
251
+ - `recon-agent` — runs recon pipeline, uses claude-haiku-4-5 for speed
252
+ - `report-writer` — generates reports, uses claude-opus-4-6 for quality
253
+ - `validator` — validates findings, uses claude-sonnet-4-6
254
+ - `web3-auditor` — audits contracts, uses claude-sonnet-4-6
255
+ - `chain-builder` — builds exploit chains, uses claude-sonnet-4-6
256
+ - `hooks/hooks.json` — session start/stop hooks with hunt reminders
257
+ - `rules/hunting.md` — 17 critical hunting rules (always active)
258
+ - `rules/reporting.md` — 12 report quality rules (always active)
259
+ - `CLAUDE.md` — plugin overview and quick-start guide
260
+ - `install.sh` — one-command skill installation
261
+
262
+ ### Content Added to Skills
263
+ - SSRF IP bypass table: 11 techniques (decimal, octal, hex, IPv6, redirect chain, DNS rebinding)
264
+ - Open redirect bypass table: 11 techniques for OAuth chaining
265
+ - File upload bypass table: 10 techniques + magic bytes reference
266
+ - Agentic AI ASI01-ASI10 table: OWASP 2026 agentic AI security framework
267
+ - Pre-dive kill signals for web3: TVL formula, audit check, line-count heuristic
268
+ - Conditionally valid with chain table: 12 entries
269
+ - Report escalation language for payout downgrade defense
270
+
271
+ ---
272
+
273
+ ## v1.0.0 — Initial Release (Early 2026)
274
+
275
+ - Monolithic SKILL.md (1,200+ lines) covering full web2+web3 workflow
276
+ - Python tools: `hunt.py`, `learn.py`, `validate.py`, `report_generator.py`, `mindmap.py`
277
+ - Vulnerability scanners: `h1_idor_scanner.py`, `h1_mutation_idor.py`, `h1_oauth_tester.py`, `h1_race.py`
278
+ - AI/LLM testing: `hai_probe.py`, `hai_payload_builder.py`, `hai_browser_recon.js`
279
+ - Shell tools: `recon_engine.sh`, `vuln_scanner.sh`
280
+ - Utilities: `sneaky_bits.py`, `target_selector.py`, `zero_day_fuzzer.py`, `cve_hunter.py`
281
+ - Web3 skill chain: 10 files in `web3/` directory
282
+ - Wordlists: 5 wordlists in `wordlists/` directory
283
+ - Docs: `docs/payloads.md`, `docs/advanced-techniques.md`, `docs/smart-contract-audit.md`
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Claude Bug Bounty Hunter Contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,4 @@
1
+ recursive-include bughunter *
2
+ global-exclude __pycache__/*
3
+ global-exclude *.pyc
4
+ include README.md LICENSE CHANGELOG.md requirements.txt