
Proof-of-Concept-Exploit für CVE-2025-46819, eine Out-of-Bounds-Leseoperation beim Lua-Langstring-Trennzeichen in Redis, die einen Absturz durch fehlerhafte Eingabe demonstriert.
Fehlerhaftes Long-String-Delimiter, das einen Out-of-Bounds-Read im Lua-Lexer bei Redis 8.2.1 verursacht.
Der Long-String-Parser von Lua in Redis 8.2.1 behandelt fehlerhafte [=...-Sequenzen falsch und gibt Sentinel-Werte zurück, die zu Buffer-Underflows oder übermäßiger Rekursion führen. Angreifer können Redis dazu bringen, außerhalb der Grenzen zu lesen oder den C-Stack zu überlaufen.
redis-cliCVE-2025-46819.lua – erstellt ein riesiges fehlerhaftes Delimiter und übergibt es an loadstring.redis-cli -h localhost -p 6379 --eval CVE-2025-46819.lua
Erwartetes Ergebnis:
Bei verwundbaren Versionen sehen Sie typischerweise „ERR C stack overflow“ oder einen sofortigen Absturz. Redis 8.2.2 (Commit 3a1624da2449ac3dbfc4bdaed43adf77a0b7bfba) lehnt das Skript mit „invalid long string delimiter“ ab, ohne den Server zu destabilisieren.
Upgrade auf Redis 8.2.2 oder höher, oder deaktivieren Sie Lua für nicht vertrauenswürdige Benutzer.