Cyber Threat Modelling Guide
Cyber Threat Modelling Guide
MODELLING
Draft version 0.1
dated November 2020
CONTENTS
1      INTRODUCTION ................................................................................................................ 2
    1.1          Importance of Threat Modelling ...................................................................................................... 2
    1.2          Purpose of Document .......................................................................................................................... 2
    1.3          Scope .......................................................................................................................................................... 3
2      APPROACH ........................................................................................................................ 4
    2.1          System Level Approach ....................................................................................................................... 4
    2.2          Common Missteps in Threat Modelling........................................................................................ 5
    2.3          Integrating Threat Modelling into Risk Assessment Process ................................................ 5
3      METHODOLOGY ................................................................................................................ 7
    3.1          Overview of Method ............................................................................................................................. 7
    3.2          Step 1: Preliminaries and Scope Definition .................................................................................. 7
    3.3          Step 2: System Decomposition......................................................................................................... 8
    3.4          Step 3: Threat Identification .............................................................................................................. 9
    3.5          Step 4: Attack Modelling.................................................................................................................. 13
    3.6          Step 5: Bringing Everything Together ......................................................................................... 15
4      REFERENCES .....................................................................................................................20
ANNEX A - SAMPLE THREAT MODELS.................................................................................21
    A1 - Information Communication Technology (ICT) – Web Application and Database System
    ................................................................................................................................................................................. 21
    A2 - Industrial Control System (ICS) – According to Purdue Model ............................................. 24
ANNEX B – OTHER METHODS...............................................................................................27
Threat modelling helps owners comprehensively identify threat scenarios that are relevant to
the system, so that owners can focus on implementing effective control measures to protect
key component assets within the system. This makes it harder for the adversary to compromise
key components by establishing a foothold and pivoting laterally within the system.
Consequently, system owners can stem and curtail the kill-chain before the adversary reaches
the crown jewels. With a threat model, system owners can also avoid blind spots in identifying
threats.
Ultimately, this exercise aims to cultivate a customised threat perspective in system owners
that goes beyond meeting minimum generic standards.
1As defined in National Institute of Standards and Technology (NIST) Special Publication (SP) 800-30,
Guide for Conducting Risk Assessments
   •   Internal stakeholders e.g. system owners, business unit heads, Chief Information
       Security Officers, and personnel involved in IT risk assessment and management within
       any organisation, including Critical Information Infrastructure Owners;
   •   External consultants or service providers engaged to conduct threat modelling on
       behalf of system owners; and
   •   Red team members, blue team defenders, and purple team members.
The guidance set out in this document focuses on the key areas of technical scoping, system
decomposition, threat identification and attack modelling. Other areas such as cyber threat
intelligence monitoring and studying geo-political threats, which are under the wider domain
of threat monitoring and analysis, are beyond the scope of this document.
Management level
                                                          Equipment or
                                                         application level
Users can approach threat analysis at three different tiers – from a management perspective,
from a system perspective, and from an equipment or application perspective. Below is a
general description of each tier. The focus of this documents is at system level.
   •   Management level (out of scope) - intelligence feeds and trends are analysed with
       focus on external factors such as geo-politics. Analysts typically conduct adversary-
       centric profiling, considering adversary’s broad motives and actions pre- and post-
       intrusion. Organisations do this from a high-level perspective typically for
       management’s consumption. An example of such an approach is the Common Cyber
       Threat Framework used by the US Office of Director of National Intelligence (ODNI),
       which follows across the four horizontal “threat lifecycle” stages of preparation,
       engagement, presence and consequences, while expanding on the verticals of
       objectives, actions and indicators.
   •   System level (in scope) – this approach considers system constructs and relationships,
       as well as system behaviours, in the form of components, architectural layers and data
       flows. The user first models assets, data flows and boundaries within an environment,
       before determining relevant threat scenarios to the system. We will focus on systems
       level in this document.
