CVE-2024-53920
HIGH · 7.8Package maintainer patches only; no PoC, KEV, or defender triage visible.
What: GNU Emacs before 30.1 allows arbitrary code execution when elisp-completion-at-point or on-the-fly byte-compile diagnosis is invoked on untrusted Lisp source code via unsafe macro expansion (CVSS 7.8 HIGH).
Why it matters: Requires user interaction (code completion or diagnostic opt-in on untrusted code), so real-world risk depends on developer workflows. Not KEV-listed. No public PoC or in-the-wild exploitation reported. Chatter is limited to NixOS package patches.
Where it's seen: Three NixOS GitHub pull requests backporting the patch across multiple Emacs versions; no broader security discussion, vendor advisories, or researcher PoCs visible.
RISK: MODERATE — High CVSS but requires user interaction on untrusted code; no active exploitation signal.
Description
In elisp-mode.el in GNU Emacs before 30.1, a user who chooses to invoke elisp-completion-at-point (for code completion) on untrusted Emacs Lisp source code can trigger unsafe Lisp macro expansion that allows attackers to execute arbitrary code. (This unsafe expansion also occurs if a user chooses to enable on-the-fly diagnosis that byte compiles untrusted Emacs Lisp source code.)
CVSS 3.1 breakdown
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H- Attack vector
- Local
- Complexity
- Low
- Privileges required
- None
- User interaction
- Required
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Affected versions
- gnu/emacs
- < 30.1
References
- https://news.ycombinator.com/item?id=42256409 [Issue Tracking]
- https://yhetil.org/emacs/CAFXAjY5f4YfHAtZur1RAqH34UbYU56_t6t2Er0YEh1Sb7-W=hg@mail.gmail.com/ [Mailing List]
- http://www.openwall.com/lists/oss-security/2026/08/20/3
- http://www.openwall.com/lists/oss-security/2026/08/20/7
- http://www.openwall.com/lists/oss-security/2026/09/14/1
- https://lists.debian.org/debian-lts-announce/2025/02/msg00033.html