<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Workshop on Artificial Intelligence and Formal Verification, Logic, Automata, and Synthesis,
September</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Aliyu Tanko Ali</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Damas Gruska</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Comenius University</institution>
          ,
          <addr-line>Mlynská dolina, 842 48 Bratislava</addr-line>
          ,
          <country>Slovak Republic</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2021</year>
      </pub-date>
      <volume>22</volume>
      <issue>2021</issue>
      <abstract>
        <p>Safety-critical assets are facing enormous threats, and their continue existence lies in the ability to identify and mitigate these threats before they are realised. One good example of such assets is autonomous vehicles, a form of (application) AI that is equipped with self-awareness mechanisms that allow it to interact with a set of objects from the physical surrounding. However, this interaction can result in exposing the asset to a new set of undesired vulnerabilities that are dificult to identify. One of the traditional threat analysis methods used for threat modelling of diferent kinds of assets is attack trees, a well-known formalism used in security, safety, as well as risk analysis. In this paper, we propose an extension of attack trees, called dynamic attack trees. This allows us to model and analyse assets with dynamic threat environments that can interacts with external objects over time.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Attack Trees</kwd>
        <kwd>Cyber-Physical Systems</kwd>
        <kwd>Security</kwd>
        <kwd>Formal Modelling</kwd>
        <kwd>Artificial Intelligence</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction and motivation</title>
      <p>
        In recent years, safety-critical infrastructures (CI) become widely adopted as part of digital
transformation. These involve using computing systems, networks, and robotics to form the
backbone of a nation’s economy. Technologies such as industrial control systems, embedded
systems, IoT systems, artificial intelligence (AI), and cyber-physical systems (CPS) etc., emerged
to improve performance, eficiency and users satisfaction. Protecting CI’s ecosystem against
potential attacks is crucial as most legacy systems and infrastructures integrate emerging
technologies while maintaining their original design and characteristics. For example, traditional
infrastructures/systems (i.e. vehicles, homes, doors) that integrates advanced technology to
operate as CPS (i.e. autonomous vehicles, smart-homes, smart-doors/locks) are visible everywhere.
However, the threat analysis approach used for the legacy systems is still adopted for the CI (i.e.
CPS), even though the threat environments, as well as the attacker’s knowledge about the new
technology’s operations, difers [
        <xref ref-type="bibr" rid="ref1 ref2">1, 2</xref>
        ] (i.e. legacy assets are designed as single entity, while CI
consists of diferent (sub)systems that can sometimes run concurrency).
      </p>
      <p>
        One such approach for threat analysis methods is the attack trees [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], a popular approach
used for threats [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], and risk analysis for diferent kinds of assets [
        <xref ref-type="bibr" rid="ref5 ref6 ref7">5, 6, 7</xref>
        ]. Using this formalism,
varying ways an asset may be compromised are modelled as a tree. The root of the tree is the
attack target, it is further broken down (decomposed) into smaller units that are easier to solve,
known as internal nodes (sometimes referred to as sub-goals). This process is repeated until the
      </p>
      <p>
        (a) Steal a car while parked, 1
Figure 1: A simple example of how to steal a car at diferent threat environments 1 and 2
(b) Steal a car while moving, 2
sub-goal(s) can no longer be broken down, and a set of leaf nodes is reached. The leaf nodes
represent an atomic action that an attacker can execute to initiate an attack. Over the past years,
attempts has been made to extend attack trees to analyse diferent kinds of assets and attack
scenarios. Some of these extensions includes attack-defence trees, attack countermeasures,
sequential and parallel attack trees, attack protection trees [
        <xref ref-type="bibr" rid="ref10 ref5 ref6 ref8 ref9">5, 6, 8, 9, 10</xref>
        ] etc. However, modern
asset’s operations (e.g. autonomous vehicles) heavily depend on interacting with physical
surrounding. For example, an autonomous vehicle can interact with the surrounding objects
(i.e. cars, infrastructures, trafic signs) to perform diferent activities ranging from avoiding
collision, energy synchronisation, and identifying danger. Even though these objects are not an
integral part of the vehicle, they can be used as an attack vector to launch dangerous attacks
such as DoS, message falsification attack, message spoofing [
        <xref ref-type="bibr" rid="ref11 ref12">11, 12</xref>
        ] etc.
      </p>
      <p>
        Problem statements. An attack tree is a tree-based formalism inspired by fault trees [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ],