As mentioned, there is no one right or wrong approach to threat modelling. Users must choose
the approach based on context of the business needs, greater enterprise environment,
situation and audience.
   •   Misdirected or unbalanced threat focus – in some cases where scope of threat model
       is ill defined, system owners may derive non-existent or irrelevant threats. Similarly,
       systems owners’ attention may be overly occupied with the “flavour of the day” (events
       that are prevalent in the news) and neglect other scenarios which, although are not as
       current, also pose realistic threats to the system.
   •   Not considering subsequent stages of attack – most attacks occur in stages, often
       starting first with reconnaissance, followed by intermediate hops, and ultimately
       ending with impact to the crown jewels. It is crucial that system owners consider each
       stage of an attack and not only address the initial threat. This will enable defence in
       depth with multi-layer controls.
   •   Taking a “once and done” approach – the threat model of a system should be treated
       as a living document, bearing in mind its shelf life. With ever-evolving external threats
       and new internal vulnerabilities discovered, it is important to refresh threat models
       constantly, especially whenever there are material changes to the system.
A threat model is only useful when conducted in a systematic manner with well-defined scope.
On the contrary, an ineffective threat model will result in poor prioritisation of resources to
address cybersecurity risks, and system owner being ill prepared for a cyber-attack. Hence, it
is important for organisations to adopt good practices and avoid the common problems when
conducting threat modelling.
Hence, threat modelling augments the risk assessment process by generating contextualised
threat events with well-described sequence of actions, activities and scenarios that the attacker
may take to compromise the system2. With more relevant threat scenarios, risk assessments
conducted by Users will be more rigorous and robust, resulting in more targeted controls and
effective layered defence. This addresses the first two common missteps mentioned in the
previous section. In addition, since risk assessment is a continuous cycle, the threat model
should also be regularly update, addressing the third common misstep mentioned above.
2In fact, NIST SP 800-30 states that, “When threat events are identified with great specificity, threat
scenarios can be modelled, developed, and analysed”.
Finally, at the end of the section, we will walkthrough an example to bring everything together.
3 CIIOs may consider using the CII boundary as the perimeter boundary to determine the scope for
threat modelling.
After identifying the system components, Users should document the component types e.g.
database, transactional system etc., locate where these components reside within the system,
and draw the DFD by denoting the system component as shown in the figure below:
                                                                                          Data
                                                                                          Store
   1.     Start by
          marking out      2.   Mark out a
          external              process in the         3.   Denote a cluster of   4.   Denote a data
          entity/user           system with                 multiple processes         store as a cylinder
          denoted by            circles.                    within two
                                                            concentric circles     A data store is a
        Anrectangles.
            external
                           A process is a                                          persistent repository of
        entity/user is a
                           component where data                                    data required and/or
        subject that
                           manipulation,                                           produced by a process.
        accesses the
                           transformation and/or
        system
                           control takes place.
                                                                                       Data
                                                                                       Store
4 There are numerous global ISACs. Some examples include FS-ISAC for financial services, H-ISAC
for healthcare, OT-ISAC for operational technology etc.
Threats are constantly evolving, and it is important to rely on either open source or paid threat
intelligence sources to gain knowledge on the latest threats and learn how attackers target
systems. Although subscribing to multiple threat intelligence sources broadens the Users’
perspective, Users must first be clear about its objectives to collect specific threat intelligence.
It is counterproductive to have too many sources leading to fatigue in teams examining feeds.
Useful threat information typically has the following characteristics:
An attacker may, by means of a vector, act against the system to cause harm or steal
information. Threat scenarios can be characterised by the tactics, techniques and procedures
(TTP) employed by the attacker. To list all possible threat scenarios, TTPs and attack sources
comprehensively, it is useful to categorise threats using methods such as STRIDE-LM, NIST SP
800-154, Security Cards or OCTAVE. We provide elaboration on STRIDE-LM in this guide, but
organisations should choose a method that suits their purpose. STRIDE-LM was chosen in this
guide as it is deemed a simple and systematic way to identify threats. The information derived
from such an exercise will highlight areas of focus to implement controls that mitigate threats.
Kohnfelder and Garg (1999) developed STRIDE as a mnemonic to identify various threats types
– spoofing, tampering, repudiation, information disclosure, denial of service and escalation of
privilege. Muckin and Fitch (2019) further proposed to add LM into the mnemonic to include
Lateral Movement. The table below captures the threat categories, the security property that
they compromise and their definitions:
Table 2: Definition of Threat Categories Using STRIDE-LM (Muckin and Fitch, 2019)
   •   Spoofing
       Spoofing is pretending to be someone or something else. Spoofing typically
       compromises authenticity. Examples of spoofing threats include impersonating a
       legitimate user or machine in the network, or creating a fake file or process on a
       machine. Common examples of controls to mitigate such threats include having strong
       authentication mechanisms.
   •   Tampering
       Tampering is to modify something without authorisation. Tampering typically
       compromises integrity. Examples of tampering include altering a file, memory space,
       or network configuration or communication. Common examples of controls to mitigate
       such threats include encryption and proper access checks.
   •   Repudiation
       Repudiation is claiming not to have done something, or not being responsible for
       something that happened. Repudiation is typically associated with users, whether
       authorised or unauthorised, denying performing an action without other parties being
       able to prove otherwise. Examples of repudiation include a user perceived not to have
       performed an activity even if they did so, or claims to be innocent despite fraudulent.
       Common examples of controls to mitigate such threats include robust logging and
       digital signatures.
   •   Elevation of Privilege
       Elevation of privilege is gaining access that exceeds the authorisation of a subject.
       Common ways to elevate privileges include corrupting processes such that it an
       unauthorised user can perform operations that he or she prohibited to do so. An
       attacker can also bypass checks to gain elevated privileges. Common examples of
       controls to mitigate such threats include applying the principles of least privilege and
       need to know, and to have strong privileged account protection mechanisms.
   •   Lateral Movement
       Lateral movement is pivoting across the network usually with the eventual goal of
       reaching the crown jewels of the system to inflict damage or for data exfiltration. Lateral
       movement is typically coupled with elevation of privilege to gain access to other parts
       of the network. Common examples of controls to mitigate such threats include proper
       segmentation of network with strong firewall rules.
