Abstract
Today, it is indispensable for us to know our IT infrastructure’s security level to make rational decisions to protect it from malicious attacks. However, the ever-growing scale and complexity of our infrastructures make it difficult. One available approach is attack-graph analysis, a model-based algorithm that generates a directed graph called an attack graph composed of possible attack actions and their AND/OR combinations. An attack graph allows us to identify the logical possibility of cyber-attacks. Unfortunately, attack graphs lack quantitative information, such as the likelihood of a successful attack – the reachability. Meanwhile, some advanced approaches, such as the Bayesian attack-graph, compute reachabilities with an attack graph. Still, those methods have problems in the scalability and the handling of cycles contained in attack graphs. This study proposes and examines another approach named reachability-graph analysis. A reachability graph is a directed graph obtained from an attack graph by which we can compute the reachabilities. It is extremely fast to generate, thus applicable to large-scale network analysis. Furthermore, this method allows cycles in attack graphs. Such a scalable algorithm has been awaited for over a decade; it generates probabilistic security metrics and is guaranteed applicable to any cyclic AND/OR graphs. We compare our approach’s computational efficiency with the Bayesian attack-graph. Also, we apply our approach to large-scale, cyclic attack graphs. Several theoretical properties with proofs and the computational complexity of our approach are examined too.
Keywords
Introduction
Today, we can easily find various reports telling us the rise of cyber-attacks and the relevant damages to our society [6,9,34]. It is indispensable for us to know the security level of our IT infrastructure on which we depend. That knowledge is the basis for rational decision making to protect ourselves. However, the ever-growing scale and complexity of the IT infrastructures make it difficult to analyze its security. For example, it is not uncommon to see a computer network composed of thousands of machines, and that each node contains multiple vulnerabilities to be exploited. The number of logically possible combinations of the exploits is astronomical.
One available approach is attack-graph analysis [32]. Attack-graph analysis is a model-based algorithm that generates and analyzes a directed graph called an attack graph. We can obtain an attack graph from the network topology and its configuration, including the information about the distribution of vulnerabilities. The node in the graph represents an attack action, and a “path” between two nodes corresponds to a sequential attack action procedure. Attack graphs enable us to identify the potential of cyber-attacks.
Due to resource limitations, we need to prioritize cybersecurity investments in general. Unfortunately, attack graphs lack the quantitative information required for such prioritization. Our interest is in the likelihood of a successful attack – the reachability, which is quantitative. There are many studies approaching reachabilities in the broad sense. For example, Mehta et al. [22] proposed a method processing an attack graph as a kind of Markov chain, but an attack graph is an AND/OR graph, and AND combinations of events are not expressible as a Markov chain. Sawilla and Ou [35] propose a proxy metric considering AND combinations of events. However, the metric is not interpretable as a probability. Bayesian attack graphs [10,20,39] can calculate reachabilities as probabilities while handling AND/OR combinations of events. The remained problems are the scalability and the handling of cycles in attack graphs; Bayesian attack graphs are defined as acyclic graphs, although general attack graphs are cyclic. It is still challenging to analyze the security of a network with the realistic scale and cyclic network topology.
In this study, we propose yet another approach named reachability-graph analysis. A reachability graph is a directed graph obtained from an attack graph. It enables us to compute reachabilities as probabilities, not as proxy metrics. It is extremely fast to generate, thus applicable to large-scale network security analysis. Also, it applies to attack graphs with cycles that Bayesian attack graphs cannot handle. We examine its performance and characteristics, including configurable filter functions used to define reachabilities.
The major contributions of this study are as follows:
To the author’s best knowledge, the proposed algorithm is the first scalable one that calculates probabilities and applies to cyclic attack graphs with AND/OR nodes. This study also articulates a class of extensible metrics provided with a suite of mathematical proofs. It enables further development of security metrics with the desirable properties above.
Section 2 refers to the relevant prior studies and quickly summarizes them. Section 3 defines the problem we solve in this study, with the definition of attack graphs. Section 4 explains two approaches: the Bayesian attack graph and the reachability graph. The latter is our proposed approach. In Section 5, we examine these approaches with two numerical experiments. The first experiment compares the computational efficiency of our approach with Bayesian attack graphs. The second experiment shows the performance of our approach applied to large-scale networks with cyclic topology. Then, after discussing the relevant theoretical topics, including the computational complexity and the extensibility of our approach, we make conclusions.
Background
Phillips and Swiler [32] proposed the first comprehensive framework of attack graph analysis, though their approach requires an exponential volume of computation to generate the graph [37]. Later on, Ammann et al. [3] introduced the concept of exploit dependency graph [27], which enables the attack-graph generation in polynomial time. Based on these foundational studies, the current major approaches are divided into two types of attack-graph definition: TVA (Topological Vulnerability Analysis) proposed by Jajodia and Noel [18] and Logical Attack Graph proposed by Ou et al. [28–30]. Both approaches leverage the concept of exploit dependency in common. We adopt the definition by Albanese et al. [2] as the basis of our approach in this study, which is in the school of TVA.
An attack graph describes the qualitative inference results about the potential attacks. In essence, an attack graph is a kind of AND/OR graph. It is a directed graph where each node in it denotes AND/OR bindings of its parents. Attack graphs lack any quantitative information such as successful attack likelihood or monetary loss. We need some additional approaches to make relevant risks comparable.
Idika and Bhargava [17] propose to use the combination of simple metrics such as the mean length of attack paths, the standard deviation of them, and the count of them. Though, their metrics are qualitative inherently. For example, can we determine if a network’s risk is twice as high when we see the doubled number of attack paths? The algorithm by Mehta et al. [22] computes the pseudo PageRank like Google’s. Each node’s rank metric in an attack graph denotes the expected probability of the coupled event occurrence. The critical limitation is that the metric cannot handle AND combinations of events. Sawilla and Ou [35] propose another metric named AssetRank. This metric considers the AND/OR combinations of events. On the other hand, the value of AssetRank is not a probability. Wang et al. [38] define a set of intuitive calculation rules for event occurrence probabilities. Their approach can handle both of AND/OR combinations of events. However, it assumes that every event on the graph is independent. The algorithm proposed by Homer et al. [13,14] overcomes all of these issues. The problem left is that the computational complexity explodes in the worst case.
To date, the Bayesian attack graph [10,20,39] seems to be the most sophisticated approach for attack-graph based security metrics calculation. A Bayesian attack graph is an attack graph represented as a Bayesian network [31] and can compute the occurrence probability of the non-independent events coupled with nodes.
A Bayesian network is a joint probability distribution expressed as a DAG (Directed Acyclic Graph) of stochastic variables. Belief propagation is a well-known inference algorithm proposed by Pearl [31]. It is an exact inference algorithm applicable to Bayesian networks with polytree structure. At the same time, it is also empirically known as an approximate inference algorithm applicable to arbitrary Bayesian networks [24]. The computational complexity of belief propagation is almost linear in many cases.
The key idea in the Bayesian attack graph is to leverage conditional probability distribution. In a Bayesian network, we can formulate a mapping from the AND/OR combination of events in an attack graph to the corresponding node with an appropriately defined conditional distribution.
Liu and Man [20] proposed the earliest attempt for the Bayesian attack graph. Each variable in their Bayesian attack graph corresponds to a host’s state, such as the host is compromised or not. Their approach does not care about the difference between AND/OR combinations of events. Frigault and Wang [10] proposed to leverage the flexibility of conditional probability distributions to represent the combination of events. Pen Xie et al. [39] examined the use of Noisy-OR and Noisy-AND to map attack graph nodes to Bayesian network nodes. Meanwhile, these prior studies only discussed the theoretical and limited cases of problems. The studies by Poolsappasit et al. [33] and Muñoz-Gonzalez et al. [23] are Bayesian attack graph applications to more realistic scenarios.
As is mentioned above, various researchers have discussed the Bayesian attack graph. However, there remain the following two issues.
The first and prominent issue is scalability. In realistic scenarios, we have to analyze a network composed of thousands of computers. Nevertheless, none of these Bayesian prior studies examined the analysis for such large-scale networks. The exact inference on a Bayesian network is an NP-hard problem [7]. Therefore, it is inevitable to depend on the approximate inference algorithms to process large-scale networks. Regretfully, those approximations are not sufficiently fast. Furthermore, it could be erroneous, and there is no guarantee for the algorithm to terminate in general.
The second issue is the treatment of cycles. By definition, a Bayesian network is a DAG. In contrast, an attack graph can contain cycles. Frigault and Wang [10] assume that the input attack graph is a DAG. Peng Xie et al. [39] never mentioned the cycles in an attack graph. Poolsappasit et al. [33] assume that it is ignorable. Muñoz-Gonzalez et al. [23] refer to the cycles cut algorithm in Wang et al. [38], while Wang’s approach requires multiple, transformed graph evaluations implicitly. In theory, we can regard the approach by Homer et al. [13,14] as a kind of Bayesian attack graph with graph conversion preprocess from cyclic to acyclic, and this conversion also accompanies costly computation alike.
As a whole, we can say that the Bayesian attack graph has considerable weaknesses in the application to practical cases, including large scale, cyclic attack-graphs. We solve these issues with another approach named reachability graph.
Problem settings
Attack graph
At first, let us define attack graphs. We follow the definition in [2].
(Attack graph).
Given a set of exploits E, a set of security conditions C where
Usually, we use initial conditions as the representation of vulnerabilities of the hosts on a network. The exploits are the nodes representing the AND nodes in an attack graph. The intermediate conditions are the nodes corresponding to the OR nodes. See Fig. 1 shows an example.

