Delivered architecture / 04
MSSP · Security awareness practice

Adaptive Phishing Campaign Simulation Engine

Per-target phishing simulations generated on Bedrock and independently reviewed by a second Claude endpoint before anything is queued, with HR data treated as untrusted input and every prompt and response written to an audit log.

An MSSP offering security awareness training needed to move past static phishing templates that sophisticated employees recognized on sight. The employees who are genuinely susceptible are often susceptible to entirely different lure types than a generic template targets.

Producing contextually personalized simulations that adapt to each user's actual susceptibility pattern requires a generative model at the core. No template library can produce that. What it also requires is a safety architecture, because the system's job is to generate convincing phishing email.

In productionAWSAmazon BedrockDual-model reviewAWS LambdaScope enforcementPrompt injection defense
Cloud
AWS, fully cloud-native
Generation
Bedrock, Claude Sonnet
Review
Second Claude, safety persona
Adaptation
Engagement feedback per cycle
The pipeline / End to end

How the system actually runs.

Each stage below is a real component in the deployed pipeline. Stages outlined in teal are control points: the places where the architecture constrains what the model can receive or emit.

01 · Profile
HR integration API
Job title, department, role context
02 · Sanitize
Schema extraction call
Raw HR text to typed profile object
03 · Authorize
Scope tag validation
Engagement letter terms on the account record
04 · Generate
Bedrock, Claude Sonnet
Simulation tailored to the individual profile
05 · Review
Second Claude endpoint
Independent safety check against authorized scope
06 · Log
Audit store
Exact prompt and response, before any action
07 · Adapt
Engagement feedback
Click and report rates refine the next cycle
Services / The stack

What it runs on.

AWS Bedrock, Claude Sonnet

Primary campaign generation engine producing personalized phishing simulations per target role profile.

Second Claude endpoint, reviewer persona

Independent safety-check call evaluating each generated email for out-of-scope content before it is queued for delivery.

HR integration API

Pulls job title, department, and role context per simulated target to build the generation profile.

Engagement tracking database

Stores click and report rates per user per campaign, feeding back into the profile for next-cycle adaptation.

AWS Lambda

Orchestrates the generation, review, approval-gate, and queuing pipeline for each campaign run.

Audit log store

Records the exact prompt and Claude response for every generated campaign email before any downstream action.

Build-out / Architecture

How it is wired.

  1. Cloud-native on AWS with no on-premises footprint.
  2. The per-target profile is built from HR API data, covering role, department, and context themes, combined with historical engagement data from prior campaigns.
  3. The primary Bedrock call generates a phishing email tailored to that individual profile.
  4. A secondary Bedrock call with a separate reviewer system prompt checks the generated email against authorized scope before the email is queued for delivery.
  5. Engagement data, meaning click rate, report rate, and response pattern, feeds back into the profile after each cycle. The system adapts its vulnerability-vector focus over time.
  6. Every generated email and its associated prompt are written to the audit log before any downstream action proceeds.
Guardrails / Safety

What keeps it inside its contract.

Guardrails were designed in from the start, not added after the fact. Where the system touches untrusted input, a control sits between that input and the model.

Risks / Open

What we still track.

No production AI system is finished. These are the live risks carried by this architecture, documented for the operating team rather than buried.

Outcomes / Post-deployment

What changed.

On numbers. Client identity and any identifying detail are withheld under NDA. Outcomes are stated as direction and materiality rather than as figures we are not free to publish.

Have a problem that rules cannot solve?

Most engagements start with a short, paid R&D sprint so both sides can decide if it is a fit. If we are not the right call, we will say so early.

Start a conversation