<!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 />
    <article-meta>
      <title-group>
        <article-title>Design and Analysis of Self-protection: Adaptive Security for Software-Intensive Systems</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Charilaos Skandylas, Linnaeus University</institution>
          ,
          <country country="SE">Sweden</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2021</year>
      </pub-date>
      <fpage>13</fpage>
      <lpage>17</lpage>
      <abstract>
        <p>Today's software landscape features a high degree of complexity, frequent change and many uncertainties. Cyber-attacks are a common occurrence and their consequences are often severe, thus, systems that are able to dynamically defend themselves from attacks are highly needed. Such systems are called self-protecting systems and aim to autonomously identify, analyse and mitigate threats by adapting their structure and behavior at runtime. This research project will contribute towards providing software-intensive systems with self-protection or adaptive-security capabilities. We enhance the security of architecture-based self-adaptive systems by equipping them with (proactive and reactive) self-protection capabilities as well as attack monitoring. Moreover, we provide a framework that allows an open, decentralized system system to mitigate security threats and self-organize to maximize the average trust between the system entities while maintaining their security policies.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Self-Protection</kwd>
        <kwd>Adaptive Security</kwd>
        <kwd>Architecture-based Adaptation</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>Cyber-attacks grow in sophistication and scale as adversaries develop novel strategies, tactics,
and techniques which leads to a frequently changing threat landscape that poses a challenge
for society to promptly adapt strategies and employ new tactics and techniques to defend or
mitigate such attacks. A system’s security challenges during its life-cycle are numerous and
change often due to either the system itself evolving or due to the development of new attack
strategies, tactics, and techniques. This frequent change generates uncertainty concerning how
to strategize a system’s cyber-defense, including which tactics to employ and techniques to
implement. Since multiple security characteristics are volatile, uncertainty becomes a significant
factor when studying a system’s security. These characteristics include the system’s attack
surface, the known vulnerabilities of its components, and the attackers’ capabilities. Moreover,
the attackers’ toolset and capabilities develop, which warrants that a system that claims to
protect itself from attacks must include self-adaptation capabilities to provide adequate defenses.</p>
      <p>Self-adaptive systems, i.e., systems that dynamically change their structure or behavior
at run-time to cope with uncertainties in their environment and their dynamic nature, have
been often employed to counteract complexity, uncertainties in the environment and changing
goals. Self-protecting systems, is the class of self-adaptive systems that dynamically alter their
capabilities at run-time to either provide defenses that can stop or lessen the consequences of
attacks or alter their structure and/or behaviour to defend by making the attacks impossible
or less likely. Self-adaptation can aid in mitigating security relevant uncertainties and provide
timely countermeasures to complex and frequent attacks. Self-adaptive systems however are
not immune to attacks themselves. In particular, given the complexity and evolving nature of
these systems, adversaries that target them can exploit their adapting nature to perform attacks
that are often not possible on contemporary non-adaptive systems. These attacks are often
based on the changing attack surface and further information exposed during a self-adaptive
system’s runtime. Therefore, it is necessary to analyze the security of a self-adaptive system as
a whole, including the adaptation mechanisms and possible future states in the analysis.</p>
      <p>Adaptation can be employed in combination with security relevant techniques to enable
dynamic protection in systems that feature uncertainty. In that context, security enforcement
approaches are enhanced with adaptation capabilities and can therefore, dynamically alter their
analysis capabilities and security enforcement to deal with uncertainties in the security policies,
active entities, the maliciousness of entities and arbitration between diferent components. Such
approaches can mitigate threats and the inherent uncertainty eficiently, enabling systems to
dynamically change their security functionality and add defenses or reduce their attack surface.</p>
      <p>This project aims to address the following research questions:
• Q-I: How can we utilize threat modeling and quantitative risk analysis to formally specify
and analyze the security of a self-adaptive system under uncertainty at runtime?
• Q-II: How can the results of runtime security analysis be combined with adaptation-based
techniques to provide self-protecting capabilities to software-intensive systems?
• Q-III: How can adaptive security be achieved in an open decentralized system by
combining trust-based adaptations, decentralized information flow and decentralized control?</p>
    </sec>
    <sec id="sec-2">
      <title>2. Related Work</title>
      <p>Security in self-adaptive systems can be viewed either as the analysis the security status of