and they are used to model (mostly static) threats. On the other hand, assets nowadays are
hybrid [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], integrating the physical world to the digital world. This integration poses a great
challenge when applying attack trees for the threat modelling. The threat environment is
everchanging due to agents behaviour (e.g. interaction with (sub)systems that are public or/and less
secure), and the vulnerability landscape is erratic due to infrastructure updates (e.g. interaction
with other components to complete a task). If such assets are to be analysed using attack trees,
the estimated annotations of the tree (e.g. nodes) needs to be updated regularly to reflect both
behaviours.
2. Dynamic attack trees
(, ℰ ) is a tree, where  = {0} ∪  ∪  is the sets of nodes in the tree. 0 ∈  denotes its
root,  denotes set of internal nodes (sometimes refer to as sub-goals), and  denotes set of
leaf nodes. These sets of nodes are connected by a set of edges ℰ ⊆  ×  . Each node in the
attack tree (except for leaf nodes) has a gate refinement. A gate indicates (the fashion) how a
node can be achieved (compromised). The interpretation of this fashion is on a node at a level
above the current node (parent node). Two of the widely used gates refinement are the  
and  gates. The   gate required that all the child nodes linked to a parent node must
be compromised before the parent node is reached, while an  gate can be reached if any
of the child nodes can be compromised. Formally we associate gates to nodes by the mapping
 : {0} ∪  → { , }.
      </p>
      <p>We assume a set  = { 1, ...,  } of external systems/objects from the physical environment
(i.e. IoT devices, trafic signs etc.) can communicate with an asset (for example, when they
are within proximity via sensors). Intuitively, the sets of nodes in an attack tree represents
areas/components of an asset that a malicious user can compromise to attain a malicious goal,
this set of objects can also serve as attack vector to any asset they can interact with. For example,
fake trafic signs can be malicious to vehicles.</p>
      <p>Example 1. Shown in Figure 1 (a) is a simple tree describing how to steal a car. This can be done
by either obtain key or short-circuit. Now let us focus on obtain key sub-goal. It can be achieved
through steal key or make copy. However, vehicles nowadays can be operated with external devices
such as remote starter and mobile phones to unlock doors, and start the engine.  0,  1 are time
points (explain later) that shows default tree and when an external device is added respectively.</p>
      <p>Now, before we formulate how this new nodes can be added to the tree, we first assume that
the threat environment of an asset can change due to agent(s) behaviour. Informally, a threat
environment is a state of operation which exposed an asset to a (new) set of vulnerabilities and,
these vulnerabilities can only be exploited while the asset remains in that state. For example,
Figure 1 (a) shows how to steal a car while it is parked. A change in the threat environment e.g
the car starts moving, an attacker can steal the car via other means i.e shown in Figure 1 (b).</p>
      <p>Let ∆ = { 0,  1, ...,  ℎ} be a set of (analysis) time points. We will use this set of time points to
mark when a new vulnerability emerged in the asset (i.e. external device connect, disconnect).
Definition 1. Let {0} ∪  be a root node and a set of internal nodes in an attack tree,  be
a set of external objects from the physical environment, and ∆ be a set of analysis time points.
A connection between the nodes in the tree and external objects is given as a function mapping
 : ({0} ∪ ) ×  × R+ → {0, 1} and  (, ,  ) =  (, ,  ) for   ≤  &lt;  +1, for 0 ≤  &lt; ℎ,
i.e. value of  changes with time points from ∆ .</p>
      <p>If  (, ,  ) = 1, for simplicity we write  ( ), interpreting as connection via an intermediate
node  ∈  of the tree with an external system  ∈  and  is the time point at which the
connection occur. And if  (, ,  ) = 0, we simply write  to denote that the node (sub-goal)
does not connect with any external system/object. In a case of  ( ), the internal node  is
said to include  as a child (leaf) node (an edge linking the sub-goal of the asset with external
system/object). The attack tree in Figure 1 (a) shows some external devices which can connect
to the sub-goal and be used as attack vectors.</p>
      <p>Example 2. Let’s refer back to Figure 1 (a), the analysis time points  0 and  1 indicate when the
external device(s) shown in dotted lines connects to the car. As such, become possible ways (when
exploited) to reach the root node. At  0, there is no connected objects to the car.
Definition 2. A dynamic attack tree is a tuple  = (, 0, ℰ , , ∆ , Λ ,  ) where,  is a set of
potential nodes that always create a tree, 0 is a fixed root node that represents the attacker’s target,
ℰ ⊆  ×  is a set of potential edges that linked the nodes,  : {0} ∪  → { , } is a
mapping that associate the root node and set of sub-goals with the gates refinement, ∆ is a set of
analysis time points for the connections, Λ is a set of objects from the physical environment, and
 is a function such that for each time point  ∈ ∆ and each device  ∈ Λ , the sub-tree of (, ℰ )
