In the example shown above, the assets and the threats to them have vastly differing levels of criticality. The specific allocation in Figure 2 also makes it clear that an additional threat exists, namely that the attacker could try to bypass the countermeasures ("will try to bypass"), e.g. Ethernet access to the performance logger could be abused to attack the engine control. One means of governing complex IT systems and in particular, IoT components with different levels of criticality at an appropriate abstraction level, is to divide them into security domains ("divide and rule"). A security domain is a zone in which all objects are subject to the same security policy. The boundaries of security domains are also known as "trust boundaries".
Establishing a Security Architecture for Common Criteria Certification
With the Common Criteria for Information Technology Security Evaluation (CC), a manufacturer works together with an examining body to evaluate an IT product put forward by the manufacturer. The product can consist of software or both software and hardware, and thus explicitly includes IoT components. If the evaluation is successful, the certification body, which in Germany is the Federal Office for Information Security (Bundesamt für Informationstechnik (BSI)), will issue a certificate.
The Common Criteria require that the developer provide design documentation as the central component of the documentation to be submitted to the examining body, in which the product must be broken down into subsystems (one-tier) or subsystems and modules (two-tier), depending on the desired evaluation level. The properties of subsystems and modules and their interactions must be described. The design documentation also describes the extent to which the interfaces of the subsystems and modules are directly or indirectly accessible to attackers.
A security architecture is a means of analysing and documenting the security properties of a system with regard to its security domains.
A security architecture (ADV_ARC) in accordance with the Common Criteria elucidate the following points:
- Which security domains does the system have? To what extent are these security domains fully separate, or are they able to communicate with one another (in a controlled manner)? In our example, the performance logger and the engine control were different domains.
- How is the system initialised?
- How does the system itself protect against attempts by attackers to attack it?
- How does the system protect against attempts to bypass it (in our example: Web access to the performance logger cannot bypass the engine control)?
Security Architecture in Accordance with IEC 62443
IEC 62443 is a standard for the security of industrial control systems as a whole (in particular Parts 3-1 to 3-3) and their components (in particular Parts 4-1 and 4-2). IEC 62443 is referenced by IEC 61508 safety standard for security (IEC 61508 Part 1-1 Section 7.5.2.2: “If security threats have been identified, then a vulnerability analysis shall be undertaken in order to identify security requirements. Note: Guidance is given in the 62443 series”). IEC 62443 is to a large extent still in (advanced) development by IsaSecure.
In IEC 62443, the security domains are known as "Zones" and the system should support partitioning into zones (IEC 62443 Part 3-3 Section SR 5.4) and operate resource management that is well protected against attackers (IEC 62443 Part 3-3 Sections SR 7.1 and SR 7.2, and IEC Part 4-2 Sections CR 7.1 and CR 7.2), including protection against denial-of-service attacks, for instance.
With regard to the development process, IEC 62443 Part 4-1 SR-2 requires the creation of a threat model with trust boundaries which also governs how information flows across these trust boundaries. A defence-in-depth design is recommended (IEC 62443 Part 4-2 SD-2). IEC 62443 Part 4-1 SD-6 also requires that one of the design goals of the system must be to minimise the attack surface.
Security Architecture in Accordance with IsaSecure EDSA/SDLA/SSA
With its SDLA (processes), EDSA (functional systems for components) and SSA (functional requirements for entire systems) standards, IsaSecure has developed a precise certification scheme for the IEC 62443 series, which also includes suggestions taken from NIST 800-53. For instance, EDSA-311 includes the requirements on the functional level listed in the table below: