En nettleserutvidelse med mer enn 30 000 installasjoner har eksponert brukernes Twitch OAuth-tokener for en kommersiell bottjeneste. Utvidelsen var fortsatt tilgjengelig gjennom de offisielle Chrome- og Firefox-butikkene på tidspunktet for rapporteringen.
Sikkerhetsforskere fant ut at Twitch Enhanced Viewer | JeetBot henter ut autentiseringsdata fra Twitch-forespørsler. Deretter sender den påloggingsinformasjonen gjennom tredjeparts proxyservere.
Twitch-utvidelse samler inn OAuth-tokener
Twitch Enhanced Viewer | JeetBot presenterer seg som et verktøy for å forbedre strømmeplattformen. De annonserte funksjonene inkluderer blokkering av annonser og tvungen videoavspilling i høy oppløsning.
Utvidelsen hevder også at den kan omgå regionale begrensninger og samle inn kanalpoeng automatisk. Brukere kan laste den ned gjennom Chrome Web Store og Firefox Add-ons.
Forskere hos applikasjonssikkerhetsselskapet Socket fant imidlertid bekymringsfull oppførsel i utvidelsen. Den fanger opp authorization-headeren som brukes av Twitchs nettklient og henter ut brukerens OAuth-token.
Programvaren sender deretter Twitch OAuth-tokener gjennom proxyservere. JeetBot, en kommersiell russiskspråklig strømme- og chatbot-tjeneste, driver disse serverne.
Selskapet tilbyr verktøy for Twitch, Kick og VK Live.
Tokener vises i proxylogger
Nåværende versjoner av utvidelsen omdirigerer forespørsler om Twitch-videospillelister gjennom JeetBots proxyinfrastruktur. Under denne prosessen legger programvaren tokenet til den omdirigerte URL-en som en autentiseringsparameter.
Som et resultat vises påloggingsinformasjonen i klartekst i proxyserverens forespørselslogger. Tjenesteoperatøren kan deretter hente den uten å trenge tilgang til brukerens nettleser.
Denne prosessen skjer hver gang en berørt bruker ser på en Twitch-kanal. Utvidelsen ekskluderer imidlertid ti russiskspråklige kanaler som er oppført direkte i koden.
Å plassere sensitiv påloggingsinformasjon i en URL skaper flere sikkerhetsrisikoer. Servere, overvåkingsverktøy og andre systemer registrerer ofte komplette URL-er i loggene sine.
Derfor kan alle som har tilgang til disse loggene, også få tilgang til tokenene.
Tidligere versjoner brukte tydeligere innsamlingsmetoder
Socket rapporterte at tidligere versjoner av utvidelsen brukte mer direkte mekanismer for å samle inn Twitch OAuth-tokener.
Utvikleren bekreftet den tidligere praksisen i en beskrivelse publisert gjennom Firefox Add-ons. Ifølge en maskinoversettelse opplyste utvikleren at utvidelsen overførte OAuth-tokener til serveren sin.
Meldingen hevdet at det var nødvendig å sende tokenet for å støtte strømming i oppløsningene 1080p og 1440p.
Personvernerklæringen i Chrome Web Store ga imidlertid et annet budskap. Der sto det at utvikleren ikke ville samle inn eller bruke kundedata.
Erklæringen omfattet også salg av informasjon til tredjeparter og overføring av den utenfor utvidelsens kjernefunksjonalitet.
Denne tilsynelatende motsetningen skaper ytterligere bekymring for om brukerne fikk korrekt informasjon om hvordan programvaren håndterte påloggingsinformasjonen deres.
Eksponerte tokener skaper kontorisiko
OAuth-tokener gjør det mulig for applikasjoner å få tilgang til brukerkontoer uten å be om passord gjentatte ganger. De nøyaktige mulighetene avhenger av tillatelsene som ble gitt under autentiseringen.
Hvis noen stjeler et gyldig token, kan de bruke det til å samhandle med den tilknyttede kontoen. I enkelte tilfeller kan angriperen beholde tilgangen til tokenet utløper eller tjenesten ugyldiggjør det.
Å endre passordet til en konto avslutter ikke nødvendigvis alle aktive økter umiddelbart. Derfor bør berørte brukere tilbakekalle eksisterende økter og autentisere seg på nytt.
Hendelsen viser også risikoen ved å dirigere autentisert trafikk gjennom tredjepartssystemer. Selv når en tjeneste ikke aktivt stjeler påloggingsinformasjon, kan usikker logging fortsatt eksponere den.
Utviklere bør fjerne authorization-headere og tokener før forespørsler omdirigeres til ekstern infrastruktur. De bør også unngå å inkludere hemmeligheter i URL-parametere.
Utvidelsen er fortsatt tilgjengelig i offisielle butikker
På publiseringstidspunktet var Twitch Enhanced Viewer | JeetBot fortsatt tilgjengelig gjennom begge de offisielle butikkene for nettleserutvidelser.
Tilstedeværelsen på disse markedsplassene kan ha oppmuntret brukere til å stole på programvaren. Offisiell distribusjon garanterer imidlertid ikke at en utvidelse håndterer sensitiv informasjon på en sikker måte.
Utgiveren hadde ikke svart på spørsmål om funnene da rapporten ble publisert.
Socket anser utvidelsen som en sikkerhetsrisiko. Derfor anbefaler forskerne å fjerne den fra alle berørte nettlesere.
Brukere bør deretter koble fra alle aktive Twitch-økter før de logger inn igjen. Denne handlingen bør ugyldiggjøre alle OAuth-tokener som utvidelsen kan ha overført.
Berørte brukere bør også gjennomgå tilkoblede applikasjoner og fjerne tjenester de ikke lenger kjenner igjen eller bruker.


0 responses to “Twitch-utvidelse eksponerer OAuth-tokener fra 30 000 brukere”