Forscher des Google Project Zero-Teams haben die Technik zur Erstellung eines funktionierenden Exploits detailliert analysiert, der es ermöglicht, über das Senden einer SMS- oder RCS-Nachricht mit einem speziell gestalteten Audioanhang Code mit Kernel-Rechten unter Linux aus der Ferne auszuführen. Der Angriff erfolgt ohne dass der Benutzer irgendwelche Aktionen durchführen muss, einschließlich des Anzeigens oder Abspielens der empfangenen Nachricht.
Der Exploit nutzt zwei Schwachstellen: in der Bibliothek Dolby Unified Decoder (CVE-2025-54957) und dem bigwave-Treiber für den Linux-Kernel (CVE-2025-36934). Früher musste der Benutzer beim Ausnutzen von Schwachstellen in Codecs die empfangenen schadhafter Inhalte anhören oder ansehen. Nach der Integration von AI-Assistenten in den neuesten Android-Versionen wird der empfangene Multimedia-Inhalt automatisch nach dem Empfang dekodiert, was die Angriffsfläche erheblich erhöht und Aktionen des Benutzers (0-Klick) überflüssig macht. Im Kontext von Audio-SMS- und RCS-Nachrichten erstellt die Google Messages-App mithilfe des Dienstes com.google.android.tts automatisch eine Transkription zur Anwendung auf die Audio-Nachrichten, was eine Ausnutzung der Schwachstellen in den vorhandenen Audio-Codecs ohne Benutzerbeteiligung ermöglicht.
Das Problem im Dolby Unified Decoder wird durch einen Ganzzahlüberlauf bei der Berechnung der Pufferspeichergröße für die verarbeiteten Datenstrukturen syncframe verursacht, was dazu verwendet werden kann, über den zugewiesenen Pufferspeicher hinaus zu schreiben. Durch den Überlauf kann ein Zeiger überschrieben werden, der bei der Verarbeitung des nächsten synchronisierenden Frames verwendet wird; seine Änderung erlaubt es wiederum, mit von einem Angreifer kontrollierten Daten den Funktionszeiger zu überschreiben und die Ausführung eigenen Codes mit 'mediacodec'-Rechten zu organisieren, die durch SELinux eingeschränkt werden.
Zur Ausnutzung des Linux-Kernels wurde eine Schwachstelle im bigwave-Treiber verwendet, der für die Arbeit mit dem Zeichengerät /dev/bigwave verantwortlich ist, zu dem aus dem SELinux-Kontext 'mediacodec' Zugang gewährt wurde. Die Schwachstelle ermöglichte es, Kernstrukturen durch Manipulation mit dem ioctl-Aufruf BIGO_IOCX_PROCESS zu überschreiben und die Ausführung von Code mit Kernel-Rechten zu erreichen.
Eine Schwachstelle in der Bibliothek Dolby Unified Decoder (libcodec2_soft_ddpdec.so), die Funktionen zum Dekodieren der Formate Dolby Digital (DD, AC-3) und Dolby Digital Plus (DD+, EAC-3) bereitstellt, ist nicht spezifisch für Android und die Firmware des Pixel 9 und zeigt sich auch auf anderen Plattformen (Samsung S24, MacBook Air M1, iPhone 17 Pro, Windows, ChromeOS usw.). Im Android-Repository AOSP und in der Firmware für das Samsung S24 wird für Prozesse, die im Kontext von mediacodec ausgeführt werden, ein seccomp-Filter für Systemaufrufe angewendet, der die weitere Ausnutzung von Schwachstellen im Kernel erschwert. In der Firmware für das Pixel 9 fehlte ein ähnlicher Filter. Vor Angriffen könnte schützen der Mechanismus Memory Tagging (MTE), aber er ist für Geräte der Pixel 8+-Reihe nur in Form einer Option verfügbar, die beim Aktivieren des Modus „Erweiterter Schutz“ aktiviert werden kann. Unter macOS und iOS erschwert die Erstellung der Bibliothek mit dem Flag „-fbounds-safety“ die Ausnutzung, da zusätzliche Überprüfungen auf Übergriffe bei Arrays eingefügt werden, die die Leistung herabsetzen.
Forscher befassen sich gesondert mit den Problemen bei der Bereitstellung von Korrekturen für die Schwachstelle im Dolby Unified Decoder für die Nutzer. Informationen über die Schwachstelle wurden 82 Tage vor der Bereitstellung der Korrektur für die Nutzer von Pixel-Geräten öffentlich bekannt gegeben. Die Firma Dolby wurde am 26. Juni 2025 über das Problem informiert. Das erste binäre Update wurde am 18. September für ChromeOS veröffentlicht, aber für Android-Geräte stellte Dolby die binären Patches erst am 8. Oktober zur Verfügung. Am 15. Oktober wurden Informationen über die Schwachstelle öffentlich bekannt. Am 12. November veröffentlichte Samsung die Korrektur, und erst am 5. Januar wurde das Update für Pixel-Geräte veröffentlicht. Die Verbreitung des Patches für alle Android-Geräte dauerte 139 Tage.
Im Dolby Unified Decoder wurde eine Schwachstelle innerhalb von weniger als zwei Tagen entdeckt, im BigWave-Treiber sogar innerhalb eines Tages der Überprüfung. Der Aufwand zur Entwicklung eines funktionierenden Exploits für die Schwachstelle im Dolby Unified Decoder wird auf 8 Wochen bei einem einzelnen Forscher geschätzt, für BigWave auf 3 Wochen. Im veröffentlichten Bericht von Dolby am 14. Oktober wurde die Schwachstelle im Dolby Unified Decoder als geringfügig gefährlich eingestuft, obwohl Details zu dem in Arbeit befindlichen Exploit übermittelt wurden. Die Schwachstelle in BigWave wurde in Android als moderat eingestuft, mit der Begründung, dass ein Angriff nur aus privilegierten Inhalten möglich ist und nicht in nicht privilegierten Kontexten. (Drei Monate später wurde der Status der Schwachstelle auf "gefährliches Problem" geändert).
Quelle: opennet.ru
