https://seclists.org/oss-sec/2026/q4/138: [vim-security] Arbitrary Code Execution via Ruby Omni-Completion in Vim < 9.2.1177

Published Oct 12, 2026
·
Updated

Affected Software

1 affected component
vim Vim<9.2.1177

Frequently Asked Questions

1

Which Vim installations are exposed?

Vim versions earlier than 9.2.1177 are affected when built with the Ruby interface. The Ruby filetype plugin configures Ruby omni-completion for Ruby buffers in those builds.

2

What must happen for a crafted file to trigger the issue?

A user must edit a crafted Ruby file and invoke omni-completion after a variable reference. The crafted assignment can cause a Ruby expression to be evaluated as though it were a class name.

3

Does disabling g:rubycomplete_buffer_loading prevent this issue?

No. The affected code path is not covered by g:rubycomplete_buffer_loading, despite the setting being documented as an opt-in for evaluating buffer code during completion.

4

What can be done before upgrading?

Avoid invoking Ruby omni-completion on untrusted Ruby files. Disabling the Ruby omni-completion function for Ruby buffers also removes the described trigger path.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203