A small example of an attack graph.
This attack graph implies that the occurrence of
We use an attack graph as an input to generate other graph structures discussed in Section 4. Various algorithms are proposed to generate an attack graph [16,19,36]. Most of the algorithms have the polynomial computational-complexity in the size of the network to be analyzed. Based on these prior studies, we assume that the attack graph in need is given.
Our interest is in the probabilistic quantification of the risks implied by an attack graph. Suppose every node in an attack graph is a Bernoulli variable, i.e., each variable takes a value either True or False. If the node
(Network reachability analysis).
Given an attack graph
This definition is incomplete in the sense that there is a freedom of choice for the “natural” assignment of reachabilities to nodes in an attack graph. We leverage this flexibility to examine several different approaches to the problem.
Approach
Bayesian attack graph
As preparation, we define several terms relevant to Bayesian network. In this subsection, we use capital variables such as
In this study, we focus on only two types of conditional distribution: Noisy-OR and Noisy-AND. Let us define the set
With the terms introduced above, we define a Bayesian attack graph as follows. Here, we simplify the definition in Poolsappasit et al. [33] and Muñoz-Gonzalez et al. [23].
(Bayesian attack graph).
Given an attack graph
We have to define the configuration parameters
In a Bayesian attack graph, the marginal probability assigned to each node corresponds to the reachability. Various inference algorithms, such as belief propagation, can compute those probabilities. In the definition above, we map AND nodes in an attack graph to the variables with Noisy-AND probability distribution. Similarly, OR nodes are mapped to the variables with Noisy-OR distribution. As Section 4.3.2 in [31] discusses, the computational complexity of each conditional distribution’s marginalization with Noisy-OR/AND scales linearly with the number of parent variables, while it is exponential in general. We use the loopy belief propagation algorithm with this efficient computation for the experiment in Section 5.1.
Reachability graph
A reachability graph, which we propose here, is a directed graph in another form derived from an attack graph. In a reachability graph, we use the following functions to compute the reachability assigned to each node in an attack graph:
Max-OR function: Min-AND function: An arbitrary filter function
With the aid of these functions, we define the reachability graph as follows:
(Reachability graph).
Given an attack graph
1. External node: a node
2. Max-OR node: a node
3. Min-AND node: a node
We call the pair of G and its associated reachability defined above as a reachability graph. For convenience in the later discussion, we also define
The reachability graph introduced above is ill-defined. For example, in Fig. 2, where we assume that the filter function

