Skip to main content
Log in

CyberSAGE: The cyber security argument graph evaluation tool

  • Published:
Empirical Software Engineering Aims and scope Submit manuscript

Abstract

Cyber risk assessment is a critical step in securing the digital systems that support modern society. Typically this is a manual process carried out by consultants or working groups with little or no software support outside of spreadsheet tools. As cybersecurity threats and digital systems themselves become more complex and dynamic, there is a need for greater tool support in the risk assessment process to document and trace assumptions and facilitate the revision or extension of a threat and risk assessment throughout a system’s lifecycle. The Cyber Security Argument Graph Evaluation (CyberSAGE) tool provides a platform for model-based cybersecurity analysis of cyber failure and attack scenarios. It combines models of high-level workflow, system architecture, device properties, attacker capability and skill, to compute holistic, quantitative security metrics. In this paper we describe the models, algorithms, and software architecture of the CyberSAGE tool. To illustrate its application, we describe an assessment carried out on communication systems in two railway lines with the support of an industry partner. Finally, we summarize feedback on the CyberSAGE tool from the railway case study partner, as well as over 40 interviews with practitioners and domain experts and a multinational electronics company who carried out a one year independent evaluation.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

Notes

  1. https://www.rsa.com/en-us/products/integrated-risk-management

  2. https://www.ibm.com/sg-en/marketplace/governance-risk-and-compliance

  3. https://www.mobius.illinois.edu/

  4. https://www.foreseeti.com/

  5. Cybersage uses the following versions of the aforementioned libraries: Libdai-Server 0.3.0, Drool rule engine 5.3.0, DoT-Server 2.38.0

  6. https://www.drools.org

  7. https://www.illinois.adsc.com.sg/cybersage/download.html

  8. CyberSAGE property linkage feature is added in the version 1.1, for linking related device property values into one property group to manage them easily. For more details, please refer to Section 3.2.4 of CyberSAGE Quick Start Guide, available at http://www.illinois.adsc.com.sg/docs/CyberSAGEQuickStartGuide.pdf.

