CVE-2026-99136 in Linux
Zusammenfassung
von VulDB • 28.10.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
dm-crypt: Behebung eines kleinen Race Condition in crypt_dec_pending
crypt_dec_pending liest io->error aus, bevor es atomic_dec_and_test aufruft. Ein anderer Kontext, beispielsweise crypt_endio, der von einer Unterbrechung (Interrupt) aufgerufen wird, kann io->error setzen und seine Referenz zwischen dem Lesen und dem Dekrementieren freigeben. crypt_dec_pending gibt dann die letzte Referenz frei und schließt den bio mit einem veralteten Status ab – so wird ein Lesevorgang, der fehlschlug und nie entschlüsselt wurde, oder ein Schreibvorgang, der fehlgeschlagen ist, als erfolgreich gemeldet.
Das Lesen von io->error vor dem Dekrementieren erfolgte durch das Commit b35f8caa0890 („dm crypt: wait for endio to complete before destruction“), da dieses Commit dm_crypt_io freigab, bevor bio_endio aufgerufen wurde. Dies ist nicht mehr der Fall; dm_crypt_io befindet sich nun in den pro-bio-Daten.
Lesen Sie io->error nach atomic_dec_and_test stattdessen. Da atomic_dec_and_test vollständig geordnet (fully ordered) ist, wird keine zusätzliche Barriere benötigt.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.