id: CVE-2025-46819 info: name: Redis < 8.2.1 Lua Long-String Delimiter - Out-of-Bounds Read author: pussycat0x severity: high description: | Redis is an open source, in-memory database that persists on disk. Versions 8.2.1 and below allow an authenticated user to use a specially crafted LUA script to read out-of-bound data or crash the server and subsequent denial of service. The problem exists in all versions of Redis with Lua scripting. This issue is fixed in version 8.2.2. To workaround this issue without patching the redis-server executable is to prevent users from executing Lua scripts. This can be done using ACL to block a script by restricting both the EVAL and FUNCTION command families. impact: | Authenticated attackers can use specially crafted Lua scripts to read out-of-bound data or crash the Redis server, causing denial of service. reference: - https://github.com/dwisiswant0/CVE-2025-46819 remediation: | Update to version 8.2.2 or later. metadata: verified: true max-request: 1 shodan-query: product:"redis" tags: cve,cve2025,js,redis,network,passive,authenticated,vuln flow: javascript(1) && javascript(2) javascript: - pre-condition: | isPortOpen(Host,Port); code: | const redis = require('nuclei/redis'); const info = redis.GetServerInfo(Host,Port); Export(info); args: Host: "{{Host}}" Port: "6379" matchers: - type: dsl dsl: - success == true - compare_versions(version, ' < 8.2.2') condition: and extractors: - type: regex name: version part: response group: 1 regex: - redis_version:(\d+\.\d+\.\d+) - code: | const redis = require('nuclei/redis'); const info = redis.RunLuaScript(Host,Port,Password,Payload); Export(info); args: Host: "{{Host}}" Port: "6379" Password: "{{passwords}}" Payload: 'return "lua enabled"' payloads: passwords: - "" matchers: - type: dsl dsl: - success == true - contains(response, 'lua enabled') condition: and internal: true # digest: 490a00463044022038c61354e8bb545b853ae78995deb3430115da9f6940ca52252e61014377f60e022047b4b429e04e7ff07164acf4e23ff03a792894bb2a3000a6bb6150543cadbf07:922c64590222798bb761d5b6d8e72950