While STRIDE-LM can aid Users in accurately categorising threats, this should not be the only
focus. Emphasis should be on using STRIDE-LM as a thought process to brainstorm all possible
threats to a system. For example, how can an attacker use spoofing to attack the system? Could
the attacker spoof as a user, a file process, or an endpoint? How will the attacker tamper with
the system? Could the attacker tamper with the database, the configuration files, or the logs?
In addition, certain types of attacks may overlap multiple categories so Users must seek to
avoid blind spots.
STRIDE-LM provides a good baseline. However, users may have additional threats identified
through other means. Users should then use STRIDE-LM to complement their existing threat
inventory to see if they have overlooked anything. Even if no new threats are identified using
Finally, Users should add the threat scenarios generated on the DFD for easy visualisation of
the threats at each location:
                             Threat                                                      Threat
                             event                                                       event
                                                                                            Data
                                                                                            Store
These methods provide a thought process to map possible sequence of attack used by
attackers to exploit resources of organisations to achieve their malicious intent, at the same
time; the modelling allows the users to understand the set of conditions required, for a threat
to be successful. As such, the user could develop strategies and prioritise resources to defence
against the threats.
By understanding the attack vectors and security risks at various stages, these models provide
useful insight for the user in applying multi-layer controls to prevent attacks, interrupt on-
going attacks, and minimise the impact of an attack.
ATT&CK consists of 12 tactical categories, which is the “why” of an attack, listed below:
         MITRE ID               Name                               Description
          TA0001     Initial Access              To enter the system
          TA0002     Execution                   To run malicious code
          TA0003     Persistence                 To maintain a foothold
          TA0004     Privilege Escalation        To gain higher-level permissions
          TA0005     Defence Evasion             To avoid being detected
          TA0006     Credential Access           To steal account names and passwords
          TA0007     Discovery                   To learn about the system environment
          TA0008     Lateral Movement            To traverse through the system environment
          TA0009     Collection                  To gather information of interest
          TA0011     Command and Control         To control a compromised system
          TA0010     Exfiltration                To steal data
          TA0040     Impact                      To manipulate, interrupt, or destroy your systems
                                                 and data
