У текстових редакторах
Через модельін допускається встановлення лише обмеженого числа опцій. Якщо значення опції вказується вираз, воно виконується як sandbox, допускає застосування лише найпростіших безпечних операцій. При цьому до допустимих входить команда «:source», в якій можна використовувати модифікатор «!» для запуску довільних команд із зазначеного файлу. Таким чином, для виконання коду достатньо вказати в рядку modeline конструкцію виду «set foldexpr=execute('\:source! some_file'):». У Neovim виклик execute заборонено, але замість нього можна використовувати assert_fails.
Наприклад, для виконання команди "uname -a" досить просто відкрити у Vim або Neovim файл, у першому або останньому рядку якого вказано:
:!uname -a||» vi:fen:fdm=expr:fde=assert_fails("source\!\%"):fdl=0:fdt=»
Компанія «source! %» прочитає команди з поточного файлу та, відповідно, виконає «:!uname -a». Для приховання даного рядка від виведення утилітою cat можуть використовуватись escape-послідовність. Наприклад, у цьому
Перевірити активність режиму modeline можна командою ": set modeline?". Для відключення vimrc можна додати рядок "set nomodeline". У дистрибутивах проблема усунена в
Джерело: opennet.ru