1
0
mirror of https://github.com/systemd/systemd.git synced 2025-02-04 21:47:31 +03:00
Lennart Poettering 550c8784c5 udev: when random MACs are requested, generate them with genuine randomness
This is a security feature, and we thus shouldn't derive the random MACs
from a potentially guessable source. MAC addresses are after all facing
to the outside, and can be interacted with from untrusted environments.
Hence, let's generate them the same way as we generate UUIDs: from
getrandom() or /dev/urandom, and optionally with RDRAND if that's
supported.

RDRAND should be fine, since this is not cryptographic key material, but
ultimately public information. We just want to make sure conflicts are
not likely.

Previously we'd generate the MACs via rand(), which means given the
short seed they are a little bit too guessable, making collisions too
likely. See #14355 in particular.

Fixes: #14355

(Note that #14355 was already fixed by
a0f11d1d11a546f791855ec9c47c2ff830e6a5aa, but I think we should do
better even, and not rely on rand() and uninitialized random pools)
2020-05-20 08:25:18 +02:00
2020-05-19 08:12:07 +02:00
2020-05-04 17:13:02 +02:00
2020-05-14 04:24:49 +03:00
2020-05-14 04:24:49 +03:00
2020-05-19 10:19:18 +02:00
2019-04-12 08:30:31 +02:00
2020-04-25 09:39:31 +02:00
2019-04-12 08:30:31 +02:00
2020-03-03 08:31:06 +01:00
2019-04-12 08:30:31 +02:00
2016-10-06 11:53:58 -04:00
2020-05-19 16:21:52 +02:00
2020-05-19 08:12:23 +02:00
2020-05-19 19:58:26 +02:00

Systemd

System and Service Manager

Count of open issues over time Count of open pull requests over time Semaphore CI Build Status
Coverity Scan Status
Fuzzit Status
OSS-Fuzz Status
CIFuzz
CII Best Practices
Travis CI Build Status
Language Grade: C/C++
CentOS CI Build Status
Build Status
Packaging status

Details

General information about systemd can be found in the systemd Wiki.

Information about build requirements is provided in the README file.

Consult our NEWS file for information about what's new in the most recent systemd versions.

Please see the Hacking guide for information on how to hack on systemd and test your modifications.

Please see our Contribution Guidelines for more information about filing GitHub Issues and posting GitHub Pull Requests.

When preparing patches for systemd, please follow our Coding Style Guidelines.

If you are looking for support, please contact our mailing list or join our IRC channel.

Stable branches with backported patches are available in the stable repo.

Description
The systemd System and Service Manager
Readme 557 MiB
Languages
C 89.2%
Python 5.3%
Shell 4.1%
Meson 1.2%