the system, which we refer to as security analysis, or as the provision of solutions to identify,
analyze and cope with threats autonomously that we refer to as self-protection.</p>
      <p>
        Security analysis of a self-adaptive system can concerns the security analysis of its basic
components and their interactions. Security analysis of the managed system is domain specific.
Research has been carried out in cloud based systems [
        <xref ref-type="bibr" rid="ref1 ref2">1, 2</xref>
        ], service-oriented systems [
        <xref ref-type="bibr" rid="ref3 ref4">3, 4</xref>
        ],
mobile ad-hoc networks [
        <xref ref-type="bibr" rid="ref5 ref6">5, 6</xref>
        ] and component based systems among other domains. To the best
of our knowledge, there has been no research that analyzes formally or otherwise the security of
the managing system or of the adaptation mechanisms associated with the adaptation process.
Security analysis of the adaptation process is critical since self-adaptive systems are additionally
to vulnerable attacks that exploit the adapting or evolving nature of the system.
      </p>
      <p>
        Self-protection can be accomplished in a variety of ways via a wide berth of techniques. Yuan
et al. [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] provide a taxonomy of self-protection that features the following interesting
dimensions: self-protection levels, meta-level separation, theoretical foundation, control topology and
response timing. Self-protection levels refers to the extend to which the system is protected from
attacks. The dominant self-protection level is monitoring and detecting threats (95%) followed
by responding and protecting (86%) and planning and prevention (18%). Most approaches (83%)
feature some degree of meta-level separation among the managing and managed layer. Multiple
theoretical foundations for self-protection have been studied, with over 90% of them being
based on heuristics [
        <xref ref-type="bibr" rid="ref10 ref8 ref9">8, 9, 10</xref>
        ]. Other theoretical foundations include optimization and learning
[
        <xref ref-type="bibr" rid="ref11 ref12">11, 12</xref>
        ] and formal methods [
        <xref ref-type="bibr" rid="ref13 ref14">13, 14</xref>
        ]. Enforcement normally happens at the system boundary
level, while response timing is mostly reactive and the control topology is often centralized.
      </p>
      <p>
        When it comes to architectural self-protection which is the focus of this research project,
Yuan et.al.,[
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] provide a set of architectural security patterns to facilitate self-protection.
These patterns include a protective wrapper pattern to defend against DoS attacks, a software
rejuvenation pattern used to mitigate the efects of attacks that cannot be defended against and
an agreement based redundancy pattern that is capable of defending against XSS and injection
attacks. Each pattern details architectural adaptation, threat detection and mitigation. The
authors finally demonstrate how to incorporate their approach into Rainbow[
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], a well known
and adopted architecture-based self-adaptation framework. Schmerl et.al., [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] build upon the
previous work and provide a methodology to compose security-related tactics into higher level
strategies to respond to DoS attacks. They base their solution in utility theory and combine
security strategies with business qualities to select the strategy that better fits the business
context. Probabilistic model checking is employed to select the strategies to be applied to the
system by reasoning about the efect of a strategy both to security and other quality objectives.
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. Research Project</title>
      <p>
        This research project is centered around the problem of providing self-protecting capabilities
and adaptive security to software intensive systems. Thus, we take a problem-centered approach
design science research method (DSRM) [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] for the research project design.
      </p>
      <p>Problems We have identified the four sub-problems that follow. P-I refers to the security
analysis of self-adaptive systems, which requires reasoning about the security of the system in
all stages of adaptation. P-II refers to proactively protecting a self-adaptive system by selecting
the most secure adaptation available when information about its components and vulnerabilities
is known and control over its adaptation capabilities is assertable. P-III refers to protecting a
self-adaptive system at runtime, utilizing eficient countermeasure selection or secure strategy
synthesis. P-IV refers to the design and implementation of adaptive security in open systems
where little about the maliciousness and intentions of the entities is known.</p>
      <p>Objectives To address the above sub-problems, we identify the objectives that follow. O-I
