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.)
Affected products
gnu: emacs
References10
- eshelyaron.com/posts/2024-11-27-emacs-aritrary-code-execution-a… Third Party Advisory
- git.savannah.gnu.org/cgit/emacs.git/tag/?h=emacs-30.0.92 Product
- git.savannah.gnu.org/cgit/emacs.git/tree/ChangeLog.4 Release Notes
- git.savannah.gnu.org/cgit/emacs.git/tree/etc/NEWS?h=emacs-30.1 Product
- news.ycombinator.com/item?id=42256409 Issue Tracking
- yhetil.org/emacs/CAFXAjY5f4YfHAtZur1RAqH34UbYU56_t6t2Er0YEh1Sb7… Mailing List
- www.openwall.com/lists/oss-security/2026/08/20/3
- www.openwall.com/lists/oss-security/2026/08/20/7
- www.openwall.com/lists/oss-security/2026/09/14/1
- www.openwall.com/lists/oss-security/2026/09/21/9
Metrics
- CVSS 3.1
-
7.8
HIGH
Score source: CNA
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - EPSS — exploit probability
- 1% percentile: 49 · as of 6 November 2026
- CWE
- CWE-94
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.