An example of the reachability-graph undecidability.
Also, there is another problem. The initial reachabilities define the reachabilities only for external nodes. We need to compute the reachabilities for other nodes.
We define Algorithm 1 to compute the whole reachability graph uniquely:

Reachability-graph analysis
The following claims hold for Algorithm 1:
Every temporal reachability increases monotonically during the process of the algorithm.
Suppose we have an input attack graph, and let
Given the input attack graph is finite, the procedure of reachability-graph analysis always terminates within finite steps.
(Confluence of reachability graph analysis).
The resultant reachabilities identified by the reachability-graph analysis is determined uniquely irrespective of the choice of update node in line 10 of the algorithm.
Theorem 8 implies the affinity of this algorithm to parallelism. See Appendix for the proofs.
The interpretation of reachabilities
Given an attack graph and its associated initial reachabilities, both Bayesian attack graphs and reachability graphs determine the reachabilities to nodes in the graph. However, the interpretation of reachabilities is different. Let us see the detail by calculating the reachabilities for Fig. 3.

An input attack-graph for reachability calculation.
Firstly, let us see a simple, intuitive way of reachability assignment following [38].
Remind that an attack graph
The definition above follows the approach by Wang et al. [38]. Let us apply this definition to the case in Fig. 3. Suppose that the initial event probability
In the Bayesian attack graph, the probability is different. While the approach above assumes that
Now, let us see how our approach, the reachability graph analysis, handles the reachability in yet another different way. Here, we use filter functions
As we can see, the reachability graph has a different probability assignment.
The difference between these three cases comes from handling events convergence at node

