mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2025-04-24 06:02:44 +00:00
Threat Model: improve wording and grammar
Signed-off-by: Janos Follath <janos.follath@arm.com>
This commit is contained in:
parent
042e433eda
commit
c51a413c47
32
SECURITY.md
32
SECURITY.md
@ -21,7 +21,7 @@ Users are urged to always use the latest version of a maintained branch.
|
|||||||
|
|
||||||
## Threat model
|
## Threat model
|
||||||
|
|
||||||
We use the following classification of attacks:
|
We classify attacks based on the capabilities of the attacker.
|
||||||
|
|
||||||
### Remote attacks
|
### Remote attacks
|
||||||
|
|
||||||
@ -32,13 +32,13 @@ or delaying legitimate messages, and injecting messages.
|
|||||||
Mbed TLS aims to fully protect against remote attacks and to enable the user
|
Mbed TLS aims to fully protect against remote attacks and to enable the user
|
||||||
application in providing full protection against remote attacks. Said
|
application in providing full protection against remote attacks. Said
|
||||||
protection is limited to providing security guarantees offered by the protocol
|
protection is limited to providing security guarantees offered by the protocol
|
||||||
in question. (For example Mbed TLS alone won't guarantee that the messages will
|
being implemented. (For example Mbed TLS alone won't guarantee that the
|
||||||
arrive without delay, as the TLS protocol doesn't guarantee that either.)
|
messages will arrive without delay, as the TLS protocol doesn't guarantee that
|
||||||
|
either.)
|
||||||
|
|
||||||
**Warning!** Depending on network latency, the timing of messages might be
|
**Warning!** Block ciphers do not yet achieve full protection against attackers
|
||||||
enough to launch some timing attacks. Block ciphers do not yet achieve full
|
who can measure the timing of packets with sufficient precision. For details
|
||||||
protection against these. For details and workarounds see the [Block
|
and workarounds see the [Block Ciphers](#block-ciphers) section.
|
||||||
Ciphers](#block-ciphers) section.
|
|
||||||
|
|
||||||
### Local attacks
|
### Local attacks
|
||||||
|
|
||||||
@ -70,14 +70,14 @@ details and workarounds see the [Block Ciphers](#block-ciphers) section.
|
|||||||
|
|
||||||
The attacker code running on the platform has access to some sensor capable of
|
The attacker code running on the platform has access to some sensor capable of
|
||||||
picking up information on the physical state of the hardware while Mbed TLS is
|
picking up information on the physical state of the hardware while Mbed TLS is
|
||||||
running. This can for example be any analogue to digital converter on the
|
running. This could for example be an analogue-to-digital converter on the
|
||||||
platform that is located unfortunately enough to pick up the CPU noise. (See
|
platform that is located unfortunately enough to pick up the CPU noise. (See
|
||||||
for example the [Leaky Noise
|
for example the [Leaky Noise
|
||||||
paper](https://tches.iacr.org/index.php/TCHES/article/view/8297).)
|
paper](https://tches.iacr.org/index.php/TCHES/article/view/8297).)
|
||||||
|
|
||||||
Mbed TLS doesn't offer any security guarantees against local non-timing based
|
Mbed TLS doesn't make any security guarantees against local non-timing-based
|
||||||
side channel attacks. If local non-timing attacks are present in a use case or
|
side channel attacks. If local non-timing attacks are present in a use case or
|
||||||
a user application's threat model, it needs to be mitigated by the platform.
|
a user application's threat model, they need to be mitigated by the platform.
|
||||||
|
|
||||||
#### Local fault injection attacks
|
#### Local fault injection attacks
|
||||||
|
|
||||||
@ -85,23 +85,23 @@ Software running on the same hardware can affect the physical state of the
|
|||||||
device and introduce faults. (See for example the [Row Hammer
|
device and introduce faults. (See for example the [Row Hammer
|
||||||
paper](https://users.ece.cmu.edu/~yoonguk/papers/kim-isca14.pdf).)
|
paper](https://users.ece.cmu.edu/~yoonguk/papers/kim-isca14.pdf).)
|
||||||
|
|
||||||
Mbed TLS doesn't offer any security guarantees against local fault injection
|
Mbed TLS doesn't make any security guarantees against local fault injection
|
||||||
attacks. If local fault injection attacks are present in a use case or a user
|
attacks. If local fault injection attacks are present in a use case or a user
|
||||||
application's threat model, it needs to be mitigated by the platform.
|
application's threat model, they need to be mitigated by the platform.
|
||||||
|
|
||||||
### Physical attacks
|
### Physical attacks
|
||||||
|
|
||||||
The attacker has access to physical information about the hardware Mbed TLS is
|
The attacker has access to physical information about the hardware Mbed TLS is
|
||||||
running on and/or can alter the physical state of the hardware (eg. power
|
running on and/or can alter the physical state of the hardware (e.g. power
|
||||||
analysis, radio emissions or fault injection).
|
analysis, radio emissions or fault injection).
|
||||||
|
|
||||||
Mbed TLS doesn't offer any security guarantees against physical attacks. If
|
Mbed TLS doesn't make any security guarantees against physical attacks. If
|
||||||
physical attacks are present in a use case or a user application's threat
|
physical attacks are present in a use case or a user application's threat
|
||||||
model, it needs to be mitigated by physical countermeasures.
|
model, they need to be mitigated by physical countermeasures.
|
||||||
|
|
||||||
### Caveats
|
### Caveats
|
||||||
|
|
||||||
#### Out of scope countermeasures
|
#### Out-of-scope countermeasures
|
||||||
|
|
||||||
Mbed TLS has evolved organically and a well defined threat model hasn't always
|
Mbed TLS has evolved organically and a well defined threat model hasn't always
|
||||||
been present. Therefore, Mbed TLS might have countermeasures against attacks
|
been present. Therefore, Mbed TLS might have countermeasures against attacks
|
||||||
|
Loading…
x
Reference in New Issue
Block a user