Each tactic contains an array of techniques that the attacker can use. This is the “how” of the
ATT&CK framework. At the time of writing, there are 266 techniques in the ATT&CK matrix for
Enterprise6. ATT&CK is by no means a static framework. MITRE regularly updates ATT&CK with
the latest tactics and techniques discovered by security researchers. Users should customise
the relevant ATT&CK matrices to their context. Suggested matrices for Information Technology
(IT) systems and Operation Technology (OT) systems respectively can be found in the Annex
of this document.
The Lockheed Martin Cyber Kill Chain (Kill Chain) framework was derived from military
offensive strategy. The framework is presented as a series of well-defined sequence of stages
that the attackers are likely to complete in order to achieve their end objective. With the same
understanding, Users can defend their systems effectively.
As can be observed, the Kill Chain only describes the sequence of attack. Users should hence
populate each stage of attack with specific threats derived from Step 3 – Threat Identification,
explained previously.
First, to draw the DFD, we enumerate all components within the web application and database
system. Importantly, we should denote the crown jewel with a star. This component holds all
the critical information or is crucial for critical functions. In this case, we identify the crown
jewel is as the database.
a) Users
Next, we draw out all the data flows between components in our system. The flow starts from
an external user initiating HTTP request to the web server. The web server listens for client
request and responds with HTTP reply, hence the bidirectional arrow. The web server
communicates with the application server via a router, which in turn communicates with the
database server through API calls. The database server finally sends SQL queries to the
database. In addition, there are also enterprise workstations providing services including email.
We the divide the system based on trust boundaries. Trust boundaries separate domains with
different rights and privilege assignments. For example, the rights and privileges of subjects
from the internet are far less than the rights and privileges of subjects residing within the
After completing the DFD, we identify the threats. As an example, we will look specifically at
two components together - the backend application and database servers. Broadly, attacks
may include compromising confidentiality, integrity and availability. With that in mind, we dive
deeper by going through the STRIDE-LM mnemonic.
Firstly, we examine Spoofing. An attacker, who may also be an insider, can harvest credentials,
capture tokens, hijack session IDs and steal keys through man-in-the middle attacks or
squatting. He then stuffs these credentials and injects codes into RESTful API headers and
parameters to masquerade as another user. In that way, he is able make SQL queries to the
database to exfiltrate data leading to Information Disclosure. Even if he is not able to see all
the data initially, he may be able to do so by using SQL injection in the form of blind SQL
injection (true/false testing for error response) or table aggregation. He may also Tamper with
database records by using various SQL commands such as INSERT INTO, DELETE, DROP etc.
The attacker can also conduct application layer Denial of Service attack by flooding the server
with requests, although this is typically done upstream through the web server.
In the case above, it is likely that event and process logs will capture the attacker’s activity.
However, if he using a stolen trusted account there is a chance of Repudiation.
Once we have enumerated the threats, we can include them into the DFD.
Figure 12: Potential threat events at application and database server (non-exhaustive)
We should repeat the STRIDE-LM process for every component within the DFD. The final
product is shown below.
Once we have plotted the DFD with threat events enumerated, we can sequence the threat
events accordingly. We use the table format shown in the samples to list various sequence of
attacks. The table has the following headers:
Taking the Sample Threat Model for ICT – Web Application and Database System, as an
example, we map the threat sequence according to MITRE ATT&CK. Firstly, the attacker can
access to a client with the web application [TA0001] from the internet. Next, he exploits
vulnerabilities to run malicious code [TA0002] via attacks such as cross-site scripting. Through
which, he can login to the application, perhaps even as an administrator [TA0004]. Once in the
system, he may establish persistence so that he will not be booted out [TA0003]. All the while,
he operates as a trusted user to evade detection [TA0005]. Through credential dumping
[TA0006], as well as network and host enumeration [TA0007], he can know how to move
laterally and pivot through the system [TA0008] towards the crown jewels. Finally, from the
last hop, he bulk queries tables from the SQL database, adopting methods such as aggregation
to steal desired information [TA0009] [TA0010]. This information if disclosed or sold may have
detrimental effect on an organisation’s reputation. It may result in financial loss or even
regulatory penalties. [TA0040].
We can also categorise the attack sequence into the three phases of the Kill Chain. For example,
before the attacker enters the system from the web application client, he would need have
needed to conduct some reconnaissance, in the pre-compromise phase, about the application
design, operating system, hosting server etc. to find vulnerabilities. Once that is done, he
knows how to craft the malicious code to exploit the application using various methods like
cross-site scripting. After injecting the script, he compromises the system by being able to
achieve unauthorised access and traverse within the system. Post-compromise, he moves
towards the crown jewels to execute SQL queries and steals data. This is an action on objective
for the attacker.
Ultimately, we populate the result from attack modelling into the table mentioned above, in a
similar way as the entry below. The star at the end of the sequence of attack indicates that
crown jewel i.e. database, is impacted.
Figure 14: Extract from Sample Threat Model for ICT – Web Application and Database System
Morana M. M., UcedaVelez T. (2015). Risk Centric Threat Modeling: Process for Attack
Simulation and Threat Analysis
National Institute of Standard and Technology. (2012). Guide for Conducting Risk Assessments
National Institute of Standard and Technology. (2016). Guide to Data-Centric System Threat
Modelling
  S/N.       Point of Entry     Threat Actor(s)          Sequence of Attack              Threat Description                                   Examples
 1.1   -     Web Server         APT Group            2, 4                     Exploit misconfigured firewall and use           Reconnaissance and scan using NMAP
 Recon                          Cyber criminals                               network discovery tools on the web server to     tool’s port scanning, ping sweeps, OS
                                                                              discover open ports, server OS, application      fingerprinting
                                                                              name and version number, and map out any
                                                                              additional host names or subdomains.
 1.2   -     Web Server         APT Group            4                        Perform scanning using web vulnerability         Reconnaissance and scan using Nikto
 Recon                          Cyber criminals                               scanners to discover known web application       vulnerability scanner to extract PHP
                                                                              and script vulnerabilities on the web server     information to provide more information
                                                                              URL.                                             regarding the installation of PHP versions,
                                                                                                                               paths and installed extensions and scans
                                                                              Such information is then used to exploit         for vulnerabilities in the web server.
                                                                              known vulnerabilities to gain unauthorised
                                                                              access to the files and folders in the system
                                                                              and exfiltrate sensitive information.
 2 - DDos    Web Server         Cyber criminals      4                        Overwhelming the web server with HTTP            HTTP flood attacks e.g. GET or POST
                                                                              requests and cause a denial of service (DoS).    requests
 3.1     –   Web Application    APT Group            1, 4, 7, 8, 9            Intercepting traffic to steal credentials, and   Burpsuite
 Web                            Cyber criminals                               use credentials to log in as administrator or
 App                                                                          user account to access web application and
 Vuln                                                                         query information from database.
 3.3    –   Web Application     APT Group            1, 4, 7, 8, 9     Exploiting vulnerable code, dependencies or     XML External Entities (XXE) Attack. Exploit
 Web                            Cyber criminals                        integrations to execute a remote request        vulnerability in XML processors to upload
 App                                                                   from the server and extract sensitive data.     XML or include hostile content in an XML
 Vuln                                                                                                                  documents.
 4.1        Enterprise          APT Group            10, 11, 7, 8, 9   Installing Remote Access Trojan (RAT), which    Phishing, whaling, spear phishing.
 Malware    Workstation         Cyber criminals                        establishes a backdoor, attacker pivots to AD
 in email                                                              and dumps credentials. He further moves
                                                                       laterally to exfiltrate valuable information
                                                                       from database.
 5.1  -     Enterprise          Insider              7, 8, 9           Man-in-the-middle attack to manipulate          Manipulating API application message
 MITM       Workstation                                                communications between the application          headers or body.
                                                                       and the database.
 6.1    -   Enterprise          Insider              8, 9              Attacker escalates privilege to tamper with     Stealing of privileged database admin
 Tamper     Workstation                                                database, resulting in modification or          credentials to modify or drop tables.
                                                                       unavailability of data.
 7.1        Firewall/Router     APT Group            2, 3              Attacker performs DOS attack on the router      Exploit misconfiguration in firewall or
                                Cyber criminals                        and cause disruption to the network.            flood the router with ICMP packets
 7.2        Router              Insider              6                 Attacker modifies the routing table of the      ARP poisoning. Sending malicious/wrong
                                                                       router to conduct man-in-the middle attacks.    routing table updates to redirect the
                                                                                                                       traffic, or delete the configuration of the
                                                                                                                       router
                                                                                                                  Spoofing
                                                                                                         1         MITM
                                                            VPN                                                                    VPN
                                                                      Web
                                                                     Server                                                                 Remote OEM /
                                                                                                                                            vendor support
                                                           POP3
          DMZ                                                                                     Phishing
        Firewall                                                                                   DDoS           2
                                                                     Email                                                         SMTP      Sender from
                   Firewall
                   bypass     3                                      Server                                                                    Internet
