
I have been experimenting a lot lately with how AI can actually fit into a bug bounty workflow, and not in the usual "ask AI to find me a vulnerability" way. What I am more interested in is giving AI access to a real recon pipeline, structured evidence, historical data, and enough context about a target that it can start helping me make decisions about what is actually worth looking at.
That is a big part of why I started building AutoBBRecon. It is my own continuous bug bounty recon orchestrator, but lately the project has become just as much about figuring out how AI can interact with recon data as it is about running the recon itself.
The idea I keep coming back to is pretty simple. Recon tools are really good at collecting data, and AI is really good at working through context. So instead of trying to replace traditional recon tools with AI, I am trying to connect the two in a way where each one does what it is best at.
The Problem With Recon Is Not Always Collecting More Data #
There are already a ton of good recon tools. Subfinder can find subdomains, ffuf can discover paths, DNS tools can resolve records, HTTP scanners can fingerprint services, and Nuclei can match known patterns.
The problem I keep running into, especially on a target the size of Yahoo, is what happens after all of those tools run. You end up with a huge amount of output made up of hundreds or thousands of domains, DNS records, HTTP responses, screenshots, paths, redirects, changes, and possible takeover candidates.
Most of that data is completely normal. Some of it is interesting, and a very small amount of it might actually lead to a bug. At that point, the harder problem is no longer collecting more information. It is figuring out what actually deserves your attention.
That is where I think AI starts becoming really useful.
My Goal Is Not an AI Hacker #
I am not trying to build some autonomous AI that gets pointed at a company and starts attacking everything it finds. That is not really what I want from this project.
What I want is closer to an AI recon analyst. AutoBBRecon collects the evidence, stores what it sees, tracks what changes, and knows the target-specific scope and rules. Then an AI agent can sit on top of that data and help reason about what looks unusual or worth investigating.
Instead of asking the model to blindly generate payloads, I want it to answer questions like whether something is new, whether a hostname has ever existed before, why a DNS record changed, whether a service looks unusual for that environment, or whether a takeover candidate is even worth validating.
That is a lot more interesting to me than trying to make the AI do everything itself.
Giving AI Memory Through Recon Data #
One of the biggest limitations with using AI for recon normally is that it does not really know your target. You can paste some output into a chat, but the model only knows what you gave it at that moment.
That is completely different from having months of recon history available.
AutoBBRecon is being designed so that the history lives outside of the AI. The database becomes the memory. If a hostname appeared three months ago, disappeared, and suddenly comes back pointing at different infrastructure, that matters. If a CNAME has been stable for six months and suddenly stops resolving, that matters too. If a staging host appears for two hours and disappears again, that might be even more interesting.
The AI should be able to query that history instead of me manually copying terminal output into a prompt every time I want context.
That changes the workflow a lot.
Instead of me simply asking, "Does this CNAME look interesting?", I want the system to be able to tell me something like:
This hostname was first observed 17 minutes ago. It contains "uat" and points to an AWS load balancer that currently does not resolve. Three other hostnames with the same naming pattern were discovered during the same period, and none of them have previously existed in the recon database.
Now I have context, and that context is what makes the finding useful.
Building an Evidence Layer First #
A decision I made pretty early was that AutoBBRecon should store evidence before conclusions. This has become even more important now that I am integrating AI into the workflow.
A DNS response is evidence. A CNAME is evidence. An HTTP response is evidence. A screenshot is evidence. A scanner saying "possible subdomain takeover" is an interpretation of that evidence.
I do not want the AI blindly trusting the interpretation either. I want it to be able to go back to the underlying data and understand why the system reached that conclusion in the first place.
For example, if AutoBBRecon produces a takeover candidate, the AI should be able to inspect the DNS observations that created it and then decide whether that candidate deserves a limited validation.
That separation has also made the system much easier to reason about. The recon tools produce observations, AutoBBRecon normalizes them, the database keeps the history, and the AI consumes that evidence to help prioritize what happens next.
One Example: Subdomain Takeovers #
Subdomain takeover monitoring is one area where this has started becoming real.
Takeovers are interesting because they are extremely time-dependent. A hostname can be perfectly fine for years, then somebody removes a cloud resource and forgets the DNS record. Suddenly the exact same hostname might become vulnerable even though nothing about the hostname itself changed.
That makes takeover detection a perfect continuous monitoring problem.
AutoBBRecon already watches DNS evidence and produces possible dangling CNAME candidates, but I did not want every suspicious record automatically generating network traffic. Because of that, I built a separate validation pipeline so there is a clear difference between discovering something suspicious and deciding to actually validate it.
The current flow is roughly:
AutoBBRecon observes DNS → evidence is stored → the candidate producer evaluates the evidence → a takeover candidate is created → the dispatcher decides whether validation is allowed → bounded DNS validation runs → the result is stored → the candidate enters cooldown.
The important part for me was making this deterministic. I wanted to know exactly why a validation happened, what evidence caused it, and how many times the system was allowed to interact with the target.
During the latest canary test, I specifically tested the full path using fresh candidates that had never previously been validated. The producer examined 555 DNS takeover-related events, classified 130 as dangling, and created 130 new Sentinel candidates.
Then I immediately replayed the exact same producer input. The second run created 0 new candidates and deduplicated all 130 existing candidates.
That sounds like a small implementation detail, but it is really important for what I am trying to build. If AI is eventually going to interact with this system, I do not want the model constantly rediscovering the same thing and causing the same action to happen again.
The state needs to live in the system.
AI Should Recommend Actions, Not Invent State #
This has become one of the main design ideas behind the project.
I do not want AI deciding that something exists because it "looks likely." If the database says a hostname was discovered, then it exists in the recon state. If the database says it has never been validated, then that is the current state. If the system says it is in cooldown, the AI should respect that.
The AI can reason about the state, but it should not create its own version of reality.
That sounds obvious, but I think it matters a lot once people start connecting LLMs to security tooling. Models are probabilistic. Your scanner state should not be.
Using AI to Watch for Low-Hanging Fruit #
Another area I have started experimenting with is giving an AI agent regular lightweight monitoring tasks.
One example is having it review newly discovered CNAMEs and pay closer attention to hostnames containing things like dev, stg, stage, test, uat, admin, and internal. From there, it can correlate those names with whatever HTTP services AutoBBRecon discovers.
This comes from my experience triaging bug bounty reports. Some surprisingly good bugs are not complicated at all. Sometimes a developer exposes something that should not be public.
Maybe it is Grafana, an admin login, a development dashboard, a debug interface, or some internal application that has useful information sitting behind no authentication.
A traditional scanner might just tell me HTTP 200. That does not mean much by itself.
An AI agent can potentially take that same observation and combine it with everything else the system knows. Instead of only seeing an HTTP status, I might get something closer to:
New hostname containing "stg", first observed 12 minutes ago. HTTP 200. Page title indicates Grafana. No prior observation exists for this host, and the related production hostname uses a different service.
That is something I would want surfaced immediately.
Not because Grafana automatically equals a vulnerability. It does not. It is interesting because there is enough context around the observation to justify a human taking a closer look.
That distinction matters to me.
Screenshots Are Part of the Context Too #
I am also interested in having the agent capture screenshots of interesting web services. That gives both the AI and me another piece of evidence instead of forcing everything through text.
Instead of receiving an alert that simply says "new dev service discovered," I want something closer to:
New development service discovered at 01:42. First observed during this recon cycle. HTTP response changed from no response to 200. Page appears to expose an administrative interface. Screenshot attached.
At that point I can immediately look at the exact thing the agent saw.
This is much closer to how I would want an actual recon assistant to behave. Give me the evidence, give me the context, tell me why you think it matters, and then let me decide what to do with it.
AI Can Also Help Find Relationships Humans Miss #
This is probably the part I am most interested in long term.
Large targets have patterns. Companies name things in certain ways, teams reuse infrastructure, cloud regions show up repeatedly, hostnames share naming conventions, and applications move between environments.
Humans can spot some of those patterns, but once you are dealing with thousands or eventually millions of observations, it becomes difficult to keep all of those relationships in your head.
This is where AI could become really useful.
I want to eventually be able to ask questions like "Show me newly discovered hosts that resemble previously vulnerable staging infrastructure," or "Find new assets whose DNS structure is unusual compared with the rest of this business unit."
Or even something broader like, "What changed in Yahoo's externally visible infrastructure in the last 24 hours that you think I should manually inspect?"
Those are much more useful questions to me than simply asking an AI to "find bugs on yahoo.com."
The value is in giving the model enough structured context that it can help me work through the parts of recon that are difficult to manually compare at scale.
Asset Discovery Becomes More Interesting Too #
I also want AutoBBRecon to continuously expand what it knows about a target.
Right now subdomain discovery is part of that, but eventually I want to correlate things like Certificate Transparency logs, ASN ownership, IP ranges, DNS relationships, TLS certificates, reverse DNS, redirects, cloud naming patterns, JavaScript references, and historical observations.
Once that data starts accumulating, the AI can help work through those relationships.
If a certificate suddenly contains a new hostname, that might become a new lead. If several domains resolve into the same previously unseen IP range, that could also be interesting. If a JavaScript file references an internal-looking API hostname that later becomes publicly reachable, that is something I would want the system to remember.
The goal is for the system to keep building the map of the target while the AI helps me decide which parts of that map deserve attention.
This Changes How I Think About Automation #
Before working on this project, when I thought about recon automation I mostly thought about scheduling tools.
Run Subfinder every few hours, run ffuf, perform DNS checks, probe HTTP, save everything somewhere, and repeat.
I still need all of that, but now I think the more interesting part of automation happens after collection.
The workflow I am trying to build is essentially discover → observe → store → compare → reason → prioritize → validate → learn → repeat.
AI fits into the reasoning and prioritization parts of that loop, while traditional tooling still does the actual measuring.
I think that division is important because it keeps the underlying recon deterministic while still letting AI do the kind of contextual analysis it is good at.
AI Is Not Replacing My Recon #
I think this distinction is important.
I am not using AI because I want to know less about what my tools are doing. I actually want the opposite.
Building AutoBBRecon has forced me to think much harder about how recon data moves through a system. I want to know where a finding came from, what evidence created it, whether it was previously seen, when it changed, what triggered a validation, and why the system decided it mattered.
If I cannot answer those questions, then adding AI on top would probably just make the system harder to trust.
The AI should help me understand the recon better, not hide it from me.
Where AutoBBRecon Is Right Now #
The project is still very early, and I am building it incrementally so I can prove each part works before adding more automation.
So far I have been working on continuous asset discovery, DNS evidence collection, HTTP observations, ffuf orchestration, PostgreSQL-backed recon history, state events, dangling CNAME detection, takeover candidate production, deterministic takeover validation, deduplication, cooldown handling, AI-assisted monitoring, development and staging asset review, exposed service detection, and timestamped screenshots and evidence.
I am also experimenting with giving a separate AI agent access to parts of this data through an MCP interface. The agent can perform lightweight monitoring tasks and report back what it thinks deserves attention.
For now, I still want it reporting everything back to me. I would rather slowly increase autonomy after I understand where it performs well, where it makes mistakes, and which parts of the workflow should stay deterministic.
Where I Think This Goes #
The end goal is not just a scanner.
I want AutoBBRecon to become a persistent recon system that actually knows the target over time. It should know what existed yesterday, what appeared today, what disappeared, what changed, what has already been investigated, what was previously interesting, and what has never been seen before.
Then I want AI sitting on top of that history helping me find the parts I would otherwise miss.
I do not know yet how far I will take it, and that is part of what makes the project interesting.
Right now I am basically building the recon workflow I wish I had while bug hunting: tools collecting evidence continuously, a database remembering everything, AI working through the noise, and me spending more time looking at the things that actually have a chance of becoming a bug.
That is where I think AI in bug bounty is going to be most useful.
Not replacing the researcher, but giving the researcher a much better set of eyes.