entails the development of a security analysis approach for self-adaptive systems. The analysis
must be able to model and reason about the system security under uncertainty and aid in
developing suitable protection techniques. O-II aims to design a secure adaptation approach
that selects the most secure of the available system adaptations, thus, enhancing the security
of the system by reducing its attack surface. O-III aims to design of two approaches, one to
select the best available countermeasure for an identified attack and another to provide secure
strategy synthesis i.e., altering the system’s strategies to mitigate the efects of or to add efective
countermeasures for the identified attack. O-IV entails the design and implementation of an
adaptive security approach for open, decentralized systems where there is uncertainty in the
entities residing in the system, their established trust and their maliciousness.</p>
      <p>P-I is addressed by augmenting the architectural models with security-related information,
such as vulnerabilities and then utilizing threat modeling at runtime to perform runtime security
analysis. We build a threat model that shows the attacker and system interaction during and
after adaptation. Using that threat model, we perform quantitative security risk assessment
or probabilistic model checking to analyze the security of adaptations. P-II is addressed by
employing security analysis at runtime whenever an adaptation is triggered and harnessing the
analysis results to proactively protect the system. The system is able to keep an updated view
of its security status before, during and after adaptation, and select the enabled adaptation that
leads to the most secure system state available. We address P-III using two diferent approaches,
the first approach entails selecting the most efective countermeasures available to the system
to enable it to protect itself in response to security attacks. We consider countermeasure
efectiveness, where in the architecture the countermeasure should be applied, and at what time.
Countermeasure selection is achieved by a combination of model finding and model checking,
we identify the possible countermeasure placements and model check a set of security properties
on each of them to identify the most secure one. The second approach entails secure strategy
synthesis, i.e., modifying a strategy at run-time to both meet the system’s stakeholder goals
and mitigate identified attacks. The solution to P-IV is based on a combination of decentralized
information flow control, trust establishment and update, and decentralized control architectures.
Entities in the system are grouped based on their trust to form trust contexts, i.e., hierarchies of
trusted elements or other trust contexts. We achieve adaptive security via the combination of
runtime trust-aware DIFC enforcement and decentralized control.</p>
      <p>Demonstration To demonstrate the applicability of our solutions, we implement prototypes.
D-I implements security analysis via metric evaluation. We add a security dimension to the
utility evaluation, which enables us to consider security in adaptation selection. D-II performs
security analysis via probabilistic model checking. The verification results of each enabled
strategy are aggregated and used to rank the strategies, the most secure of which is selected to
adapt the system. D-III consists of two prototypes, one implementing runtime countermeasure
selection where the best available countermeasure is selected to defend against identified attacks
and another prototype implementing secure strategy synthesis, i.e., the strategy selected for
execution is modified to add mitigations against identified attacks. D-IV implements a set
of decentralized control architectures that employ adaptive trust-aware DIFC enforcement to
maximize average trust among system entities and enforce security in a decentralized system.</p>
      <p>Evaluation We evaluate our solutions by performing experiments using the implemented
prototypes. The case studies for D-I and D-II include ZNN, a well known self-adaptation
exemplar news site and InsecureDocumentStore, a document storage and retrieval application
of our own design. The case studies for D-IV include a microservice-based item shop and a
randomly-generated decentralized system. In E-I, we evaluate the security level of the system
by comparing the values of security metrics after each adaptation. In E-II and E-III, we perform
two types of experiments: (i) experiments to evaluate the efectiveness of the approach in terms
of providing suficient security to the system, and (ii) experiments to evaluate the performance
of our solution. In E-IV, we measure the average level of trust established and the accompanying
running time. The experiments feature multiple scenarios with diferent system configurations,
varying in system scale, number of malicious entities and degrees of system openness.
2 Attack Model Generation
3 System Model Update
4 Security Evaluation
5 Strategy Ranking</p>
      <p>Analyze</p>
      <p>Plan
1 Vulnerability Scanning Monitor</p>
      <p>Knowledge</p>
      <p>Execute
6 Strategy Selection
7 Strategy Execution
3 DIFC Enforcement
4 Trust Update
5 History Update
Message
1 Interception
2 Routing
Sensor</p>
      <p>Effector
