> For the complete documentation index, see [llms.txt](https://support.attackforge.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://support.attackforge.com/app/getting-started/attack-chains.md).

# Attack Chains

## Overview

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FALN7y3AMPMQOOJ4VUjp6%2FScreenshot%202026-08-29%20at%2010.04.47%E2%80%AFam.png?alt=media&amp;token=b3c84d5a-1cde-4177-92d1-69e31f685af7" alt=""><figcaption></figcaption></figure>

Attack Chains turn a list of findings into a real story with impact. This shift unlocks many benefits which a usual vulnerability list cannot show:

* **Demonstrate real impact**. A report full of "medium" issues — a misconfigured share here, a weak service account there, an outdated Confluence page — tends to get triaged into oblivion. Chain them together into "anonymous foothold → credential harvest → lateral movement → domain admin → crown jewels," and suddenly the same findings represent an existential business risk. The attack chain proves the *so what?*, which is usually what executives and risk owners actually care about.
* **Forces realism**. Individual vulns are scored in isolation using CVSS or other, but attackers don't operate that way. Demonstrating the attack chain proves the path is actually walkable in the target environment, not just theoretically exploitable. Findings that looked scary on paper sometimes don't chain to anything meaningful, and findings that looked boring sometimes turn out to be the linchpin. That's much better signal for prioritization than severity scores alone.
* **Remediate faster with&#x20;*****break-chain*****&#x20;thinking rather than&#x20;*****fix-everything***. If five distinct findings are required to reach impact, the defender doesn't necessarily need to fix all five — breaking any one link disrupts the path. That's often significantly cheaper and faster than full remediation, and it gives the client a defensible interim posture while longer-term fixes land.
* **Map cleanly onto frameworks like MITRE ATT\&CK and Cyber Kill Chain**. Give the blue team a shared vocabulary. Each stage becomes a detection opportunity: if recon was caught, the chain stops at stage one; if not, where else could it have been broken? This feeds directly into purple-team exercises, SOC tuning, and tabletop scenarios.
* **Expose systemic weaknesses that single findings hide**. Over-permissioned service accounts, flat networks, missing egress controls, identity sprawl. Those root causes rarely show up as a single CVE but fall out clearly when you look at how an attacker actually moved from end-to-end.

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FVdvRusksb3aHiSsRqcsF%2FScreenshot%202026-08-29%20at%2011.02.38%E2%80%AFam.png?alt=media&amp;token=529c55bb-6ba3-4f59-b4aa-5f7361deab85" alt=""><figcaption></figcaption></figure>

## Creating Attack Chains

To create an attack chain, you must have Edit permissions on your project.&#x20;

From your project dashboard, select `Attack Chains` then click on `Add`.

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FgHpFmz1F9nkuCxmOuhBz%2FScreenshot%202026-08-29%20at%2010.05.33%E2%80%AFam.png?alt=media&amp;token=519b5364-7cb8-494f-b015-b27c2d875140" alt=""><figcaption></figcaption></figure>

### Step 1: Define Attack Objective

This is where you define the objective of this attack chain.

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FuIYXVfeZqgJ3vpXT2Ww7%2FScreenshot%202026-08-29%20at%2010.07.40%E2%80%AFam.png?alt=media&amp;token=35f9b4e6-cbc2-4813-ad17-7f04c768e768" alt=""><figcaption></figcaption></figure>

### Step 2: Define Initial Attack Vector

The first link in the attack chain usually starts with the attacker. You can select from an `External Attacker` e.g. outside customer network/environment; or `Internal Attacker` e.g. inside customer network/environment.

You also need to define how the attacker is initiating the attack. This is to help organisations better understand the context of where the attacker is coming from e.g. opportunistic (stumbled across a web application); rogue employee or insider threat; etc.

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FNuwSBUYzPY6MXCdiQxUP%2FScreenshot%202026-08-29%20at%2010.08.34%E2%80%AFam.png?alt=media&amp;token=84210d67-3b18-489a-b1e2-4811fb8cd6f1" alt=""><figcaption></figcaption></figure>

### Step 3: Add Links to the Chain

You can add any combination of links to the chain. This is where you build the chain to reach the objective defined in `Step 1`.

The links currently supported include:

* **Attacker** - Either internal or external attacker. Can be used to demonstrate how an external attacker breaches perimeter and becomes internal attacker.
* **Victim** - Can be used if introducing social engineering component to your attack chain.
* **Defender** - Can be used if introducing blue-team component to your attack chain.
* **Action** - Used when defining what actions are being performed by an actor in the chain.
* **Vulnerability** - This is used to link to a vulnerability discovered on the project.
* **Device** - Can be used to reference a device which is targeted or leveraged as part of the attack chain.
* **Server** - Can be used to reference a server which is targeted or leveraged as part of the attack chain.
* **Database** - Can be used to reference a database which is targeted or leveraged as part of the attack chain.&#x20;
* **Flag** - Used to identify that an attacker has reached end objective (defined in Step 1); or an interim objective on the way to reaching the end goal.

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FEPQ1fDOBmWqsFEsHRUlM%2FScreenshot%202026-08-29%20at%2010.10.33%E2%80%AFam.png?alt=media&amp;token=d39cd913-7193-4c43-9cd0-091b592544a8" alt=""><figcaption></figcaption></figure>

Once your links have been added, you should have a completed attack chain that you can save.&#x20;

Attack Chains can be viewed by any team members on the project. They can also be included in the reports.

## Updating Attack Chains

Your attack chain can be modified by clicking on `Edit`. You will have the option to make changes to the attack objective as well as any links in the chains. You can add new links or remove any existing links, at any point in the chain.

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FMqh4TtuGEOue6bX5gmLL%2FScreenshot%202026-08-29%20at%2010.11.43%E2%80%AFam.png?alt=media&amp;token=69db26d9-b849-44fb-8e2d-6c79de665cef" alt=""><figcaption></figcaption></figure>

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2Fmwat3afwZxGrLmNFzSbD%2FScreenshot%202026-08-29%20at%2010.11.53%E2%80%AFam.png?alt=media&amp;token=cb94df5d-219f-4de6-a76d-1f4e9d142bb4" alt=""><figcaption></figcaption></figure>

You can also duplicate attack chains using the `Duplicate` button & also delete attack chains using the `Delete` button.

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FazjdNRXrRnuHhBZLsgei%2FScreenshot%202026-08-29%20at%2010.12.38%E2%80%AFam.png?alt=media&amp;token=3b42eed0-a808-46ca-8867-b35d438e3dea" alt=""><figcaption></figcaption></figure>

## Map Attack Chains to MITRE ATT\&CK Framework

You can map your attack chains to `MITRE ATT&CK Framework`.&#x20;

MITRE ATT\&CK Framework is a knowledge base of adversary tactics and techniques based on real-world attack patterns. It provides threat models and methodologies to help you better plan, prepare & defend against real-world attacks.

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FjXMkcxa0IRXjbKVmroH5%2FScreenshot%202026-08-29%20at%2010.13.56%E2%80%AFam.png?alt=media&amp;token=90c2f0ac-e6cb-40ec-920e-155c0a154894" alt=""><figcaption></figcaption></figure>

## Re-Ordering Attack Chains

You can re-order & prioritise how you attack chains are displayed in the application and also in the reports.

To re-order your attack chains, drag the attack chain in to the desired position.

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FYiteKBHz931yo55wWMwO%2FScreenshot%202026-08-29%20at%2010.14.44%E2%80%AFam.png?alt=media&amp;token=c97007db-d275-4376-b072-760c4352fc5a" alt=""><figcaption></figcaption></figure>

## Global Attack Chains

You can access all attack chains from the `Attack Chains` module:

<figure><img src="https://372186556-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M8s1QY2Q6YTHB4a6DMu%2Fuploads%2FGZmhI4fsixcHSLb8nvWq%2FScreenshot%202026-08-29%20at%2010.16.46%E2%80%AFam.png?alt=media&amp;token=8c61d208-95f6-40dd-af36-f7081cf5a430" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://support.attackforge.com/app/getting-started/attack-chains.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