consisting of 1. ) all the nodes  ∈  such that  (, ,  ) = 1 and, 2. ) all the leaves to which
these are connected (together with the corresponding restriction of ℰ ) still forms a tree, 3. ) attack
tree at time point   will be denoted as a threat environment .</p>
      <p>Example 3. Given a set of threat environment {1, 2..., }, notice that the attack paths in
each threat environment difers. For instance, Obtain key or short-circuit are set of leaf nodes that
represents atomic actions to steal a car while it is parked, these same vulnerabilities cannot be
exploited in another threat environment (e.g moving).</p>
      <p>Now, let  be a set of attack actions, an attack actions are set of eforts that a malicious user
can perform in order to compromise vulnerabilities. Let  be a set of leaf nodes that represent
vulnerabilities/attack paths. We define an attack as a function  : ( × ∆) →  ∪ { },
associating leaf nodes in the tree at a given (analysis) time point with a set of actions or Nil
(when no action). An attack will not succeed if an attacker cannot complete executing the attack
actions and the threat environment changed. Suppose an attacker fails to complete an attack
process while the asset is at a particular threat environment  (i.e. car parked), any change
in the threat environment to +1 (i.e. car moving) means that, the attack process started at
previous threat environment  will be terminated since the vulnerabilities are no longer in
existence at threat environment +1.</p>
    </sec>
    <sec id="sec-2">
      <title>3. Dynamic attack trees analysis</title>
      <p>
        The Work in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] introduced how attack trees can be translated into a network of parallel timed
automata (TA), with each automaton representing a linear path from a leaf node to the root
node. The sets of nodes in the tree represents a set of states in the timed automata, the root node
represents a final state, the set of edges represents a set of transition relations, and the set of attack
actions represents a set of events. There exists an integrated formal verification tool UPPAAL
[
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], that accepts a version of TA as its formal language. Using UPPAAL, we can check whether
an attacker ℬ can reach the root node (in other words, whether the asset can be compromised)
by the means of reachability checking in the TA. We can also perform other queries to see
if the tree/attacker satisfies some properties such as; if an attacker ℬ will always/eventually
reach the root node when the asset is at a particular threat environment or when some external
device is connected. This attacker ℬ can also be modelled as a (separate) timed automaton. In
our previous work [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], we demonstrated how attack trees can be translated into a network of
parallel timed automata. Given a dynamic attack tree , a set of threat environment {1, ..., },
and an attacker ℬ. The root node of the tree is reachable by ℬ if corresponding TA plus timed
automaton running with the attacker can reach the final location.
      </p>
      <p>Conclusion and future work. The work described here is still in-progress, additional work
