Skip to main content
Live Webinar with SANS (June 25)— Agentic CTI Automation for Fun & ProfitRegister Free
Mallory
Back to intelligence
endpoint-software-vulnerabilitywidely-deployed-product-advisoryinitial-access-methodstandards-framework-update

Vim modeline flaw enables arbitrary command execution via crafted files

Updated 14d agoFirst seen Mar 30, 202612 sources

A high-severity flaw in Vim allows arbitrary OS command execution when a user opens a specially crafted file in affected versions earlier than 9.2.0272. The bug chain abuses the tabpanel option, which was missing the P_MLE flag and therefore let modelines inject %{expr} expressions even when modelineexpr was not enabled; the injected code was then able to escape the sandbox because autocmd_add() lacked a check_secure() call. The issue affects builds compiled with +tabpanel, including common FEAT_HUGE builds, and executes with the privileges of the user running Vim. Vim fixed the issue in patch v9.2.0272 via commit 664701eb7576edb7c7c7d9f2d600815ec1f43459, and the vulnerability is tracked as CVE-2026-34714 and GHSA-2gmj-rpqf-pxvh.

Follow-on discussion on oss-sec focused on both CVE coordination and safer defaults for modelines. Maintainers said GitHub Support declined to assign a CVE because one had already been issued, while participants identified the record as CVE-2026-34714, reportedly assigned by MITRE. Security researchers and community members also argued that Vim's modeline feature remains risky for untrusted files because it is enabled by default in many environments, recommending mitigations such as setting nomodeline and moving toward a whitelist-based modeline design or disabling the feature by default; commenters noted that Debian, and likely Ubuntu, have already shipped with modelines disabled by default for years.

Share:
Vim modeline flaw enables arbitrary command execution via crafted files
Stay ahead

Get ahead of threats like this

Mallory correlates global threat intelligence with your attack surface — know if you’re exposed before adversaries strike.

EVENT TIMELINE

How this story unfolded

6 events from the most recent confirmed update back to the earliest known activity.

6 EVENTS
Apr 3, 20263mo ago

oss-sec notes MITRE CNA assigned CVE-2026-34714

A later oss-sec follow-up noted that the CVE record for CVE-2026-34714 listed MITRE CNA itself as the assigner rather than GitHub. This clarified the earlier confusion around why GitHub Support said it could not assign a CVE for the issue.

oss-sec: Re: [vim-security] Vim tabpanel modeline escape affects Vim < 9.2.0272
Apr 2, 20263mo ago

Researchers debate disabling or restricting Vim modelines by default

oss-sec participants argued that modelines should be disabled by default or limited to a whitelist of safer fields and values to reduce risk from untrusted files. The discussion included clarification that users should set nomodeline as a mitigation and noted that some distributions such as Debian already disable modelines by default.

oss-sec: Re: [vim-security] Vim tabpanel modeline escape affects Vim < 9.2.0272

oss-sec thread identifies the issue as CVE-2026-34714

In follow-up oss-sec discussion, participants said GitHub Support reported it could not assign a CVE because one had already been assigned, and the vulnerability was identified as CVE-2026-34714. The discussion focused on CVE assignment workflow rather than new exploitation details.

oss-sec: Re: [vim-security] Vim tabpanel modeline escape affects Vim < 9.2.0272
Mar 30, 20263mo ago

GitHub advisory published for Vim issue

A GitHub Security Advisory was published for the Vim tabpanel modeline escape issue, describing arbitrary command execution from opening a crafted file in affected Vim versions. The advisory credited Hung Nguyen with discovering and analyzing the bug chain and stated that the issue was fixed in v9.2.0272.

Vim tabpanel modeline escape affects Vim < 9.2.0272 · Advisory · vim/vim · GitHub

Vim vulnerability publicly disclosed on oss-sec

An oss-sec disclosure described a high-severity Vim vulnerability chain affecting versions earlier than 9.2.0272, where opening a crafted file could lead to arbitrary OS command execution. The write-up explained the tabpanel modeline bypass and sandbox escape conditions and noted impact on builds with +tabpanel enabled.

oss-sec: [vim-security] Vim tabpanel modeline escape affects Vim < 9.2.0272

Vim fixes tabpanel modeline escape in patch 9.2.0272

Vim released patch 9.2.0272 to fix a vulnerability chain in which the tabpanel option could be abused via modelines and a missing check_secure() call enabled sandbox escape to arbitrary command execution. The fix was published in the Vim repository and referenced in the security advisory for affected versions earlier than 9.2.0272.

patch 9.2.0272: [security]: 'tabpanel' can be set in a modeline · vim/vim@664701e · GitHub
LINKED ENTITIES

Related entities

Vulnerabilities, threat actors, malware, products, organizations, and breaches Mallory has linked to this story.

9 LINKEDOpen in app
Affected products
2 linked
VimVim
Organizations
6 linked
GitHubDebianVim projectDeepinCanonicalOpenwall
The operational view lives in Mallory

See the full picture, correlated to your attack surface.

This page covers what’s public. Mallory adds the parts that aren’t — which of your assets are affected, which threat actors are using it right now, which detections to deploy, and what to do next.
Exposure mapping

Map indicators from this story to your assets and identify affected systems in minutes.

Threat actor evidence

Every observed campaign, victim, and pivot linked to actors named in this story.

Associated malware

Malware, exploits, and IOCs connected to the activity described here.

Detection signatures

YARA, Sigma, and Snort rules deployed to your SIEM as soon as they’re published.

Scheduled alerts

Get matching new stories delivered to your team as they break — not the next morning.

AI threads

Ask questions about this story and take action on the answers.