Ethics, scope, and the attacker mindset
Before any technique, the rule is authorization. This track teaches the attacker mindset as a defensive tool — goals, attack surface, and the kill chain — with nothing aimed at systems you do not own or are not authorized to test.
Two engineers run the exact same port scan against the exact same host. One has a signed engagement letter naming that IP, a scoped window, and a contact to call if something breaks. The other does not. They typed identical commands and saw identical packets — but only one of them committed a crime. In offensive security the technique is rarely what separates a professional from a defendant. The paperwork is. Before you learn a single payload, you have to internalize that the authorization is the work, and the exploit is just the part that happens to be visible.
By the end of this lesson you’ll know why written authorization and scope come before any technique, and how the Lockheed Martin Cyber Kill Chain turns “thinking like an attacker” into a concrete defensive tool.
Ethics, law, and authorization come first — always
This is the non-negotiable opening, and it is not a formality. The single fact that makes a security test legal is explicit, written authorization from someone who actually owns the asset or has the standing to grant it. Run the same scan, the same fuzzer, the same credential-stuffing script without that, and depending on where you are you have potentially violated computer-misuse law (in the US the Computer Fraud and Abuse Act; in the UK the Computer Misuse Act; analogous statutes nearly everywhere). The bytes on the wire are identical. The authorization is the only thing that changed — and it is the thing courts care about.
So before any work begins, four artifacts exist in writing:
- Authorization — a signed document (an engagement letter, statement of work, or program policy) from a party with the authority to permit testing of the named systems. “My manager said it was fine” in a Slack message is not authorization; a signature from someone who can grant it is.
- Scope — the precise list of what you may touch: which domains, IP ranges, applications, and accounts are in, and — just as important — what is explicitly out. Production payment systems, third-party SaaS you don’t own, and anything not on the list are out by default. Out-of-scope is the default; in-scope is the exception you were granted.
- Rules of engagement (ROE) — how you may test: the time window, which techniques are permitted (is denial-of-service allowed? social engineering? physical access?), the rate limits that keep you from knocking over production, the data-handling rules for anything sensitive you stumble across, and an emergency contact and stop condition.
- Responsible disclosure — what happens when you find something: you report it privately to the owner, give them a reasonable window to fix it, and you do not publish, sell, or exploit it beyond what the engagement permits.
This track teaches the attacker mindset as a defensive tool. Everything here is conceptual and lab-framed: a CTF box you spun up, a deliberately vulnerable app you deployed in a VM you own, a hosted lab built for exactly this. There are no weaponized payloads in this material, and nothing is ever aimed at a system you do not own or are not explicitly authorized to test. Reading this lesson does not authorize you to touch anything. If you find yourself reaching for a real target “just to see,” stop — that instinct is precisely what the authorization step exists to gate. The OWASP Web Security Testing Guide opens the same way for the same reason: testing without a documented scope and permission is not testing, it’s an intrusion.
▸Why this works
Why insist on written authorization when a verbal “go ahead” feels like enough? Because authorization is the one fact that retroactively determines whether your work was lawful — and memory, intent, and Slack threads evaporate under pressure. The day a test causes an outage, or a finding becomes a lawsuit, the only thing that protects you is a signed document naming the systems, the window, and the person who granted it. The paperwork isn’t bureaucracy slowing down the “real” work; in offensive security it is the real work, and the exploit is the easy part that the paperwork makes legal.
The attacker mindset: goals, attack surface, and the chain
With authorization established, here’s the actual mental shift. Defenders are trained to think in terms of features — does the login work, does the upload validate the file type, does the report render. An attacker thinks in terms of goals — I want to read other users’ data, I want to run code on that server, I want to stay in undetected. Then they look at everything the system exposes (the attack surface: every endpoint, parameter, dependency, header, cloud bucket, and human who could be socially engineered) and ask which exposed thing moves them toward the goal.
That goal-first, surface-mapping reflex is the whole point of learning offense defensively. You aren’t learning to attack; you’re learning to predict the attacker so you can spend your defensive budget where the real expected value is, instead of hardening the one feature nobody would ever target.
The Lockheed Martin Cyber Kill Chain gives that reflex a structure. It models an intrusion as seven sequential stages — the attacker has to progress through them in order to succeed, which means a defender only has to break one link to break the whole chain. That asymmetry is the entire defensive value of the model: the attacker must win every stage; the defender must win only one.
| Stage | What the attacker does (lab-framed) | Where a defender breaks the link |
|---|---|---|
| Reconnaissance | Maps the target: subdomains, open ports, tech stack, leaked emails | Reduce the attack surface; alert on scanning; minimize public info |
| Weaponization | Pairs an exploit with a payload (e.g. a malicious document) | Mostly invisible to the defender; informs detection of the next stages |
| Delivery | Gets it to the target: phishing email, watering-hole site, USB | Email filtering, link/attachment sandboxing, user training |
| Exploitation | Triggers the vulnerability to run attacker code | Patching, hardening, least privilege, input validation |
| Installation | Plants persistence (a backdoor, scheduled task, new account) | EDR, file-integrity monitoring, allow-listing |
| Command & Control | Opens a channel back out for remote control | Egress filtering, DNS/proxy inspection, anomaly detection |
| Actions on Objectives | Does the actual goal: exfiltration, encryption, lateral movement | Data-loss prevention, segmentation, fast detection & response |
How the chain makes you a better defender
Here is the part that matters for an engineer who is not going to be a full-time pentester. The kill chain reframes “is my app secure?” into a sequence of cheaper, concrete questions: can an attacker even reach this surface (recon, delivery)? If they reach it, does the flaw exist to exploit (your actual code)? If they exploit it, can they persist and call home (your runtime and network controls)? The model spreads your defensive thinking across stages instead of betting everything on one perfect wall.
It also reframes detection. A single failed wall is not the end — if you missed the exploit but you catch the unexpected outbound connection in the command and control stage, you’ve still broken the chain before any data leaves. This is why mature defenses are layered: each layer is another link the attacker has to beat, and the attacker has to beat all of them while you only have to win one. The most expensive mistake is assuming prevention will be perfect; the kill chain tells you exactly where your detection-and-response net catches what prevention misses.
A senior caveat: the chain is a thinking tool, not a literal script. Real intrusions skip stages, loop back, and blur boundaries (modern frameworks like MITRE ATT&CK exist precisely to capture that messiness in more granular technique-level detail). Treat the seven stages as a checklist for “where could I detect or deny this,” not as a promise that attacks march neatly left to right.
A teammate wants to 'quickly test' whether the company's public marketing site is vulnerable to a bug they just learned about. There's no engagement, no scope doc, and the site is run by a third-party agency. What's the right move?
Two people run an identical port scan against the same host; one is doing authorized security work and the other is committing a crime. What is the single thing that distinguishes them?
Why does the Cyber Kill Chain give defenders an advantage even though it describes an attack?
Order the seven stages of the Lockheed Martin Cyber Kill Chain, from first to last:
- 1 Reconnaissance (map the target's attack surface)
- 2 Weaponization (pair an exploit with a payload)
- 3 Delivery (get the payload to the target)
- 4 Exploitation (trigger the vulnerability)
- 5 Installation (plant persistence / a foothold)
- 6 Command & Control (open a remote channel)
- 7 Actions on Objectives (exfiltrate, encrypt, move)
- 01Two engineers run the identical scan against the same host — one is doing legitimate security work, one is committing a crime. Explain what actually separates them, and list the artifacts that must exist in writing before any test.
- 02Walk through the seven stages of the Lockheed Martin Cyber Kill Chain and explain why the model is a defensive advantage rather than just a description of an attack.
Offensive security starts with a rule, not a technique: explicit written authorization is the only thing that separates legitimate testing from an unlawful intrusion, because the scan, fuzzer, or exploit looks identical either way. Before any work, four artifacts exist in writing — authorization from someone with standing to grant it, a scope that names what’s in and treats everything else as out, rules of engagement that govern how and when you test, and a responsible-disclosure agreement for what you find. This track uses the attacker mindset purely as a defensive tool: everything is lab-framed and conceptual, with no weaponized payloads and nothing aimed at systems you don’t own. The mindset itself is the shift from thinking in features to thinking in goals and attack surface, and the Lockheed Martin Cyber Kill Chain structures it into seven stages — reconnaissance, weaponization, delivery, exploitation, installation, command and control, and actions on objectives. Its defensive payoff is asymmetry: the attacker must win every stage, so you only have to break one link, which is exactly why layered prevention and detection beat one perfect wall. Now when you look at a system, your first questions are ‘am I authorized to test this?’ and ‘which link in the chain is cheapest for me to break?’
Practice
Start at the top. Tasks go easiest → hardest: recall a fact, apply it to a case, then a senior-level stretch. Open one, attempt it, then reveal.
Something unclear?
Ask a question about this lesson. Questions are anonymous and go straight to the author to make the lesson better.
Apply this
Put this lesson to work on a real build.