References

  • Alberts C, Dorofee A (2003) Managing information security risks: The OCTAVE approach. SEI series in software engineering. Addison-Wesley. https://books.google.com.sg/books?id=EGInzsKcG_8C

    Google Scholar 

  • Blank R, Gallagher P, Group JTFTIIW et al (2013) Nist special publication 800-53, security and privacy controls for federal information systems and organizations, revision 4. National Institute of Standards and Technology (NIST), Washington

    Google Scholar 

  • CAIRIS (2020) Cairis. https://cairis.org/index.html

  • Cau D (2014) Governance risk and compliance (grc) software business needs and market trends. Deloitte

  • Charis R (2012) Tetra for rail. In: TETRA & Critical Communications Association (TCCA) Seminars

  • Cheh C, Keefe K, Feddersen B, Chen B, Temple WG, Sanders WH (2017) Developing models for physical attacks in cyber-physical systems. In: Proceedings of the 2017 workshop on cyber-physical systems security and privacy, CPS ’17. Association for Computing Machinery, New York, pp 49–55

  • Chen B, Kalbarczyk Z, Nicol DM, Sanders WH, Tan R, Temple WG, Tippenhauer NO, Vu AH, Yau DK (2013) Go with the flow: Toward workflow-oriented security assessment. In: Proc. of the new security paradigms workshop (NSPW)

  • Davis R (2008) The tetra rail forum. In: TETRA Seminars-India

  • Ekstedt M, Johnson P, Lagerström R, Gorton D, Nydrén J, Shahzad K (2015) Securi cad by foreseeti: A cad tool for enterprise cyber security management. In: 2015 IEEE 19th international enterprise distributed object computing workshop, pp 152–155. https://doi.org/10.1109/EDOCW.2015.40

  • Ekstedt M, Johnson P, Lagerstrom R, Gorton D, Nydrén J, Shahzad K (2015) Securi cad by foreseeti: A cad tool for enterprise cyber security management. In: 2015 IEEE 19Th international enterprise distributed object computing workshop (EDOCW). IEEE, pp 152–155

  • Fila B, Wideł W (2019) Attack–defense trees for abusing optical power meters: A case study and the osead tool experience report. In: Albanese M, Horne R, Probst C W (eds) Graphical models for security. Springer International Publishing, Cham, pp 95–125

  • Gadyatskaya O, Jhawar R, Kordy P, Lounis K, Mauw S, Trujillo-Rasua R (2016) Attack trees for practical security assessment:, Ranking of attack scenarios with adtool 2.0., vol 9826, pp 159–162. https://doi.org/10.1007/978-3-319-43425-4_10

    Google Scholar 

  • Harvey M, Long D, Reinhard K (2014) Visualizing nistir 7628, guidelines for smart grid cyber security. In: Power and energy conference at Illinois (PECI), 2014. IEEE, pp 1–8

  • Holm H (2014) A framework and calculation engine for modeling and predicting the cyber security of enterprise architectures. PhD thesis, KTH, Industrial Information and Control Systems, qC 20140203

  • Holm H, Shahzad K, Buschle M, Ekstedt M (2015) P2 cysemol: Predictive, probabilistic cyber security modeling language. IEEE Trans Depend Sec Comput 12 (6):626–639. https://doi.org/10.1109/TDSC.2014.2382574

    Article  Google Scholar 

  • Holm H, Shahzad K, Buschle M, Ekstedt M (2015) P2cysemol: Predictive, probabilistic cyber security modeling language. IEEE Trans Depend Sec Comput 12(6):626–639

    Article  Google Scholar 

  • HSSEDI: The Homeland Security Systems Engineering and Development Institute (2018) Cyber threat modeling: Survey, assessment, and representative framework. https://www.mitre.org/sites/default/files/publications/pr_18-1174-ngci-cyber-threat-modeling.pdf

  • ICS-CERT (2018) Cset: The cyber security evaluation tool

  • IriusRisk (2020) Iriusrisk - threat modeling platform. https://iriusrisk.com/

  • Ivanova MG, Probst CW, Hansen RR, Kammüller F (2016) Transforming graphical system models to graphical attack models. In: Mauw S, Kordy B, Jajodia S (eds) Graphical models for security. Springer International Publishing, Cham, pp 82–96

  • Jauhar S, Chen B, Temple WG, Dong X, Kalbarczyk Z, Sanders WH, Nicol DM (2015) Model-based cybersecurity assessment with nescor smart grid failure scenarios. In: 2015 IEEE 21st Pacific Rim international symposium on dependable computing (PRDC). IEEE, pp 319–324

  • Johnson P, Vernotte A, Ekstedt M, Lagerström R (2016) pwnpr3d: An attack-graph-driven probabilistic threat-modeling approach. In: 2016 11th international conference on availability, reliability and security (ARES), pp 278–283. https://doi.org/10.1109/ARES.2016.77

  • Johnson P, Lagerström R, Ekstedt M (2018) A meta language for threat modeling and attack simulations. In: Proceedings of the 13th international conference on availability, reliability and security. Association for Computing Machinery, New York

  • Keefe K, Feddersen B, Rausch M, Wright R, Sanders WH (2018) An ontology framework for generating discrete-event stochastic models. In: Bakhshi R, Ballarini P, Barbot B, Castel-Taleb H, Remke A (eds) Computer performance engineering. Springer International Publishing, Cham, pp 173–189

  • Kohnfelder L, Garg P (1999) The threats to our products. https://adam.shostack.org/microsoft/The-Threats-To-Our-Products.docx

  • Kordy B, Piètre-Cambacédès L, Schweitzer P (2014) Dag-based attack and defense modeling: Don’t miss the forest for the attack trees. Comput Sci Rev 13:1–38

    Article  MATH  Google Scholar 

  • Lund M, Solhaug B, StÃ.̧len K (2011) Model-driven risk analysis. https://doi.org/10.1007/978-3-642-12323-8

    Book  Google Scholar 

  • Meland PH, Gjære EA (2012) Representing threats in bpmn 2.0, pp 542–550

    Google Scholar 

  • Microsoft (2017) Microsoft threat modeling tool. https://docs.microsoft.com/en-us/azure/security/develop/threat-modeling-tool

  • Muehrcke C (2013) Implementing the advise security modeling formalism in möbius. In: 2013 43rd annual IEEE/IFIP international conference on dependable systems and networks (DSN). IEEE, pp 1–8

  • National Electric Sector Cybersecurity Organization Resource (2014) Electric sector failure scenarios common vulnerabilities and mitigations mapping. Tech. rep., Electric Power Research Institute

  • NERC (2012) Security guidelines for the electricity sector:, Vulnerability and risk assessment version 1.0

  • NIST (2012) Nist special publication 800-30, guide for conducting risk assessments, revision 1. https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-30r1.pdf

  • Noel S, Elder M, Jajodia S, Kalapa P, O’Hare S, Prole K (2009) Advances in topological vulnerability analysis. In: 2009 cybersecurity applications technology conference for homeland security. https://doi.org/10.1109/CATCH.2009.19, pp 124–129

  • O’Hare S, Noel S, Prole K (2008) A graph-theoretic visualization approach to network risk analysis. In: Goodall JR, Conti G, Ma KL (eds) Visualization for computer security. Springer, Berlin Heidelberg, pp 60–67

  • Ou X, Govindavajhala S, Appel AW (2005) Mulval: a logic-based network security analyzer. In: USENIX security symposium

  • OWASP (2020a) Owasp pytm tool. https://owasp.org/www-project-pytm/

  • OWASP (2020b) Owasp threat dragon. https://owasp.org/www-project-threat-dragon/

  • Rausch M, Keefe K, Feddersen B, Sanders WH (2018) Automatically generating security models from system models to aid in the evaluation of ami deployment options. In: D’Agostino G, Scala A (eds) Critical information infrastructures security. Springer International Publishing, Cham

  • Recker J (2010) Opportunities and constraints: the current struggle with BPMN. Bus Process Manag J 16(1):181–201

    Article  MathSciNet  Google Scholar 

  • Sindre G (2007) Mal-activity diagrams for capturing attacks on business processes. In: Proc. of international working conference on requirements engineering: foundation for software quality (REFSQ)

  • Temple WG, Li Y, Tran BAN, Liu Y, Chen B (2016) Railway system failure scenario analysis. In: International conference on critical information infrastructures security. Springer, pp 213–225

  • TETRA SEKEX Communications (2018) Tetra network radio solution & application. https://www.wwsinternational.com.au/Tetra_2011/index.htm

  • ThreatModeler (2020) Threatmodeler software inc. https://threatmodeler.com

  • Tippenhauer NO, Temple WG, Vu AH, Chen B, Nicol DM, Kalbarczyk Z, Sanders W (2014) Automatic generation of security argument graphs. In: Proc. of the IEEE Pacific Rim international symposium on dependable computing (PRDC)

  • Ucedavélez T, Morana MM (2015) Risk centric threat modeling: process for attack simulation and threat analysis. Wiley. http://www.wiley.com/WileyCDA/WileyTitle/productCd-0470500964.html

    Book  Google Scholar 

  • securiCAD User Community (2020) securilang reference manual. https://community.securicad.com/securilang-reference-manual/

  • VERSPRITE (2020) Waypoint enterprise threat modeling tool. https://versprite.com/security-products/waypoint/

  • Vu AH, Tippenhauer NO, Chen B, Nicol DM, Kalbarczyk Z (2014) Cybersage: a tool for automatic security assessment of cyber-physical systems. In: International conference on quantitative evaluation of systems. Springer, pp 384–387

  • Wang L, Jajodia S, Singhal A, Cheng P, Noel S (2014) k-zero day safety: A network security metric for measuring the risk of unknown vulnerabilities. IEEE Trans Depend Sec Comput 11(1):30–44

    Article  Google Scholar 

  • Xiong W, Krantz F, Lagerström R (2020) Threat modeling and attack simulations of connected vehicles: Proof of concept. In: Mori P, Furnell S, Camp O (eds) Information systems security and privacy. Springer International Publishing, Cham, pp 272–287