Another attack graph for reachability calculation.

The overlapping volume of convergent events.
Figure 5 shows the volume of overlapped attacks in node
This difference in the reachability semantics also affects how we can decrease them. In practice, if we want to strengthen the system’s security, we have to focus on the weakest part of the system. However, in the usual approach like Bayesian attack graph, we can lower the reachabilities without focusing on that. In contrast, it is required in the reachability graph analysis since its reachabilities are determined by the path composed of the most advantageous sequence for the attacker. This point is a discreet but substantive virtue of our approach.
Performance comparison
This subsection compares the computational efficiencies of the Bayesian attack graph and the reachability graph through a numerical experiment. Figure 6 shows the general structure of the networks to be analyzed in this experiment.

General structure of the experimental network.
The network comprises four layers – databases, servers, gateways, and clients – and the Internet connection. We assume that the attacker starts the penetration from the Internet. The network topology forms a combination of overlapped trees, i.e., non-polytree DAG. Also, we assume each node except the Internet has at least one vulnerability.
Following the structure above, we examine five classes of networks with the number of nodes defined in Table 1.
Network size parameters for the experiment
The number of total vulnerabilities is the total of unique vulnerabilities over the network under this consideration. Note that we assume that client nodes share some vulnerabilities since most client computers have the same configuration. More detail is given in the Appendix.
We apply the two approaches in Section 4 to randomly generated attack graphs explained above. The data set comprises five classes defined in Table 1, where each class is a set of fifty networks. Therefore, we examine 250 cases overall. For the Bayesian attack graphs, the configuration parameters μ and ν for Noisy-OR/AND are set to one. For the reachability graphs, we assign a filter function
We compute the reachabilities to all the nodes in an attack graph by the two approaches. Both algorithms are implemented in Python 3.7 and are executed by cpython-3.7.3. The served hardware has an Intel Core i7-9750HQ 2.6 GHz processor (6 cores with HyperThreading) and 32GB memory. Figure 7 to Fig. 9 show the comparison results. In Fig. 7 and Fig. 8, the bars are the average times in seconds to calculate all the reachabilities, and the error bars represent the standard deviation.

