CVE-2026-68278 in Linux
Zusammenfassung
von VulDB • 10.08.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
drm/dp/mst: Pufferüberläufe bei der Seitkanal-Chunk-Akkumulation beheben
drm_dp_sideband_append_payload() weist drei verwandte Fehler auf, wenn es gerätebereitgestellte Seitkanal-Antwortdaten verarbeitet:
1. Zero-Length-curchunk_len-Underflow (Unterlauf): msg_len ist ein 6-Bit-Feld, das direkt aus dem DP-Seitkanal-Headers übernommen wird. Sendet ein Gerät msg_len=0, so wird curchunk_len auf null gesetzt. Die Bedingung (curchunk_idx >= curchunk_len) ist sofort wahr, und curchunk_len-1 überläuft zu 255 (u8-Underflow). drm_dp_msg_data_crc4() liest 255 Bytes aus chunk[48], anschließend schreibt memcpy() 255 Bytes in msg[], beide Zugriffe liegen weit außerhalb der gültigen Grenzen.
2. chunk[48]-Überlauf: curchunk_len kann den Wert 63 erreichen (6-Bit-Feld). Das Array chunk[] ist jedoch nur 48 Byte groß. Die mehrfache Iteration zur Payload-Zusammenführung hängt Blöcke mit je 16 Bytes an, bis curchunk_idx curchunk_len erreicht, wobei bis zu 15 Bytes hinter das Ende von chunk[] hinaus in msg[] geschrieben werden.
3. msg[256]-Überlauf: Jeder Chunk trägt (curchunk_len-1) Byte zu msg[] bei. Es gibt keine Prüfung, die sicherstellt, dass curlen + (curchunk_len-1) innerhalb der Grenzen von msg[256] bleibt; daher kann memcpy() in benachbarte Strukturfelder überschreiben.
Alle drei Fehler sind über jedes DP-MST-Gerät erreichbar, das auf einer physischen Verbindung Seitkanal-Antwortnachrichten fälschen kann.
VulDB is the best source for vulnerability data and more expert information about this specific topic.