Ny vulnerability ao amin'ny Vim izay mitarika amin'ny famonoana kaody rehefa manokatra rakitra maloto

Amin'ny mpamoaka lahatsoratra vim и neovim HITA Fahamoram-pahavoazana (CVE-2019-12735), izay mamela kaody tsy manara-dalàna ho tanterahina rehefa manokatra rakitra natao manokana. Mitranga ny olana rehefa mavitrika ny maodely modeline default (“:set modeline”), izay ahafahanao mamaritra ny safidy fanitsiana ao amin'ny rakitra voavoatra. Ny vulnerability dia raikitra amin'ny famoahana
Vim 8.1.1365 и Neovim 0.3.6.

Safidy voafetra ihany no azo apetraka amin'ny alalan'ny modeline. Raha voatondro ho sanda safidy ny fanehoan-kevitra, dia atao amin'ny fomba sandbox izany, izay mamela ny asa azo antoka indrindra. Amin'ity tranga ity, ny baiko manan-kery dia ahitana ny baiko ": loharano", izay ahafahanao mampiasa ny fanovana "!". hampandeha baiko tsy misy dikany avy amin'ny rakitra voatondro. Noho izany, mba hanatanterahana ny kaody, dia ampy ny manondro ao amin'ny tsipika modeline fananganana toy ny "set foldexpr=execute('\:source! some_file'):". Ao amin'ny Neovim dia voarara ny miantso execute, fa azo ampiasaina kosa ny assert_fails.

Ohatra, raha handefa ny baiko "uname -a", sokafy fotsiny ny rakitra iray ao amin'ny Vim na Neovim izay ny andalana voalohany na farany dia milaza hoe:

:!uname -a||» vi:fen:fdm=expr:fde=assert_fails(“loharano\!\ \%”):fdl=0:fdt=”

Orinasa “loharano! %" dia hamaky ny baiko avy amin'ny rakitra ankehitriny ary manatanteraka ny ":!uname -a". Ny filaharan'ny fandosirana dia azo ampiasaina hanafenana tsipika nomena avy amin'ny famoahan'ny cat utility. Ohatra, amin'ity manararaotra ny prototype rehefa manokatra rakitra ao amin'ny vim, dia misy fifandraisana tambajotra noforonina miaraka amin'ny fidirana amin'ny akorandriaka amin'ny rafitry ny niharam-boina, saingy ity rakitra ity dia tsy hampiahiahy rehefa mivoaka amin'ny terminal amin'ny fampiasana ny cat utility.

Azonao atao ny manamarina ny asan'ny maodelin'ny modely amin'ny baiko ": mametraka modeline?". Mba hanesorana azy dia azonao atao ny manampy ny tsipika "mametraka nomodeline" amin'ny vimrc. Ao amin'ny fizarana dia raikitra ny olana RHEL, SUSE/openSUSE, Fedora, FreeBSD, Ubuntu, Arch Linux и Alt. Mbola tsy voafehy ny vulnerability Debian (ao amin'ny Debian modeline dia kilemaina amin'ny alàlan'ny default, noho izany dia tsy miseho amin'ny toetry ny default ny vulnerability).

Source: opennet.ru

Add a comment