Research Article

An Automatic Planning-Based Attack Path Discovery Approach from IT to OT Networks

Algorithm 1

Device reachability graph partitioning.
Input: device reachability graph Gr, subgraph size subg_size
Output: all subgraphs
(1)function GENERATE SUBGRAPHS (Gr, subg_size)
(2)if nodes_num of Gr more than subg_size then
(3)  push Gr to Qp
(4)  while Qp is not empty do
(5)   pop a subgraph G from Qp
(6)   find branch nodes Ns from G
(7)   get edges from Ns and push them into Qe
(8)   while Qe is not empty do
(9)    pop an edge qe from Qe
(10)    find successor subgraph Gs from edge qe in G
(11)    if nodes in Gs less than subg_size then
(12)     push Gs into Qp
(13)    else
(14)     push Gs into Qo
(15)  output all subgraphs from Qo
(16)else
(17)  output Gr
(18)end function