Managed Elements</p>
      <p>Analyze</p>
      <p>Plan
Monitor</p>
      <p>Knowledge
Sensor</p>
      <p>Effector
Managed Elements
6 Merge Planning
7 Isolation Planning
8 Split Planning
9 Architecture Change</p>
      <p>10 on Trust Context
Execute 11 on Feedback loop</p>
    </sec>
    <sec id="sec-4">
      <title>4. State of Research</title>
      <p>
        P-I and P-II have been partially addressed in [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] and [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ]. In [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ] we provide runtime security
analysis by utilizing threat modeling and security metrics, while in [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] we provide a formal
approach centered around formal architectural modeling of the system and the attacker and
probabilistic security verification of each available strategy. The strategies are ranked and the
best ranked strategy is applied. P-IV has been partially addressed in [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ], where we provide
an approach combining trust-based techniques, decentralized information flow control and
decentralized architectures to provide adaptive security in an open decentralized system. Fig. 1
shows our solutions for P-I, P-II and P-IV as reference MAPE-K loop architectures.
      </p>
      <p>
        Our current research is split between addressing the shortcomings of our previous research
and addressing P-III. We have been working on a modular, scalable analysis approach, that
improves upon [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], combining modular threat model generation and incremental security
analysis. Our extensions to [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] include defenses that shore up the model’s shortcomings as
well as further security hardening via encryption and additional adaptation options. In terms of
addressing P-III we are actively working on countermeasure selection using a combination of
model finding and verification. We automatically generate all available countermeasure options
able to defend against an identified attack and use probabilistic model checking to identify the
best option in terms of guaranteeing security.
      </p>
      <p>In our future work, to further address P-III, we will work on secure strategy synthesis, i.e.,
