Die im Linux-Kernel 6.1 durchgefĂŒhrte Umstellung der VMA (Virtuelle Speicherbereich) von der Datenstruktur âred-black treeâ auf âmaple treeâ fĂŒhrte zur Entstehung einer SicherheitsanfĂ€lligkeit (CVE-2023-3269), die es einem unprivilegierten Benutzer erlaubt, eigenen Code mit Kernel-Rechten auszufĂŒhren. Die SicherheitsanfĂ€lligkeit, die den Codenamen StackRot trĂ€gt, tritt seit der Veröffentlichung des Kernels 6.1 auf und wurde in den Updates 6.4.1, 6.3.11 und 6.1.37 behoben.
Die Struktur âmaple treeâ ist eine Variante des B-Baums, die die Indizierung nach Wertbereichen unterstĂŒtzt und fĂŒr die effiziente Nutzung des Caches moderner Prozessoren ausgelegt ist. Im Vergleich zum âred-black treeâ ermöglicht die Verwendung des âmaple treeâ eine höhere Performance. Die SicherheitsanfĂ€lligkeit wird durch einen Fehler im Handler fĂŒr das Stapel-Expansion verursacht â beim âmaple treeâ, das zur Verwaltung von Bereichen des virtuellen Speichers im Kernel verwendet wird, konnte der Knoten im Baum ohne Setzen einer Schreibsperre ersetzt werden, was zu einem Zugriff auf einen Speicherbereich nach seiner Freigabe (use-after-free) fĂŒhrte.
Die Ausnutzung der SicherheitsanfĂ€lligkeit wurde dadurch erschwert, dass die Knoten in der Struktur âmaple treeâ im verzögerten Modus unter Verwendung von Callback-Aufrufen mit RCU-Sperren (Read-copy-update) freigegeben werden. Dennoch gelang es den Forschern, die entstandenen Schwierigkeiten zu ĂŒberwinden und einen funktionierenden Exploit vorzubereiten, den sie Ende Juli veröffentlichen wollen, um den Benutzern Zeit fĂŒr das Update ihrer Systeme zu geben. Die Ausnutzung ist in fast allen Kernel-Konfigurationen möglich und erfordert nur minimale Privilegien.
Quelle: opennet.ru