is being conducted. An attack tree for a big and complex asset is usually very big; adding set
of external objects that can be incorporated to the tree over time adds more complexity and
number of states. In our next work, we will formally define, and extend dynamic attack trees
translate that will include multiple threat environments. We will model (using UPPAAL) and
analyse some working projects.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>F.</given-names>
            <surname>Arnold</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Hermanns</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Pulungan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Stoelinga</surname>
          </string-name>
          ,
          <article-title>Time-dependent analysis of attacks</article-title>
          ,
          <source>in: International Conference on Principles of Security and Trust</source>
          , Springer,
          <year>2014</year>
          , pp.
          <fpage>285</fpage>
          -
          <lpage>305</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>A.</given-names>
            <surname>Roy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Kim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K. S.</given-names>
            <surname>Trivedi</surname>
          </string-name>
          ,
          <article-title>Cyber security analysis using attack countermeasure trees</article-title>
          ,
          <source>in: Proceedings of the Sixth Annual Workshop on Cyber Security and Information Intelligence Research</source>
          ,
          <year>2010</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>4</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>B.</given-names>
            <surname>Schneier</surname>
          </string-name>
          ,
          <article-title>Attack trees</article-title>
          ,
          <source>Dr. Dobb's journal 24</source>
          (
          <year>1999</year>
          )
          <fpage>21</fpage>
          -
          <lpage>29</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>V.</given-names>
            <surname>Saini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Duan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Paruchuri</surname>
          </string-name>
          ,
          <article-title>Threat modeling using attack trees</article-title>
          ,
          <source>Journal of Computing Sciences in Colleges</source>
          <volume>23</volume>
          (
          <year>2008</year>
          )
          <fpage>124</fpage>
          -
          <lpage>131</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>M.</given-names>
            <surname>Fraile</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ford</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Gadyatskaya</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kumar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Stoelinga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Trujillo-Rasua</surname>
          </string-name>
          ,
          <article-title>Using attack-defense trees to analyze threats and countermeasures in an atm: a case study</article-title>
          ,
          <source>in: IFIP Working Conference on The Practice of Enterprise Modeling</source>
          , Springer,
          <year>2016</year>
          , pp.
          <fpage>326</fpage>
          -
          <lpage>334</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>C.-W.</given-names>
            <surname>Ten</surname>
          </string-name>
          , C.-C. Liu,
          <string-name>
            <given-names>M.</given-names>
            <surname>Govindarasu</surname>
          </string-name>
          ,
          <article-title>Vulnerability assessment of cybersecurity for scada systems using attack trees</article-title>
          , in: 2007 IEEE Power Engineering Society General Meeting, IEEE,
          <year>2007</year>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>8</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Siddiqi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. M.</given-names>
            <surname>Seepers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Hamad</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Prevelakis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Strydis</surname>
          </string-name>
          ,
          <article-title>Attack-tree-based threat modeling of medical implants</article-title>
          .,
          <source>in: PROOFS@ CHES</source>
          ,
          <year>2018</year>
          , pp.
          <fpage>32</fpage>
          -
          <lpage>49</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>F.</given-names>
            <surname>Arnold</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Guck</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kumar</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Stoelinga</surname>
          </string-name>
          ,
          <article-title>Sequential and parallel attack tree modelling</article-title>
          , in: International Conference on Computer Safety, Reliability, and Security, Springer,
          <year>2014</year>
          , pp.
          <fpage>291</fpage>
          -
          <lpage>299</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>A. T.</given-names>
            <surname>Ali</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. P.</given-names>
            <surname>Gruska</surname>
          </string-name>
          ,
          <article-title>Attack protection tree</article-title>
          ., in: CS&amp;P,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>A. T.</given-names>
            <surname>Ali</surname>
          </string-name>
          ,
          <article-title>Simplified timed attack trees</article-title>
          .,
          <source>in: RCIS</source>
          ,
          <year>2021</year>
          , pp.
          <fpage>653</fpage>
          -
          <lpage>660</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Y.-C. Sun</surname>
            ,
            <given-names>G.-H.</given-names>
          </string-name>
          <string-name>
            <surname>Yang</surname>
          </string-name>
          ,
          <article-title>Event-triggered resilient control for cyber-physical systems under asynchronous dos attacks</article-title>
          ,
          <source>Information Sciences 465</source>
          (
          <year>2018</year>
          )
          <fpage>340</fpage>
          -
          <lpage>352</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>B.</given-names>
            <surname>Nassi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Sror</surname>
          </string-name>
          , I. Lavi,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Meidan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Shabtai</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Elovici</surname>
          </string-name>
          ,
          <article-title>Piping botnet-turning green technology into a water disaster</article-title>
          , arXiv preprint arXiv:
          <year>1808</year>
          .
          <volume>02131</volume>
          (
          <year>2018</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>P. J.</given-names>
            <surname>Brooke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. F.</given-names>
            <surname>Paige</surname>
          </string-name>
          ,
          <article-title>Fault trees for security system design and analysis</article-title>
          ,
          <source>Computers &amp; Security</source>
          <volume>22</volume>
          (
          <year>2003</year>
          )
          <fpage>256</fpage>
          -
          <lpage>264</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>T. A.</given-names>
            <surname>Henzinger</surname>
          </string-name>
          ,
          <article-title>The theory of hybrid automata</article-title>
          ,
          <source>in: Verification of digital and hybrid systems</source>
          , Springer,
          <year>2000</year>
          , pp.
          <fpage>265</fpage>
          -
          <lpage>292</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>R.</given-names>
            <surname>Kumar</surname>
          </string-name>
          , E. Ruijters,
          <string-name>
            <given-names>M.</given-names>
            <surname>Stoelinga</surname>
          </string-name>
          ,
          <article-title>Quantitative attack tree analysis via priced timed automata</article-title>
          ,
          <source>in: International Conference on Formal Modeling and Analysis of Timed Systems</source>
          , Springer,
          <year>2015</year>
          , pp.
          <fpage>156</fpage>
          -
          <lpage>171</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>J.</given-names>
            <surname>Bengtsson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Larsen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Larsson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Pettersson</surname>
          </string-name>
          , W. Yi,
          <article-title>Uppaal-a tool suite for automatic verification of real-time systems</article-title>
          , in: International hybrid systems workshop, Springer,
          <year>1995</year>
          , pp.
          <fpage>232</fpage>
          -
          <lpage>243</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>