Processing times of Bayesian attack graphs.

Processing times of reachability graphs.
Figure 9 shows the box plot with 4-quantiles in which the processing times are compared. Y-axis values show the ratios calculated by “the processing time in Bayesian attack graph” / “the processing time in reachability graph”. The circles are outliers with values either more than

Comparison of processing times.
It is easy to see that the reachability-graph analysis outperforms the Bayesian attack graph based approach. While the reachability graph analysis scales linearly in the size of the attack graph, the Bayesian attack graph based approach does not. Of course, their performance is not directly comparable since their semantics are different. Still, this clear advantage could make our approach an attractive alternative to the Bayesian attack graph.
In this section, we apply the reachability-graph analysis to large-scale networks. Table 2 shows the size parameters of the networks.
Network size parameters for the large-scale experiment
Network size parameters for the large-scale experiment
Other experiment configurations are as same as the previous experiment, i.e., 50 cases per class. Figure 10 shows the result.

Processing times of large-scale reachability graphs.
The attack graphs in the largest case have more than 130,000 nodes and 330,000 edges. Bayesian attack graph based approach cannot handle this class of networks due to its computational cost. We can say that reachability-graph analysis has the potential to analyze practical scale problems.
In addition to the above experiment, let us see how much the cycles in an attack graph affect the performance. For the purpose, we replace some of the gateway nodes in nw10 with hub nodes and cut some connections between clients and the Internet. In brief, when a node connects to a hub node, the hub node also connects to the node. As a result, the topology in (A) is transformed into (B), as shown in Fig. 11. This modification increases the topological distance from the Internet to the clients and enforces cycles handling relevant to them.
We apply this transformation to the fifty networks in nw10 while varying the number of hubs from 0 to 56, in 8 increments. Figure 12 shows the distribution of the processing times with the reachability-graph analysis of those networks.

Replacement of a gateway with a hub.
As the number of hubs increases, the processing times are getting longer. Nevertheless, the performance degradation is limited. Even when most of the gateways are replaced with hubs, it does not exceed the doubled processing time in the baseline case where no hubs. This result is a natural consequence implied by Lemma 6. The lemma guarantees that the analysis process does not loop the graph repeatedly.

Processing times of cyclic reachability-graphs.
Computational complexity
Belief propagation applied to polytree has the computational complexity of
In contrast, reachability-graph analysis always terminates within finite steps. The worst-case computational complexity is
In most cases, the reachability at a node will be updated just several times. Due to the monotonicity guaranteed by Proposition 5, any update requires the propagation of increased reachability. On the other hand, as the “while” iteration in Algorithm 1 goes further, the propagated reachability weakly decreases since filter functions satisfy
Figure 13, showing the update counts per node in the acyclic cases in Section 5, backs up the estimation above. The update counts per node keep around 1.0. In short, we can expect that the computational complexity in simple acyclic attack graphs is nearly linear. However, this estimation focuses on the update counts per node, and it is different from the actual processing times per node. The latter result is shown in Fig. 14. The processing times get increase as the graphs get larger. Note that the size of “nw6” is about ten times larger than “nw5.” This result implies that the time complexity of the algorithm is not linear. It depends on various factors, including, but not limited to, the topological structure of the attack graph, the distribution of initial reachabilities, and the order of element extraction at line 10 in the algorithm. These properties contribute to the count of reachability calculations performed at line 12 and 14. Figure 15 shows the averaged counts of these calculations per node. We can see the increase in evaluation counts, which is the main cause of the non-linear change in the processing times.

