Sårbarhed i Vim og Neovim

Sikkerhedsforskeren Armin Razmjou har lavet et PoC, hvor der bliver åbnet en reverse shell på et system, med en sårbar udgave af Vim. Illustration: Armin Razmjoum, screenshot GitHub
En sårbarhed er dukket op i tekst-editoren Vim, der går det muligt for en angriber at eksekvere kode via en tekstfil.

Tekst-editoren Vim er blevet ramt af en sårbarhed, som gør det muligt for en angriber at eksekvere kode på et berørt system, når brugeren åbner særligt udformede tekstfiler. Også den afledte text-editor NeoVim er ramt af sårbarheden.

Det fortæller Ars Technica, som henviser til et indlæg, som sikkerhedsforskeren Armin Razmjou har udgivet tidligere på måneden.

Sårbarheden relaterer sig til modeline-funktionen i programmet. Modeline gør det muligt at sætte parametre for eksempelvis vinduesstørrelsen i en tekstfil, som så træder i kraft, når den pågældende tekstfil bliver åbnet i Vim.

Armin Razmjou har fundet frem til, at det via source!-kommandoen (udråbstegnet er en del af kommandoen) er muligt at omgå den sandbox-beskyttelse, som ellers er lagt ind i forhold til, hvilke kommandoer, der kan afvikles i modeline-konteksten.

»It reads and executes commands from a given file as if typed manually, running them after the sandbox has been left,« forklarer Armin Razmjou i indlægget på Github med henvisning til source!-kommandoen.

Her ligger også to proof-of-concepts (PoC) - altså eksempler på, hvordan sårbarheden kan udnyttes. I det ene af dem, bliver der åbnet en såkaldt reverse-shell, når en tekst-fil bliver åbnet på et sårbart system. En reverse-shell giver en angriber fjernadgang ind i systemet.

For at sårbarheden kan udnyttes, kræver det, at modelines er slået til i styresystemet. Det skulle være tilfældet i forhold til nogle Linux-distributioner, men ikke på MacOS.

I en meddelelse fra det amerikanske National Institute of Standards and Technology (NIST) fremgår det, at der er frigivet patches til Linux-distributionerne Debian og Fedora. Fejlen findes ifølge Ars Technica i Vim-versioner, som er ældre end 8.1.1365 og i Neovim versioner før version 0.3.6.

Ifølge mediet skulle sårbarheden ikke være patched i Apples MacOS, men her skulle modelines tilgengæld heller ikke være slået til som standard. Dog kan brugeren aktivere modelines, og sker det, så virker i hvert fald den ene af Razmjous PoC'er, har Ars Technica bekræftet.

Apple er ikke vendt tilbage på en henvendelse fra Ars Technica i forhold til den sårbare udgave af Vim.

Tips og korrekturforslag til denne historie sendes til tip@version2.dk
Kommentarer (2)
sortSortér kommentarer
  • Ældste først
  • Nyeste først
  • Bedste først
Morten Vinding

Jeg har testet lidt forskellige OS'er.
Umiddelbart ser det ud til at:

modelines er slået fra på:
Ubuntu distributioner (testet 16.04 og 18.04)

og slået til på:
CentOS (testet 6 og 7)
MacOS (kun testet seneste Mojave)

For alle testede OS's er det slået fra for root brugeren, som også er vim default setup.

  • 2
  • 0
Log ind eller Opret konto for at kommentere