Download references

Acknowledgments

This work was supported in part by the National Research Foundation (NRF), Prime Minister’s Office, Singapore, under its National Cybersecurity R&D Programme (Award No. NRF2014NCR-NCR001-31 and GC2018-NCR-0009) and administered by the National Cybersecurity R&D Directorate, and supported in part by Singapore’s Agency for Science, Technology, and Research (A*STAR) under a research grant for the Human-centered Cyber-physical Systems Programme at the Advanced Digital Sciences Center.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to William G. Temple.

Additional information

Communicated by: Tao Yue

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix A: Extension templates for attack scenarios on rail radio systems

The logical relationship between the various input models namely workflow, system and attacker models are discovered via extension templates. We define extension templates as reusable modules that can be used repeatedly to combine heterogeneous pieces of information from our input models in a meaningful and concise manner. The argument graph generation process is the repeated application of a set of extension templates to produce the final security argument graph. In order to study the TETRA attack scenarios in our assessment, we define a new set of extension templates over and beyond what has been discussed in our previous work (Tippenhauer et al. 2014).

We define 3 graph expansion templates which help us automatically generate the security argument graph. Each of these templates (see templates T1, T2 & T3 below) grow a single vertex v based on the workflow, system and attack models present in Σ. The resulting star graph ωr contains v and at least one additional vertex. Each of the newly added vertices will contain at least one outgoing edge towards v. The additional vertices from the star graph ωr and the associated edges will be added to the original graph (not shown in pseudocode below). We provide a detailed explanation for template T3 while we present a pseudocode for all the other templates. Extension template T3 is used to decompose a mal-activity step v into all its previous activity steps γ obtained by calling the GetLastActivityList (Σ) function. This is because for an activity step Wf to have occurred its previous activity step Wf − 1 should also have occurred. We also map v to the component device vd on which the operation takes place. Depending on the activity step an attacker va may arrive to compromise the component device and in process exploit the activity step towards fulfilling her malicious intentions. For example a hacker is more likely to attempt a network access exploit as compared to an inept installer who is more likely to use physical access as the means to enter into the system. The newly created vertices namely vc, vd, va and their associated edges (vc,v), (vd,v), (va,v) are added to the returned star graph ωr.

