
Proof-of-concept für den Redis-Lua-unpack-Integer-Overflow (CVE-2025-46817), der Stack-Blow-up und potenzielle RCE auf Redis 8.2.1 demonstriert.
unpack Integer Overflow (Potenzielle RCE)Redis Lua unpack Integer-Overflow-PoC, der Stack-Aufblähung und Absturz auf 8.2.1 verursacht.
Redis 8.2.1 enthält Lua 5.1 mit einer unpack-Implementierung, die die Ergebnisanzahl mit vorzeichenbehafteten Ganzzahlen berechnet. Sorgfältig gewählte Start-/End-Indizes umgehen die Arithmetik, umgehen lua_checkstack und zwingen Lua, Milliarden von Ergebnissen zu pushen. In Kombination mit Tabellenindex-Umwicklung kann dies den Heap-Speicher beschädigen und zu RCE führen.
redis-cliCVE-2025-46817.lua – ruft unpack mit einem Bereich auf, der die vorzeichenbehaftete Arithmetik überläuft.redis-cli -h localhost -p 6379 --eval CVE-2025-46817.lua
Erwartetes Ergebnis:
Auf 8.2.1 beendet der Server typischerweise die Verbindung oder stürzt aufgrund übermäßigen Stack-Wachstums ab. Redis 8.2.2 (Commit fc9abc775e308374f667fdf3e723ef4b7eb0e3ca) lehnt den Aufruf mit „ERR Error running script (too many results to unpack)" ab.
Upgrade auf Redis 8.2.2 oder höher, das luaB_unpack und luaH_getnum absichert, oder deaktivieren Sie Lua-Skripting für nicht vertrauenswürdige Benutzer.