En opstart fra Berlin har afslÞret en sÄrbarhed med ekstern kodeudfÞrelse (RCE) og et cross-site script (XSS) -fejl i Pling, som bruges i forskellige applikationskataloger, der er bygget pÄ denne platform, og som kan tillade, at JavaScript-kode udfÞres i sammenhÊng med andre brugere. De berÞrte websteder er nogle af de vigtigste gratis kataloger til softwareapplikationer sÄsom store.kde.org, appimagehub.com, gnome-look.org, xfce-look.org, pling.com blandt andre.
Positiv sikkerhed, som fandt hullerne, sagde, at fejlene stadig er til stede i Pling-koden, og at dens vedligeholdere ikke har reageret pÄ sÄrbarhedsrapporterne.
Tidligere i Är sÄ vi pÄ, hvordan populÊre desktop-apps hÄndterer bruger-leverede URI'er og fandt svagheder i kodeudfÞrelse i flere af dem. En af de apps, jeg tjekkede, var KDE Discover App Store, som viste sig at hÄndtere utroede URI'er pÄ en usikker mÄde (CVE-2021-28117, KDE Security Advisory).
Undervejs fandt jeg hurtigt flere alvorlige sÄrbarheder pÄ andre markeder for fri software.
En ormede XSS med potentiale for angreb pÄ forsyningskÊden pÄ Pling-baserede markeder og en drive-by RCE, der pÄvirker PlingStore-applikationsbrugere, kan stadig udnyttes.
Pling prÊsenterer sig som en markedsplads for reklamer, der kan uploade temaer og grafik Linux desktop, blandt andet i hÄb om at fÄ noget overskud fra tilhÊngere. Den kommer i to dele: koden, der er nÞdvendig for at kÞre deres egen bling-basar og en elektronbaseret applikation, som brugerne kan installere for at administrere deres temaer fra en Pling-souk. Webkoden har XSS, og klienten har XSS og en RCE. Pling styrker flere steder, fra pling.com og store.kde.org til gnome-look.org og xfce-look.org.
Problemets kerne er det platformen Pling tillader tilfÞjelse af multimedieblokke i HTML-format, for eksempel at indsÊtte en YouTube-video eller et billede. Koden tilfÞjet gennem formularen valideres ikke korrekt, hvad giver dig mulighed for at tilfÞje ondsindet kode under dÊkke af et billede og lÊg oplysninger i kataloget, som JavaScript-koden udfÞrer, nÄr de vises. Hvis oplysningerne Äbnes for brugere, der har en konto, er det muligt at igangsÊtte handlinger i biblioteket pÄ vegne af denne bruger, herunder tilfÞje et JavaScript-opkald til deres sider og implementere en slags netvÊrksorm.
OgsÄ, er der identificeret en sÄrbarhed i PlingStore-applikationen, skrevet ved hjÊlp af Electron-platformen og giver dig mulighed for at navigere gennem OpenDesktop-mapper uden en browser og installere de pakker, der prÊsenteres der. En sÄrbarhed i PlingStore gÞr det muligt for koden at kÞre pÄ brugerens system.
NÄr PlingStore-applikationen kÞrer, startes ocs-manager-processen desuden, accepterer lokale forbindelser via WebSocket og udfÞre kommandoer som f.eks. indlÊsning og start af applikationer i AppImage-format. Kommandoerne formodes at blive transmitteret af PlingStore-applikationen, men pÄ grund af manglende godkendelse kan en anmodning sendes til ocs-manager fra brugerens browser. Hvis en bruger Äbner et ondsindet websted, kan de starte en forbindelse med ocs-manager og fÄ koden kÞrt pÄ brugerens system.
En XSS-sÄrbarhed rapporteres ogsÄ i biblioteket extensions.gnome.org; I feltet med URL'en til plugins startside kan du angive en JavaScript-kode i formatet "javascript: code", og nÄr du klikker pÄ linket, vil den angivne JavaScript blive lanceret i stedet for at Äbne projektwebstedet.
PÄ den ene side, problemet er mere spekulativt, da placeringen i mappen extensions.gnome.org modereres, og angrebet krÊver ikke kun at Äbne en bestemt side, men ogsÄ et eksplicit klik pÄ linket. PÄ den anden side vil moderatoren muligvis gÄ til projektwebstedet, ignorere linkformularen og kÞre JavaScript-koden i forbindelse med deres konto under verifikationen.
Endelig, hvis du er interesseret i at vide mere om det, kan du konsultere detaljerne i fĂžlgende link.