Update counts per node in acyclic attack graphs.

Processing times per node in acyclic attack graphs.

Evaluation counts per node in acyclic attack graphs.
As Fig. 12 shows, cycles do not affect the discussion above so much. Figure 16 to Fig. 18 clarify the performance detail.

Processing timers per node in cyclic attack graphs.

Update counts per node in cyclic attack graphs.

Evaluation counts per node in cyclic attack graphs.
In Section 5, we used the simple filter function
In this study, we limit reachability within
Monotonicity of reachability-graph analysis
Let both
We can regard the initial reachabilities in a reachability-graph analysis as a vector. Similarly, we can interpret the process of reachability-graph analysis as a function that maps an initial reachability vector to another reachability vector representing the whole reachabilities in a graph. Under this interpretation, the reachability-graph analysis function F satisfies
Other related works
In this subsection, we refer to recent studies not mentioned in Section 2. By comparing with them, we clarify why we stick to scalable, probability calculation algorithms applicable to attack graphs as cyclic AND/OR graphs.
Information security management is a kind of risk management, so it is natural to calculate risks during the process. In general, a risk is defined as the product of a probability and an impact. This explains the fundamental importance of probability calculation. For example, Chung et al. [5] propose a comprehensive framework for virtual network systems security management, in which attack probability calculation virtually equivalent to that of [38] is incorporated. The studies by GhasemiGol et al. [12] and Aksu et al. [1] also use the same calculation rules. As these prior studies indicate, probability calculation algorithms can provide a basis for other advanced studies. Our study proposes another type of probability, and it could be an alternative to the existing one to broaden our risk understandings.
Cyclic structures in an attack graph make security metrics calculation difficult. If we somehow unravel those cycles, the problem gets relatively easy. The algorithm by Wang et al. [38] contains such cycle elimination applied before probability calculation. Yousefi et al. [40] propose to unravel an attack graph to a set of attack paths; such a graph conversion enables further applications, for example, Q-learning over attack graphs [41]. However, cycle elimination might cause unintended biases since it implies the selection of specific attack paths. Also, cycle unraveling easily brings computational explosion. In one aspect, cyclic structures are the by-product of information compression to make an attack graph compact. Appropriate handling of cyclic structures is inherent and indispensable for practical attack graph analysis.
It is needless to say the importance of scalability. But, we have a trade-off between the expressiveness of problems and the scalability of applicable algorithms. HARM [11,15] is a well-established approach, highly scalable and applicable to cyclic attack graphs; with it, we can calculate probabilities too. The essence of HARM is on its hierarchical structure. That is, it restricts the form of attack graphs. As a consequence, AND/OR combinations of nodes cannot appear freely; those locations are limited in the peripheral portions of the whole graph. This constraint makes efficient, dynamic programming like algorithms work. At the same time, it cannot fully leverage the expressiveness of AND/OR combinations of nodes, especially in the network topological structure description. The mixture of AND/OR combinations is closely related to the rich expressiveness of Datalog used in MulVAL [28–30] and is the vital basis for practical attack templates. In short, HARM chooses the scalability at the cost of attack templates expressiveness. Conversely, our study puts more emphasis on expressiveness.
In comparison to the prior studies above, the work by Matthews et al. [21] strongly resembles our study at a glance; they proposed “Cyclic Bayesian Attack Graphs.” However, their description is very confusing. Firstly, the “Bayesian attack graph” defined in their work is not that of [10,20,23,39] but is equivalent to the one given partly in [38], i.e., not a Bayesian network. Secondly, they claim that their algorithm’s worst-case computational complexity is
Overall, our study is the first one satisfying all the following requirements together: (1) applies to cyclic AND/OR attack graphs, (2) calculates probabilities, and (3) scales well.
Finally, we would like to refer to the studies by Nguyen and Nicol [25,26]. Their studies are based on uncertain graphs; an uncertain graph is a probabilistic distribution of deterministic graphs. This framework defines a cyclic attack graph as a probabilistic distribution of acyclic attack graphs. When we want to calculate the reachability to a node in an attack graph, in theory, we enumerate every possible acyclic graph and check the path’s existence on each graph. Then, determine the reachability as the weighted sum according to each acyclic graph’s existence probability. The two studies elaborate on the Monte-Carlo sampling strategy for uncertain graphs. Though it seems not scalable so far, it is a very different, challenging approach. Their analysis suggests yet another frontier.
Limitations
The experiments shown in Section 5 are simplified miniatures of practical situations; each host is represented as a small-scaled attack graph (see Appendix for the detail). In practice, one host can hold hundreds or more vulnerabilities, and its attack graph gets larger too. Also, the topological structure of subject networks can be more complex. These in-situ conditions worsen the performance of our algorithm. Though our approach could outperform existing ones, it does not guarantee unconditional applicability to actual cases.
The loopy belief propagation compared with our algorithm is implemented solely in Python by the author. There could be far more efficient implementation. In that case, the performance ratio shown in Fig. 9 changes. However, any implementation cannot overcome the non-linear complexity of Bayesian network inference.
The reliability of the inference result depends on many factors. At least, the initial reachabilities and the filter functions should be determined carefully. The parameters used in the experiments are not validated in the field. The popular way to assign those parameters in the literature is CVSS based pseudo probability calculation, e.g., [4]. Note that it is a qualitative approach inherently. There is no guarantee that the doubled value of the pseudo probability means the doubled likelihood. One practical approach is regarding every calculation as a kind of What-If analysis. In that case, the reachability-graph analysis generates quantitative results based on the assumption.
Conclusions and future work
This study has examined network security analysis methods based on an attack graph. While a simple attack graph applies mainly to qualitative security analysis, advanced approaches enable quantitative security analysis based on an attack graph. The Bayesian attack graph based approach is the representative one. We pointed out several issues about that approach. With that approach, large-scale network analysis is impractical due to its computational load. Also, it cannot handle cyclic structure in an attack graph. In contrast, the proposed approach – reachability-graph analysis – scales well and can handle cycles in an attack graph. Our approach shows thousands of times faster results in the experiment compared to the Bayesian attack graph based approach. Besides, we have shown several other properties of this approach, including the termination and the confluence of analyses and the extensibility enabled by filter functions. It is also guaranteed to be monotonic to the increase in initial reachabilities. Collectively, the proposed approach is yet another tool to analyze network security in practical scenarios.
Security analysis is just a prerequisite for effective risk management. We need to determine the choice of security controls so that we can contain the security risk within an acceptable level. We will discuss this topic in our future works by leveraging the monotonicity of reachability-graph analysis.
Footnotes
Appendix
Here, let us see the proofs of the claims in Section 4.2. Before proceeding to the proofs, we define several terms.
We call a node other than external nodes in an attack graph
Finally, let us clarify the composition detail of the experimental virtual networks in Section 5. Figure 19 illustrates the vulnerabilities in a node (host) and the relationship among them as an attack graph.
This partial attack graph contains seven vulnerabilities and is composed of two layers. The attacker penetrates this node through the “In” event. If he/she successfully compromises this node, then he/she approaches to the “Out” event. To accomplish the “Out” event, he/she needs to exploit one of first layer vulnerabilities
The Python program for the experiment is available online: https://github.com/kengo-zenitani/2021-reachability-graph-analysis.
Acknowledgments
The author wishes to acknowledge Dr. Junichi Iijima, Professor in the Department of International Digital and Design Management, School of Management, Tokyo University of Science, and Dr. Keisuke Tanaka, Professor in the Department of Mathematical and Computing Science, School of Computing, Tokyo Institute of Technology, for reviewing and providing constructive advice on the drafts of this article.
