CVE-2026-112021
7.5HighPublished 18 Oct 2026 · NVD status: Received · AI triage by gemini-3.8-flash
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
- Impact
- High impact on availability
- Weakness
- CWE-122
Impact
Unauthenticated remote attackers can crash the snac2 server with a single HTTP POST request. They only need network access to send an application/activity+json request to the activitypub_post_handler endpoint.
Root cause
A heap-based buffer overflow in _xs_json_load_lexer() mishandles \u0000 escape sequences during JSON parsing before signature validation.
Affected systems
snac2 before 2.93
CVSS v3.1 · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Fix & remediation
Upgrade snac2 to version 2.93 or later. If patching immediately is not possible, block or filter incoming HTTP POST requests containing '\u0000' at a reverse proxy.
$ git pull && make clean && make && sudo make installAI-suggested. Run it in staging first and check it against the vendor advisory. Why?
NVD description
snac2 before 2.93 contains a heap-based buffer overflow vulnerability in _xs_json_load_lexer() that allows unauthenticated remote attackers to corrupt heap memory by sending JSON strings containing a \u0000 escape. Attackers can send a single crafted application/activity+json POST to activitypub_post_handler(), which parses it before signature checks, overflowing heap allocations and crashing the server.
References
- https://codeberg.org/grunfink/snac2
- https://codeberg.org/grunfink/snac2/commit/ec2c5c2046e0381bc942ec5d0d05ec861fe377e7
- https://codeberg.org/grunfink/snac2/releases/tag/2.93
- https://codeberg.org/grunfink/snac2/src/tag/2.92/xs_json.h#L283-L285
- https://gist.github.com/nullenvk/2bf288e2d34cb3d4b7143e61dbf7d90b
- https://nullenvk.pl/posts/02-snac2-json
- https://www.vulncheck.com/advisories/snac2-before-2.93-heap-based-buffer-overflow-via-json-parser-xs-json-load-lexer