The Pyramid of Pain is a model, published by David J. Bianco in 2013, that ranks six types of threat indicator by how much difficulty, or "pain", you cause an attacker when you detect and respond to each one. In plain terms: blocking a file hash costs the attacker almost nothing, while detecting the way they work forces them to change their behaviour, which is slow and expensive. Most security teams still spend most of their effort at the bottom of the pyramid, ingesting feeds of hashes, IP addresses and domains. This guide explains the six levels, why behaviour-based detection hurts attackers most, how to apply the model to threat intelligence and detection engineering with MITRE ATT&CK, and how it applies to stolen tokens and machine credentials. It is for SOC analysts, detection engineers and threat intelligence teams.
Key takeaways
- Pain is set by indicator type. Bianco's point is that the cost you impose on an adversary depends on the types of indicator you are able to use, not on how many you collect.
- The bottom three levels are cheap to change. Hashes, IP addresses and domains rotate in minutes to days, so they are best for retrospective hunting and blocking known infrastructure, not for lasting detection.
- TTPs sit at the top for a reason. Detecting behaviour, such as Pass-the-Hash seen in Windows logs, means the attacker must learn new behaviour rather than swap a file or server.
- ATT&CK is the vocabulary for the top level. Techniques such as T1550.001 Application Access Token describe behaviour you can turn into durable detections.
- Stolen machine credentials need behavioural detection. A valid token used from new infrastructure has no malicious hash at all; only behaviour reveals it.
What it is
Bianco posted the model on his blog, Enterprise Detection & Response, on 1 March 2013, and updated it on 17 January 2014 to add hash values as the bottom level. He wrote it after the Mandiant APT1 report of February 2013, observing that most public discussion focused on the report's list of domains while the tool artefacts in its Appendix A received little attention. His conclusion was that most organisations were not using intelligence effectively, because they used the indicators that are easiest for the adversary to change.
The model is a way of asking two questions of every piece of intelligence or every detection: what does this let me detect, and where does it sit on the pyramid? The higher it sits, the more it costs the adversary to evade. Bianco also stressed that the entire point of detecting indicators is to respond to them; a detection nobody acts on causes no pain at all.
How it works
The six levels
| Level (bottom to top) | Pain label on Bianco's diagram | What it is | Why it is easy or hard to change | Best defensive use |
|---|---|---|---|---|
| Hash values | Trivial | SHA-1, MD5 or similar hashes of a specific malicious file | Recompiling or changing one byte gives a new hash | Confirming a known file; retro-hunting in EDR and file stores |
| IP addresses | Easy | An address or netblock used by the attacker | Proxies, VPS hosts, Tor and cloud services provide new addresses quickly | Short-lived blocks and alert enrichment; expire entries |
| Domain names | Simple | A domain or subdomain used for delivery or command and control | Registration costs a little money and time, so slightly more effort than an IP | DNS and proxy blocking; watch for look-alike registrations |
| Network and host artefacts | Annoying | Observables left by activity: URI patterns, user-agent strings, C2 protocol quirks, registry keys, file paths, services created | The attacker has to find out what gave them away and reconfigure their tooling | Signatures in Sigma, Suricata or EDR rules on specific artefacts |
| Tools | Challenging | Software the adversary uses to accomplish the mission, such as credential dumpers, backdoors or recon tools | Replacing a tool means finding or writing another with the same capability, and retraining | Detecting tool behaviour and capability classes, YARA rules on families rather than single samples |
| TTPs | Tough! | Tactics, techniques and procedures: how the adversary goes about accomplishing the mission | Changing behaviour means learning new methods; across many TTPs, Bianco says they must give up or reinvent themselves | Behavioural analytics mapped to ATT&CK techniques, tested and tuned over time |
Bianco's own examples show the climb. A recon tool with a distinctive user-agent string is a network artefact: block it and the attacker must work out why and change the tool. Pass-the-Hash, by contrast, can be detected from Windows logs regardless of which tool performs it, so it is detection at the TTP level (ATT&CK T1550.002 Pass the Hash).
Applying it to an intelligence report
- Extract every indicator from the report or feed and tag it with its pyramid level.
- Load the bottom three levels with an expiry: push hashes, IPs and domains to blocklists and retro-hunts with a time to live, typically days to weeks for IPs, and record the source.
- Turn artefacts into signatures: user agents, URI patterns and registry paths become Sigma or EDR rules. See the Sigma Rules Guide.
- Turn tools into family-level detections: YARA rules on code traits shared across a family, not one sample. See the YARA Rules Guide.
- Map behaviours to ATT&CK techniques and check whether you already detect each one; any gap becomes a detection engineering backlog item.
- Test before enabling: run new behavioural rules in alert-only mode against 30 days of history, measure false positives, then promote. Keep the previous rule version so you can roll back.
Mapping levels to ATT&CK and detection work
| Example behaviour | ATT&CK technique | Low-level indicator (easy to evade) | Higher-level detection |
|---|---|---|---|
| Dumping credentials from LSASS | T1003.001 LSASS Memory | Hash of a known dumping tool | Unexpected processes opening a handle to lsass.exe |
| Malicious PowerShell | T1059.001 PowerShell | Hash of a script | Encoded or obfuscated commands from unusual parent processes, using script block logging |
| Downloading tooling | T1105 Ingress Tool Transfer | Domain serving the payload | Built-in utilities fetching executables from the internet |
| Web-based C2 | T1071.001 Web Protocols | C2 IP address | Regular beaconing intervals and rare user agents from servers |
| Abusing a stolen OAuth token | T1550.001 Application Access Token | Attacker IP or proxy exit node | Token used from a new ASN or with an unusual query pattern for that client |
Coverage is not the same as depth. MITRE's Center for Threat-Informed Defense runs the Summiting the Pyramid project to measure detection quality beyond an ATT&CK heatmap: how many distinct ways of performing a technique an analytic can see, and how robust and precise its signals are. That is the Pyramid of Pain applied to individual analytics. See the MITRE ATT&CK Coverage Mapping Guide.
Why it matters
Feeds of atomic indicators are cheap to ingest and easy to count, so they dominate many programmes. The pyramid explains why that produces a steady stream of alerts but little lasting effect. It gives SOC and threat intelligence leads a defensible way to move effort upwards, and the Detection Engineering Guide covers how to build and maintain the resulting rules.
Decision guidance
- Small SOC or managed service customer: automate the bottom three levels from one or two trusted feeds with expiry, and spend analyst time on a short list of high-value behaviours such as credential theft, token abuse and remote execution.
- Large SOC with detection engineers: track the share of rules at each level, and require that every new intelligence requirement produces at least one TTP-level analytic.
- During an active incident: low-level indicators are still valuable for scoping and containment, because they are specific and fast. Use them first, then write behavioural rules so the attacker cannot simply return with new infrastructure.
Measuring progress
- Detection mix: percentage of active rules at artefact, tool and TTP level versus atomic indicators.
- Indicator half-life: median days before an ingested IP or domain stops producing true positives, which justifies your expiry policy.
- Technique coverage with depth: priority ATT&CK techniques with at least one tested behavioural analytic.
- Re-detection after infrastructure change: in purple team or red team exercises, whether detection survives when the tester changes hashes, IPs and domains.
- False positive rate per behavioural rule after tuning, to show the higher-level rules are sustainable.
Where identity fits
Credential and token abuse is the clearest case for the top of the pyramid. When an attacker uses a stolen API key, OAuth token or cloud access key, there is no malware, no malicious hash and often a fresh IP address. In the Salesloft Drift breach in August 2025, stolen OAuth tokens for a trusted integration were used through Tor and anonymising proxies. Published indicators included the user agent Salesforce-Multi-Org-Fetcher/1.0, an artefact the actor could change at will. The durable signals were behavioural: count queries against Account, Opportunity, User and Case objects followed by bulk export, then searches of the stolen data for strings such as AWS access keys beginning "AKIA".
| NHI abuse behaviour | ATT&CK technique | Behavioural detection idea |
|---|---|---|
| Stealing tokens from apps or integrations | T1528 Steal Application Access Token | New consent grants or token issuance for unusual clients |
| Replaying stolen tokens | T1550.001 Application Access Token | Token use from a new ASN, country or user agent for that service principal |
| Using a compromised cloud identity | T1078.004 Cloud Accounts | Workload identity used interactively, or outside its normal API set |
| Adding credentials for persistence | T1098.001 Additional Cloud Credentials | New secrets or keys added to an app registration or service account |
| Harvesting secrets from files and repositories | T1552.001 Credentials In Files | Bulk reads of configuration files or repositories by an unexpected identity |
| Forging federation tokens | T1606.002 SAML Tokens | Tokens accepted without a matching sign-in event at the identity provider |
These detections depend on knowing what each machine identity normally does, which is why an inventory with owners and expected behaviour is a detection prerequisite. See the OAuth Token Theft Incident Playbook.
Common misconceptions
- "Low-level indicators are useless": they are precise and fast. They are poor as a long-term defence, not as an incident response tool.
- "More indicators means better intelligence": a feed of a million IP addresses sits entirely on the second level. Volume says nothing about pain.
- "Mapping a rule to an ATT&CK technique makes it TTP level": a rule tagged T1003.001 that matches one tool's file name is still a tool or artefact detection. What matters is what the rule actually keys on.
- "Behavioural detection is too noisy": untuned behavioural rules are noisy. Scoping them to the identities, hosts and parent processes where the behaviour is abnormal is the work of detection engineering.
- "The pyramid ranks threats": it ranks indicator types by cost to the adversary. It does not say which threat actor or technique matters most to you; your intelligence requirements do that.
Related concepts
- Indicators of compromise and indicators of attack: roughly, the lower levels hold compromise evidence and the upper levels describe attack behaviour. See the Indicators of Compromise vs Indicators of Attack Guide.
- Cyber Kill Chain and Diamond Model: other analytical models often taught alongside the pyramid. See the Cyber Kill Chain and Diamond Model Guide.
- Threat intelligence levels: strategic, operational, tactical and technical intelligence map loosely onto how high on the pyramid a product sits. See the Threat Intelligence Guide.
- STIX and TAXII: the formats used to exchange indicators and, increasingly, attack patterns. See the STIX and TAXII Guide.
- Threat hunting: hypothesis-led hunts at the TTP level often produce the next generation of detections. See the Threat Hunting Guide.
Framework mapping
| Framework | Reference | Relevance |
|---|---|---|
| NIST CSF 2.0 | ID.RA-02, DE.CM-01, DE.AE-02, RS.AN-03 | Receiving intelligence, monitoring, analysing adverse events and incident analysis |
| NIST SP 800-53 Rev. 5 | SI-4, PM-16, SI-5 | System monitoring, threat awareness programme and acting on alerts and advisories |
| MITRE ATT&CK v20 | Techniques listed above | Vocabulary for TTP-level detections and coverage |
Practitioner checklist
- Tag every indicator and every detection rule with its pyramid level.
- Set expiry on IP and domain indicators and measure their real half-life.
- Convert intelligence reports into ATT&CK-mapped behaviours, not just blocklists.
- Check what each ATT&CK-tagged rule actually matches on, and re-level it honestly.
- Test behavioural rules in alert-only mode against historical data before enabling them.
- Baseline normal behaviour for service principals, API keys and OAuth clients so token abuse stands out.
- Prove in exercises that detections survive a change of hashes, IPs and domains.
- Report the detection mix by level to SOC leadership each quarter.
Standards and references
- David J. Bianco, Enterprise Detection & Response: The Pyramid of Pain
- MITRE ATT&CK: Application Access Token
- MITRE ATT&CK: Pass the Hash
- MITRE ATT&CK: Steal Application Access Token
- MITRE Center for Threat-Informed Defense: Summiting the Pyramid
- SigmaHQ: Rules
- NIST: Cybersecurity Framework 2.0
Related NHI Mgmt Group resources: Detection Engineering Guide · Threat Intelligence Guide · Indicators of Compromise vs Indicators of Attack Guide · MITRE ATT&CK Guide for Defenders