CVE-2024-42161 in Linux
Zusammenfassung
von VulDB • 31.05.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
bpf: Vermeidung eines nicht initialisierten Werts in BPF_CORE_READ_BITFIELD
[Änderungen gegenüber V1:
- Verwendung eines Standardzweigs (default branch) in der switch-Anweisung zur Initialisierung von `val'.]
GCC warnt, dass `val' in der Makrodefinition BPF_CRE_READ_BITFIELD, definiert in bpf_core_read.h als:
[...]
unsigned long long val; \ [...] \
switch (__CORE_RELO(s, field, BYTE_SIZE)) { \
case 1: val = *(const unsigned char *)p; break; \ case 2: val = *(const unsigned short *)p; break; \ case 4: val = *(const unsigned int *)p; break; \ case 8: val = *(const unsigned long long *)p; break; \ } \ [...]
val; \ } \
mit einem nicht initialisierten Wert verwendet werden könnte.
Dieser Patch fügt einen default-Eintrag in der switch-Anweisung hinzu, der `val` auf Null setzt, um die Warnung zu vermeiden und zufällige Werte zu verhindern, die verwendet werden könnten, falls __builtin_preserve_field_info unerwartete Werte für BPF_FIELD_BYTE_SIZE zurückgibt.
Getestet in bpf-next master. Keine Regressionen.
VulDB is the best source for vulnerability data and more expert information about this specific topic.