figure i
figure j
figure k

While formalizing the set of TETRA attack scenarios into mal-activity diagrams, we see that mal-activity diagrams share common attack steps. For example, send command is an activity step that is shared across most scenarios as they have a pro-active step to issue a request to a system component. Similarly in certain scenarios the attacker enters the system either via a network access route or via a physical access route. The chance that each of these attack steps will succeed depend on the vulnerabilities, mitigations implemented in the device on which the operation is taking place and also on the threat agent’s skill to exploit these vulnerabilities. These common attack steps are made into extension templates enabling us to compute the success probability of the attacker to exploit these steps. We identify a total of 19 such evaluation extension templates and present 2 of them in the form of pseudo codes below. We believe that by distilling the common attack steps into reusable extension templates, the efforts to model attack scenarios for other relate components are considerably reduced as new mal-activity diagrams will share a subset of these extension templates.

  • T4: Physical access template Certain threat agents (such as insiders) may have physical access to the TETRA equipment. The physical accessibility can be abused for tampering the equipment or changing settings, etc. and cause the TETRA system to enter into unintended failure state. The template T4 represents the chance that such an attack may be possible.

  • T5: Network access template The attack vector via the network access route is a more likely scenario for threat agents as a) most TETRA installations are heavily guarded and b) it may be possible to leverage a public internet facing interface of the rail system such as an office network and then use it to penetrate deeper into the system eventually reaching the secure control system network. This template represents the chance that the attacker can successfully compromise a device by launching network based attacks.

figure l
figure m

Appendix B: Evaluation logic implemented in example templates

