View Issue Details

IDProjectCategoryView StatusLast Update
000336610000-002: SecuritySpecpublic2017-09-05 16:30
Reporterrandyarmstrong Assigned ToPaul Hunkar  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Summary0003366: BSI: Expand Best-Practices Descriptions.
Description

securityMode None should be completely deactivated to avoid missconfiguration and downgrade attacks. Is confidentially a needed feature SignAndEncrypt should be choosen. (See table 16, threats 10-15, 18, 22-30)
User authentification with the userIdentityToken-type 'anonymous' should not be used, because this has no protection. (table 16, threat 11)

Will certificates and private keys stored on a filesystem (table 17, threat 32) it should be ensured with the help of the 'least priviledge' principle, that read or write access is only allowed to whom who really needs these data. This means that an administrator for example can store a private key but is not allowed to read them, and in oposite an UA application can read such private keys, but cannot store them.
Will trust lists or issuer lists be used (table 17, threat 33 and 34) they should be protected adequately. If not an attacker could have the possiblity to add own certificates to the lists or remove other from the lists.
When applications read their configuration settings from a configuration file during start up (table 17, threat 35), these configuration files should be protected. If not an attacker could modify security relevant parameter to his need, for example by changing the path to the certificate store.
An attacker could be interested by deleting or manipulating audit data (table 17, threat 36), to disguise his activities. So it's recommendet to collect autit data at a central place, which an attack can hardly bring under his control. Additionally this will help to correlate such audit data.
Has an attacker the posibillity to access the memory of the computer (table 17, threat 39 and 41) on wich the OPC UA application runs he can get confidential information like the private key or override authorisations. Because of that the security of the underlying system is also relevant. This can be improved significantly by herdening measures.

When certificates will be used the complete certficate chain should be validated. Following Part 4 section 6.1.3 of the specification the certificate chain will only be checked till the first trusted certificate. Normally is a root CA certificate to be configured as the final trust anker. Will a Sub CA certificate configured a trustworthy it has to be obeyed that the root CA certificate and the corresponding CRLs will not be calculated and therefore the complete chain is not completely checked. Especially it could not be checked whether the Sub CA certificate is revoked.
"Is the request of current CRLs for the validation of certificates enforced (table 17, threat 38) the non-accessibility of CRLs could be an attack vector. Accordingly a process should be defined how to reacts in such case. The following precedures are possible:

  • The operator uses redundancy and (high-)availability mechanisms to ensure that the non-accessibility of the CRLs is highly improbable. Additional if the risks of such short interruptions are tollerable he could accept such short interruoptions caused by the non-accessibility.
  • Is such an interruption not tolerable or has the operator to trust to the high-availability of the CRLs than pre-planed measure should become active. (i.e. an alarm should arise). Additional the validation of the CRLs could be suspended and all involved certificates could be protocolled. In general it's recommended to choose the validity of the CRLs that they are a little longer valid as the prognosed downtime of expected disorders. The availablitity of the UA communication has a high priority than the security."

As securityPolicyUri is the in the moment most secure one recommended: Basic256Sha256. (table 16, threat 11-15, 22 - 30)

Contain the used crypto libraries weak spots (table 17, threat 40) these could be exploitet to leverage the security when wigning or encrypting data. Correspondant it's important to use approved vrypto libraries where leak out weaks become fixed in a short time.
Can an attacker manipulate the time on a system (table 17, thread 37) which is relied on the synchronisation with other systems, that manipulation can cause process disorder. Additionally this will lead to faulty audit log entries. Asynchronous systrems cause heavily failures in forensic analysis or render the analysis completely impossible. Depending on the importance for a concrete plant it should be make sure, that all systems access the same time source on a secure way.
Normally cryptografic algorithms depends on the qualitiy of random numbers. (table 17, threat 40). The quality of these depends on their implementation. On the other side there random number generators needs trustworthy entropy sources with their help the random numbers will be calculated.

TagsNo tags attached.
Commit Version
Fix Due Date

Relationships

related to 0003325 closedMatthias Damm 10000-004: Services 5.5.2.2 (Table 7) Add clarification 

Activities

Paul Hunkar

2017-09-01 12:47

developer   ~0008421

fixed all issues

Jim Luth

2017-09-05 16:30

administrator   ~0008424

Agreed to changes edited in telecon.

Issue History

Date Modified Username Field Change
2016-03-02 17:41 randyarmstrong New Issue
2016-03-08 16:26 Jim Luth Assigned To => Paul Hunkar
2016-03-08 16:26 Jim Luth Status new => assigned
2016-03-08 16:26 Jim Luth Target Version => 1.04
2016-12-19 16:54 Matthias Damm Relationship added related to 0003325
2017-09-01 12:47 Paul Hunkar Note Added: 0008421
2017-09-01 12:47 Paul Hunkar Status assigned => resolved
2017-09-01 12:47 Paul Hunkar Resolution open => fixed
2017-09-05 16:30 Jim Luth Note Added: 0008424
2017-09-05 16:30 Jim Luth Status resolved => closed
2017-09-05 16:30 Jim Luth Fixed in Version => 1.04