AI agents for security
Why automate recon and testing on the NotHoly API
Put a model that does not refuse in your pipeline, with CVE, advisory and public-page reads that do not cost tokens. Your tools do the active work.
Build an OSINT report that stands up: scope, method, findings with evidence and severity, and the NotHoly chat to draft and tighten it.
A report is the deliverable. All the recon is worth what the reader can act on, which means structure, evidence and plain language. A good OSINT report has a scope statement, a method note, findings with evidence and severity, and a clear next step for each one. The NotHoly chat drafts and tightens it while you own every fact in it.
Keep it boring and complete. A workable structure fits on one outline.
1. Scope and dates: what you looked at, what you did not
2. Method: sources and tools, passive and active
3. Findings: each with evidence, impact and a fix
4. Appendix: raw data, host lists, timelineThe scope statement protects you and the reader, because it says what was in bounds. The method section lets someone reproduce the work, which is what standards like NIST SP 800-115 expect from a test report.
A finding is a claim plus proof. Each one carries a title, where it was found as the source line from your notes, why it matters, and what to do. Rate impact plainly as informational, low, medium or high, and a scale like CVSS keeps it consistent across findings. Say what you observed and what it exposes, and when you did not verify something, label it a lead rather than a finding.
Paste your structured notes and ask for a first draft.
Here are my OSINT findings with sources and a severity each.
Draft a report: scope, method, findings table, then one page
per finding with evidence and remediation. Flag any finding
whose evidence is thin so I can recheck before I send it.Then run a second pass for language, asking it to cut hedging, drop adjectives and keep each finding to what the evidence supports. The model is good at structure and tone and does not know whether a fact is true, so you check every claim against your notes before the report leaves your hands.
Busy readers read the findings table and skim the rest, so give it columns that let them triage.
| Finding | Source | Impact | Status |
|---|---|---|---|
| Staging host exposes config | httpx, crt.sh | Medium | Reported |
| Employee email in breach | hibp | Low | Reported |
| Origin IP behind CDN | dns-history | Info | Noted |
Keep the table to facts. The detail lives in the per-finding pages below it, where the evidence and the fix sit next to each claim.
The report is where personal data is most likely to leak. Redact what the reader does not need: mask emails, drop breach contents and keep screenshots free of unrelated people. State your scope and stop at its edge, because a finding about an out-of-scope asset belongs in a separate note to the owner, not in the main report. Hand the report over through the agreed channel and delete working copies that hold sensitive data.
As long as the findings need and no longer. A findings table plus one page per finding is enough for most engagements, and padding hides the signal the reader is paying for.
It can draft the structure and tighten the prose, which saves real time. It cannot decide what is true or in scope. You own every claim, so you read every line before it ships.
That closes the track, from scope to subdomains, URLs, certificates, code, dorks, people, images, structure and now the report. Start again at the OSINT workflow, or the index at what is OSINT.
AI agents for security
Put a model that does not refuse in your pipeline, with CVE, advisory and public-page reads that do not cost tokens. Your tools do the active work.
AI agents for security
The design of a small bug bounty agent: an LLM, a set of tools, memory, and guardrails, wired into a loop that runs on your machine under your approval.
AI agents for security
A small Python bug bounty agent with tool calling on the NotHoly API: it proposes recon commands, waits for your approval, reads output, and keeps notes.