CVE-2026-98314 in Linuxinfo

Zusammenfassung

von VulDB • 06.10.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

ALSA: pcm: Festlegen von timer->private_data vor der Registrierung des PCM-Timers

snd_pcm_timer_init() ruft snd_device_register() auf, um die neue struct snd_timer in die globale Timer-Liste einzubinden, während sie noch hw.c_resolution = snd_pcm_timer_resolution (sowie hw.start/hw.stop) enthält, und setzt erst danach timer->private_data = substream.

Sobald sich der Timer unter register_mutex in der Liste befindet, kann ein paralleler Lesezugriff denselben Mutex nutzen, um darauf zuzugreifen und diese Callback-Funktionen aufzurufen. /proc/asound/timers tut dies über c_resolution(), und snd_timer_open()+snd_timer_start() erreichen start()/stop() auf die gleiche Weise. Alle drei Funktionen dereferenzieren timer->private_data, das für diesen kurzen Zeitraum NULL ist, was zu einer Dereferenzierung eines NULL-Zeigers führt:

substream = timer->private_data; return substream->runtime ? ... // substream is NULL

Verschieben Sie die Zuweisung von private_data/private_free vor snd_device_register(), damit der Timer niemals ohne gesetztes private_data in der Liste sichtbar ist. Im Fehlerpfad von snd_device_register() kann nun private_free() (snd_pcm_timer_free()) ausgeführt werden, führt jedoch nur zu substream->timer = NULL, was an dieser Stelle bereits NULL ist, da substream->timer erst nach einer erfolgreichen Registrierung einmalig auf den neuen Timer gesetzt wird – der Fehlerpfad bleibt somit sicher.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Zuständig

Linux

Reservieren

25.09.2026

Veröffentlichung

06.10.2026

Moderieren

akzeptiert

Eintrag

VDB-414245

EPSS

0.00184

KEV

nein

Aktivitäten

very low

Quellen

Do you want to use VulDB in your project?

Use the official API to access entries easily!