TCP/IP
        Firewall                                                                                  Ransom-
                                       Privilege
                                                                                                    ware
                                      Escalation    Domain                         Business        Supply               Internal                Enterprise
                                                   Controller                       Server                                App                   Workstation
                   Firewall
                              4   5                                                                 chain
                   bypass                                                                                     6
                                  Manage AD                                                    Maintain SW
                                  policies                                                     and HW                             HTTP
                                                                                                                  Injection
                                                                                                                                                             Privilege
                                                                  System                                7            XSS            Corporate               Escalation
                                                                Adminstrator                                        Hijack            User              8
TCP/IP NTP
                   Firewall
                   bypass     9             10      Spoofing                                                      I/O Config                     SQL            Data
                                                                                - Program logic                                                               exfiltrate
                                                                                - Firmware
                                                                                   Corrupted                             System
                                                                        Modify
                                                                                   firmware,                                                   I/O
                                                                                                                                                                    13
                                                               11       source
                                                                                      USB
                                                                                                                       Adminstrator         misconfig
                                                                         code
                                                                                    malware
                                                                                                                                                        12
                                                                                            14
                                                                     Primary                                          Corrupted           Secondary
                                                                                                       Modify
                                                                                          Privilege                   firmware,              HMI
                                                                       HMI                             source
                                                    Fieldbus                             Escalation                      USB
                                                                                                        code
                                                                                                                       malware
                                                                       - Commands                 Operator
                                                                       - Set points
