1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

5 Commits

Author SHA1 Message Date
932ad3fc1f
sys/ssp: move dependency resolution in its own Makefile.dep 2023-06-15 10:24:47 +02:00
67391afe1a
sys/ssp: add missing Kconfig 2023-05-19 15:09:55 +02:00
Sören Tempel
dbd5b4a402 sys/ssp: use a random value as the canary
This implements the randomization of canary values on each build as
mentioned in the comment above the STACK_CHK_GUARD macro. The canary
value is generated by the buildsystem and passed to the ssp module using
a `-D` compiler flag. The ssp object file, using this canary value, is
marked as PHONY to make sure it is rebuild on each make invocation,
thereby ensuring that each build uses a new random canary value.

Implementing this properly would require generating a cryptographically
secure random value on each boot of the RIOT operating system. This is
not deemed possible on some constrained devices, e.g. due to lack of
hardware random number generators. Besides, RIOT only seems to support a
PRNG (random module) currently. While this may be implemented in the
future for some devices the changes implemented in this commit may still
be used as a fallback then.

A hardcoded canary value is used when building software on the CI to not
break the CI test cache [1].

[1]: https://github.com/RIOT-OS/RIOT/pull/13119#issuecomment-574132932
2020-01-20 14:51:26 +01:00
smlng
67201c18f4 sys, ssp: fix doxygen grouping 2017-07-03 10:55:35 +02:00
7a0fcc30c8 sys: add initial SSP support 2017-06-27 18:05:14 +02:00