Zraniteľnosť vo Vim umožnila spustenie kódu pri otvorení TXT

elán

V predinštalovaných textových editoroch v rôznych distribúciách bola opravená nová chyba zabezpečenia Linux sa našiel v textových editoroch Vim a Neovim (CVE-2019-12735).

Chyba nájdená v týchto editoroch umožňuje hackerom ovládať počítače, keď používatelia otvoria škodlivý textový súbor. Problém sa prejavuje pri predvolenom nastavení aktivity modelu („: set modeline“), ktorá umožňuje definovať možnosti úprav v súbore, ktorý sa spracováva.

Vim a jeho vidlica NeoVim obsahovali chybu, ktorá spočívala v modelkách. Táto funkcia umožňuje používateľom určiť rozmery okna a ďalšie vlastné možnosti blízko začiatku alebo konca textového súboru.

Táto funkcia je predvolene povolená vo verziách starších ako Vim 8.1.1365 Neovim 0.3.6 a platí pre všetky typy súborov vrátane súborov .txt.

O zraniteľnosti vo Vime

Prostredníctvom Modeline, povolený je iba obmedzený počet možností. SAk je výraz zadaný ako hodnota možnosti, spustí sa v karanténnom režime, ktorý umožňuje použiť iba tie najjednoduchšie bezpečné operácie.

Súčasne príkaz ": source" je jedným z povolených, v ktorom môžete použiť modifikátor "!" spustiť ľubovoľné príkazy zo zadaného súboru.

Preto na vykonanie kódu stačí označiť v modelovej línii konštrukciu formulára „set foldexpr = execute ('\: source! Some_file'):". V Neovime je volanie exekúcie zakázané, ale namiesto neho je možné použiť assert_fails.

Na druhej strane je v pieskovisku navrhnutý tak, aby zabraňoval vedľajším účinkom:

Možnosti „foldexpr“, „formatexpr“, „includeexpr“, „indentexpr“, „stavový riadok“ a „foldtext“ je možné vyhodnotiť v karanténe. To znamená, že ste chránení pred týmito prejavmi s nepríjemnými vedľajšími účinkami. To poskytuje určité zabezpečenie, keď sú tieto možnosti definované z modelu.

Zatiaľ čo modely obmedzujú dostupné príkazy a vykonávajú ich v prostredí izolovanom od operačného systému, výskumník Armin Razmjou poznamenal, že príkaz: font! túto ochranu obišla:

„Číta a vykonáva príkazy v danom súbore, akoby boli zadané manuálne, a vykoná ich po opustení karantény,“ napísal výskumník v správe zverejnenej začiatkom tohto mesiaca. -ci.

Takto je možné triviálne zostaviť modelový rad, ktorý vykonáva kód mimo karantény.

Príspevok obsahuje dva textové súbory, ktoré umožňujú overenie princípu, z ktorých jeden graficky ilustruje hrozbu.

Jeden z nich otvorí reverzný shell na počítači so systémom Vim alebo NeoVim. Odtiaľ mohli útočníci spustiť príkazy podľa vlastného výberu na požadovanom stroji.

„Tento PoC popisuje prístup skutočného útoku, pri ktorom sa spustí reverzný shell, keď používateľ otvorí súbor,“ napísal Razmjou. «Ak chcete útok skryť, súbor sa po otvorení okamžite prepíše. PoC tiež používa koncové únikové sekvencie na skrytie modelovej čiary, keď je obsah tlačený pomocou kat. (cat -v odhalí skutočný obsah). «

Zraniteľnosť vykonávania príkazov vyžaduje aktiváciu štandardnej funkčnosti modelovania, ako v predvolenom nastavení v niektorých distribúciách systému Linux. Porucha sa nachádza vo Vime pred verziou 8.1.1365 a v Neovime pred verziou 0.3.6.

Toto odporúčanie z Národnej databázy zraniteľností Národného inštitútu pre štandardy a technológie ukazuje, že distribúcie Linuxu Debian a Fedora začali vydávať pevné verzie.

V distribúciách je problém vyriešený v RHEL, SUSE / openSUSE, Fedora, FreeBSD, Ubuntu, Arch Linux a ALT.

Zraniteľnosť zostáva v Debiane neopravená (V modeli Debian je predvolene vypnutý, takže sa chyba v predvolenom stave neprejavuje).

Najnovšia verzia systému MacOS naďalej používa zraniteľnú verziu, hoci útoky fungujú, iba ak používatelia zmenili predvolené nastavenie, ktoré má povolenú funkciu modelines.


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Za údaje zodpovedá: AB Internet Networks 2008 SL
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.