1.1 Email Cyber criminals 2 Flooding email server causing DDoS. Estonia 2007
 1.2    Email                Cyber criminals       2, 5, 6                  Ransomware through email, encrypting files          EKANS, WannaCry
                                                                            needed for enterprise operations.
 1.3    Email                APT actor             2, 8, 11, 15,            External party establishes call back to C2 server   Duqu, Havex (Dragonfly),
                                                                            and injects RAT for keylogging or disrupting        Triton
                                                                            physical operations.
 2      Domain Controller    Privileged insider    5, 8, 11,                Compromised AD allows privileged escalation         DCShadow
                                                                            from enterprise workstation pivoting into
                                                                            engineering workstation disrupting physical
                                                                            operations.
 5      Enterprise           Insider               8, 11, 15,               Privileged escalation from enterprise workstation   BlackEnergy
        workstation                                                         allows pivoting into engineering workstation
                                                                            disrupting physical operations.
 6      Time server          Contractor,           10,                      Asynchronous clock disrupts time dependent          ICSA-14-345-01
                             Insider                                        protocols and operations.                           CVE-2015-7871
 7      Engineering          Contractor,           11, 15,                  Modified code, corrupted firmware or malware        ICSA-16-138-01A
        workstation          Privileged insider                             through removable device disrupts physical
                                                                            operations.
 8      I/O server           Contractor,           12,                      Misconfigured I/Os disrupt communication and        ICSA-15-337-03
                             Privileged insider                             operations.
 10     Operator HMI         Insider               14, 15,                     Privileged escalation from operator HMI allows         Cisco Blogs (Aug 2009):
                                                                               disruption of operations.                              Lessons from an Insider
                                                                                                                                      Attack on SCADA Systems -
                                                                                                                                      GhostExodus
 11     Controller           Contractor,           15,                         Modified programme logic disrupts physical             Maroochy Shire sewage spill
                                                                               operations.
                             Insider
 14     Remote access        APT actor             1,15,     (direct access)   MITM hijacks remote session to communicate             Remote vendor access
                                                                               with controller.
4. Security Cards
   Security Cards (http://www.securitycards.cs.washington.edu) is a brainstorming toolkit, which
   encourages creative thinking about cybersecurity threats. It uses a deck of 42 cards in four
   dimensions (suites) to facilitate threat discovery.
5. Attack Trees
   Introduced by Bruce Schneier, an Attack Tree is a conceptual hierarchy that shows how a system
   may be attacked. Attack Trees provide a holistic way to analyse the security of a system and its
   processes. At the top of the diagram is a root node, defining the attacker’s ultimate objective
   e.g. obtain administrative privileges. Below that are leaf nodes that describe different ways of
   achieving the ultimate objective defined in the root node. Each leaf node then becomes a
   subsidiary objective of the root node with child nodes that further expand how the attacker can
   achieve the objective. An example is shown below: