CVE-2024-53920: Code Injection
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.)
Other sources
In elisp-mode.el in GNU Emacs through 30.0.92, 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.)
— Red Hat
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 29.4-3 - Upgrade
Upgrade
GNU Emacs elisp-mode.el (elisp-completion-at-point)to a version that resolves this vulnerability.Fixed in 30.1
Event History
Frequently Asked Questions
What is the severity of CVE-2024-53920?
CVE-2024-53920 has been classified as a high severity vulnerability due to its ability to allow arbitrary code execution through unsafe Lisp macro expansion.
How do I fix CVE-2024-53920?
To fix CVE-2024-53920, users should update GNU Emacs to version 30.0.93 or later, where the issue has been resolved.
What software versions are affected by CVE-2024-53920?
CVE-2024-53920 affects GNU Emacs versions up to and including 30.0.92.
What type of vulnerability is CVE-2024-53920?
CVE-2024-53920 is a code execution vulnerability that arises from unsafe macro expansion in Emacs Lisp.
Who is vulnerable to CVE-2024-53920?
Any user of GNU Emacs versions 30.0.92 or earlier who uses elisp-completion-at-point on untrusted Emacs Lisp source code is vulnerable to CVE-2024-53920.