on dynamically modifying enabled strategies to provide mitigations against identified attacks
in addition to meeting stakeholder goals. We finally aim to provide a self-protection framework
for software-intensive systems utilizing both proactive and reactive methods.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>J.</given-names>
            <surname>Du</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Gu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Shah</surname>
          </string-name>
          ,
          <article-title>Adaptive data-driven service integrity attestation for multi-tenant cloud systems</article-title>
          , in: Nineteenth IEEE International Workshop on Quality of Service,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>S.</given-names>
            <surname>Ma</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Wang</surname>
          </string-name>
          ,
          <article-title>Self-adaptive access control model based on feedback loop</article-title>
          ,
          <source>in: International Conference on Cloud Computing and Big Data</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Wo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Hu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Huai</surname>
          </string-name>
          , L. Liu,
          <string-name>
            <given-names>K.</given-names>
            <surname>Lam</surname>
          </string-name>
          ,
          <article-title>Cyberguarder: A virtualization security assurance architecture for green cloud computing</article-title>
          ,
          <source>in: Future Generation Computer Systems</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>C. G.</given-names>
            <surname>Yee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W. H.</given-names>
            <surname>Shin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. S. V. R. K.</given-names>
            <surname>Rao</surname>
          </string-name>
          ,
          <article-title>An adaptive intrusion detection and prevention (id/ip) framework for web services</article-title>
          ,
          <source>in: International Conference on Convergence Information Technology (ICCIT</source>
          <year>2007</year>
          ),
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>D.</given-names>
            <surname>Farid</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Zahidur Rahman, Anomaly network intrusion detection based on improved self adaptive bayesian algorithm</article-title>
          ,
          <source>in: Journal of Computers</source>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>H.</given-names>
            <surname>Abie</surname>
          </string-name>
          ,
          <article-title>Adaptive security and trust management for autonomic message-oriented middleware</article-title>
          ,
          <source>in: 6th International Conference on Mobile Adhoc and Sensor Systems</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>E.</given-names>
            <surname>Yuan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Esfahani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Malek</surname>
          </string-name>
          ,
          <article-title>A systematic survey of self-protecting software systems</article-title>
          ,
          <source>in: ACM Transactions Autonomic Adaptive Systems</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>H.</given-names>
            <surname>Reiser</surname>
          </string-name>
          ,
          <article-title>Fault and intrusion tolerance on the basis of virtual machines</article-title>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>F. M.</given-names>
            <surname>Sibai</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. A.</given-names>
            <surname>Menascé</surname>
          </string-name>
          ,
          <article-title>Defeating the insider threat via autonomic network capabilities</article-title>
          ,
          <source>in: Third International Conference on Communication Systems and Networks</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>F. M.</given-names>
            <surname>Sibai</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. A.</given-names>
            <surname>Menascé</surname>
          </string-name>
          ,
          <article-title>Countering network-centric insider threats through self-protective autonomic rule generation</article-title>
          ,
          <source>in: 6th International Conference on Software Security and Reliability</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>G. .</given-names>
            <surname>Jabbour</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. A.</given-names>
            <surname>Menasce</surname>
          </string-name>
          ,
          <article-title>The insider threat security architecture: A framework for an integrated, inseparable, and uninterrupted self-protection mechanism</article-title>
          ,
          <source>in: International Conference on Computational Science and Engineering</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>G.</given-names>
            <surname>Jabbour</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. A.</given-names>
            <surname>Menascé</surname>
          </string-name>
          ,
          <article-title>Policy-based enforcement of database security configuration through autonomic capabilities</article-title>
          ,
          <source>in: 4th International Conference on Autonomic and Autonomous Systems (ICAS'08)</source>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>J.</given-names>
            <surname>Guttman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Herzog</surname>
          </string-name>
          ,
          <article-title>Rigorous automated network security management</article-title>
          , in:
          <source>International Journal Information Security</source>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>A. V.</given-names>
            <surname>Taddeo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Ferrante</surname>
          </string-name>
          ,
          <article-title>Run-time selection of security algorithms for networked devices</article-title>
          ,
          <source>in: 5th ACM Symposium on QoS and Security for Wireless and Mobile Networks</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>E.</given-names>
            <surname>Yuan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Malek</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Schmerl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Garlan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Gennari</surname>
          </string-name>
          ,
          <article-title>Architecture-based self-protecting software systems</article-title>
          ,
          <source>in: 9th International Conference on Quality of Software Architectures</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>D.</given-names>
            <surname>Garlan</surname>
          </string-name>
          , S. . Cheng, A. .
          <string-name>
            <surname>Huang</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Schmerl</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Steenkiste</surname>
          </string-name>
          ,
          <article-title>Rainbow: architecture-based selfadaptation with reusable infrastructure</article-title>
          , in: Computer,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>B.</given-names>
            <surname>Schmerl</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Cámara</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Gennari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Garlan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Casanova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. A.</given-names>
            <surname>Moreno</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. J.</given-names>
            <surname>Glazier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. M.</given-names>
            <surname>Barnes</surname>
          </string-name>
          ,
          <article-title>Architecture-based self-protection: Composing and reasoning about denial-of-service mitigations</article-title>
          ,
          <source>in: Symposium and Bootcamp on the Science of Security</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>K.</given-names>
            <surname>Pefers</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Tuunanen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. E.</given-names>
            <surname>Gengler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rossi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Hui</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Virtanen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Bragge</surname>
          </string-name>
          ,
          <article-title>Design science research process: A model for producing</article-title>
          and
          <source>presenting information systems research</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>N.</given-names>
            <surname>Khakpour</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Skandylas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. S.</given-names>
            <surname>Nariman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Weyns</surname>
          </string-name>
          ,
          <article-title>Towards secure architecture-based adaptations</article-title>
          ,
          <source>in: 14th International Symposium on Software Engineering for Adaptive</source>
          and
          <string-name>
            <surname>Self-Managing</surname>
            <given-names>Systems</given-names>
          </string-name>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>C.</given-names>
            <surname>Skandylas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Khakpour</surname>
          </string-name>
          ,
          <article-title>Design and implementation of self-protecting systems: A formal approach</article-title>
          ,
          <source>in: Future Generation Computer Systems</source>
          ,
          <year>2021</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>C.</given-names>
            <surname>Skandylas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Khakpour</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Andersson</surname>
          </string-name>
          ,
          <article-title>Adaptive trust-aware decentralized information flow control</article-title>
          ,
          <source>in: IEEE International Conference on Autonomic Computing and Self-Organizing Systems</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>