Calculating the success probability of a single attack step. We first present the quantitative relationship captured in our example extension templates, which describes how to calculate the success probability of an individual attack step based on various relevant factors, including the set of vulnerabilities that can be exploited for launching the attack step, and for each vulnerability, the set of relevant attacker properties and the set of relevant mitigation solutions. To simplify the definition of the quantitative relationship, we make a number of assumptions in our example extension templates, as detailed below:

  • An attack step can be successfully launched by exploiting any one of the relevant vulnerabilities, and these vulnerabilities are independent from each other. Denote the relevant set of vulnerabilities as vul_list. With our assumption, we have:

    $$ p_{\text{attack step}} = 1 - {\prod}_{vul \in vul\_list} (1 - p_{vul}) $$

    where pattack step is the probability for the attack step to succeed, and pvul is the probability that the attacker exploits a specific vulnerability vulvul_list and successfully execute the attack step.

  • The probability pvul for each individual vulnerability vul depends on the relevant attacker properties (which we denote as Avul) and the relevant mitigations (which we denote as Mvul).

  • We first consider the case when there is no mitigation in place at all. Let us denote the success probability to exploit a particular vulnerability vul under this assumption as \(p_{vul}^{\prime }\), which only depends on an attacker’s properties, such as its physical access privilege, IT skill, and domain knowledge. The exploitation of different vulnerability can depend on different attack properties. For example, the exploitation of the vulnerability ”Physical access may be obtained by unauthorized individuals”, depends on the attacker property of ”physical access privilege”, but not on other properties like ”IT skill”. We will then require the users to define \(p_{vul}^{\prime }\), the success probability to exploit vulnerability i when there is no mitigations, based on all combinations of these relevant attacker properties.

    Specifically, if a vulnerability only depends on a single property, the user input is defined just as shown in Table 2 .

    While if a vulnerability depends on multiple relevant attacker properties, to reduce the number of user inputs required, we further assume these attacker properties affect the success probability in an independent manner, and we define qj for each relevant attacker property jAvul, such that \(p_{vul}^{\prime } = {\prod }_{j} q_{j}\). With this assumption,

    the number of required user inputs is reduced.

    This savings can be significant when the number of relevant attacker properties is large.

  • Now we consider the effectiveness of mitigations. Recall that each vulnerability vul has a set of relevant mitigations Mvul. We assume each mitigation takes effect in an independent way. We assume that user can provide good estimation of the effectiveness of each mitigation, as measured by the scale that the mitigation can reduce the probability of successful vulnerability exploitation. Hence, for each mitigation kMvul, we will ask the user to define its probability-reduction scale, rk ∈ [0, 1] (the lower the value of rk, the more effective the mitigation k in reducing the security risk of vulnerability i). This will be defined as a property in the corresponding device. With a given set of mitigation inputs, the probability for the vulnerability to be exploited becomes \(p_{vul} = p^{\prime }_{vul} \times {\prod }_{k \in M_{vul}} r_{k}\).

To summarize the above discussions (with all assumptions made earlier), the final equation the extension template will use to calculate pattackstep is:

$$p_{\text{attack step}} = 1 - {\prod}_{vul \in vul\_list} (1 - {\prod}_{j \in A_{i} } q_{j} \times {\prod}_{k \in M_{i} } r_{k} ) $$

To calculate the success probability of a single attack step, we will need to solicit the following inputs from the user:

  • The set of relevant vulnerabilities vul_list, which may consist of one or multiple vulnerabilities.

  • For each vulnerability vul, the set of relevant attacker properties Avul.

  • For each attacker property jAvul, its range of possible values, and for each value, the corresponding qj.

  • For each vulnerability vul, the set of relevant mitigations Mvul.

  • For each mitigation kMvul, its probability-reduction value rk.

The pseudo code in Template 6 summarizes the main evaluation logic we implemented for example extension templates.

Calculating the success probability of the whole mal-activity diagram. The success probability of individual attack steps are then combined over our security argument graph according to the logical OR / AND relationship among them. We use LibDAI to deal with shared variables. See more details about how this combination is computed in our earlier work (Tippenhauer et al. 2014).

figure n

We further introduce here the parameters to characterize the malicious intent of the attacker, and gives three probabilities for an attacker to launch attacks that related to C / I / A respectively. With this, for a given mal-activity diagram, pfailure scenario calculated from the mal-activity diagram should be further multiplied by pintention to launch specific mal-activity. This is intended to capture the case where an attacker may be able to launch an attack, but she doesn’t have the intention to do so.

Rights and permissions

Springer Nature or its licensor holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Temple, W.G., Wu, Y., Cheh, C. et al. CyberSAGE: The cyber security argument graph evaluation tool. Empir Software Eng 28, 18 (2023). https://doi.org/10.1007/s10664-021-10056-8

Download citation

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s10664-021-10056-8

Keywords

Navigation