Im Linux-System nvmet-tcp (NVMe-oF/TCP), das den Zugriff auf NVMe-Speicher über das Netzwerk (NVM Express over Fabrics) unter Verwendung des TCP-Protokolls ermöglicht, wurde eine Sicherheitsanfälligkeit (CVE-2023-5178) entdeckt, die potenziell die Ausführung von Schadcode auf Kernel-Ebene aus der Ferne ermöglicht oder, bei lokalem Zugriff, die Privilegien im System erhöhen kann. Ein Patch zur Behebung ist derzeit verfügbar. Das Problem tritt seit der ersten Version des NVMe-oF/TCP-Treibers auf (im Sicherheitsbericht wird der Linux-Kernel 5.15 erwähnt, aber die Unterstützung für NVMe-oF/TCP wurde im Kernel 5.0 hinzugefügt). Betroffen sind Systeme mit aktiviertem dem Server durch NVMe-oF/TCP (NVME_TARGET_TCP), das standardmäßig Verbindungen am Netzwerkport 4420 akzeptiert.
Die Sicherheitsanfälligkeit wurde durch einen logischen Fehler verursacht, bei dem die Funktion nvmet_tcp_free_crypto zweimal aufgerufen wurde, wodurch einige Zeiger zweimal freigegeben und freigegebene Adressen dereferenziert wurden. Dieses Verhalten führt zu einem Zugriff auf bereits freigegebenen Speicher (use-after-free) und einer doppelten Speichergabe (double-free) bei der Verarbeitung einer speziell strukturierten Nachricht vom NVMe-oF/TCP-Server, die sowohl im lokalen als auch im globalen Netzwerk gesendet werden kann.
Quelle: opennet.ru
