Twitch beperkt toegang vanaf alternatieve browsers om bots te stoppen

Streamingdienst Twitch beperkt de toegang vanaf andere browsers dan Microsoft Edge, Google Chrome en Mozilla Firefox. Dat doet het Amazon-dochterbedrijf om bots te kunnen opsporen en blokkeren. Gebruikers van andere browsers kunnen mogelijk niet inloggen.

Twitch zegt dat gebruikers die problemen hebben met inloggen, het beste Edge, Firefox of Chrome kunnen gebruiken, terwijl een topman van de dienst aanvult dat het gaat om een tijdelijke maatregel. Twitch kreeg te maken met kwaadwillenden die binnen korte tijd veel accounts kunnen aanmaken om zo 'hate raids' te beginnen. Daarbij spammen bots de chat bij een stream met haatberichten.

Het aanmaken van die accounts gebeurt met alternatieve browsers en dus probeert Twitch het probleem aan te pakken door die browsers te blokkeren en een voor een weer toe te laten. Het is onbekend hoe lang dat proces zal duren.

Aantal nieuw gemaakte Twitch-accounts, hate raids, september 2022
Aantal nieuw gemaakte Twitch-accounts, hate raids, september 2022

Door Arnoud Wokke

Redacteur Tweakers

29-09-2022 • 14:06

68

Reacties (68)

68
66
38
1
0
23
Wijzig sortering
Dit lijkt me kansloos tegen daadwerkelijk malafide partijen (die kunnen zich gewoon voordoen als de ondersteunde browsers), en slecht voor onschuldige gebruikers van browsers die eerlijk zijn over hun identiteit.
Wat je vaak ziet met dit soort aanvallen is dat een tijdelijke protectie best goed werkt, tot inderdaad de aanvallers hun technieken aanpassen. Maar zelfs dan moeten die dat wel heel goed doen, en gelukkig ontbreekt de kennis daar vaak voor bij die aanvallers/botters.

Bij Tweakers zelf hebben we er ook wel eens last van, dat is dan niet perse gericht op het aanmaken van accounts maar eerder op het hacken van accounts, of het leegtrekken van de pricewatch (of al het nieuws, of alle reviews, of alle gallery-pagina's etc). Hiervoor controleren wij ook de User-Agent-header die een browser mee stuurt, en wat je vaak bij dit soort aanvallers ziet is dat ze wel willekeurige headers meesturen maar heel erg vaak veel te oude headers. Een script dat in 2020 geschreven is en toen een moderne user-agent header gebruikte is in 2022 makkelijk op te sporen; Om maar een recent voorbeeld te noemen; we merkten bijna 400.000 views in een week tijd op die zogenaamd door een 'Chrome 87' browser werden gedaan.

De aanvallers gebruiken gelukkig vaak scripts en programma's van anderen en missen de kennis om ze bij te houden, en omdat de browsersmakers steeds weer nieuwe versies uitbrengen is het detecteren van kan het vaak wel zijn dat een script tijdelijk ondetecteerbaar is, maar ook dat hij, mocht het langer gebruikt worden, vaak binnen een half jaar zeer makkelijk detecteerbaar is.

En ook al zetten ze wel de juiste user-agent headers, gebruiken ze residential proxies met voor elke request een ander ip, ondersteunen ze javascript en cookies, dan nog zijn ze vaak wel op te sporen omdat er zaken ontbreken die moderne browsers wel gewoon ondersteunen of die moderne browsers net iets anders doen. Om maar weer een recent voorbeeld te noemen; ik kwam er laatst achter dat een bot de Accept-Language-header altijd vulde met 'en', terwijl een echte browser daar veel meer in zet; bijvoorbeeld 'en-US,en;q=0.5'. Als je dat combineert met nog wat andere zaken kun je vrij zeker ervan zijn dat het een bot is.

[Reactie gewijzigd door Kees op 22 juli 2024 13:55]

Wanneer je een laagdrempelige robot programma gebruikt als Microsoft Power Automate, die standaard ondersteuning heeft voor Microsoft Edge, Internet Explorer, Google Chrome en Mozilla Firefox,
dan kan je altijd met up-to-date browser data scrapen of geautomatiseerd kattekwaad uithalen zonder een vage browser te gebruiken :)
Dat kost geld, heeft een abuse afdeling, kan niet via residential proxies draaien als ik dat snel zie en is dus waarschijnlijk eenvoudig te blocken en draait waarschijnlijk niet goed op een low-cost linux vm en zal zich hoogstwaarschijnlijk wel op een of andere manier identificeren als automate programma dat de gebruiker niet eenvoudig uit kan zetten.
De desktop variant is gratis, sinds Microsoft het heeft overgenomen. Sterker nog het is onderdeel van Windows 11. Je kan hiermee taken die handmatig op je computer doet automatiseren.
Ik begrijp zelfs dat je jouw handelingen kan laten opnemen (zoals een macro in Word/Excel) en later aanpassen. Zie voorbeeld in hier: https://www.youtube.com/watch?v=DgBZiBIgh3w&t=2s
Gewoon met Selenium of 1 van de 100 andere browser automation programmas inderdaad.

Of gewoon user agent faken? Ik ben benieuwd hoe ze browser herkenning uberhaupt willen doen

[Reactie gewijzigd door Gamebuster op 22 juli 2024 13:55]

Dat is dus het ding, jij en ik weten dit maar het gros van de spammers zijn gewoon een stel tieners die een scripje van internet plukken, in elkaar zetten of gewoon ontbreekt aan technische kennis.

Uiteraard kan je gewoon een headless browser gebruiken of de HTTP requests faken maar beide zijn in de meeste gevallen wel eenvoudig te detecteren.

Gewone HTTP requests dan laden ze vaak niet alle resources in omdat het sneller is, dat kan je eenvoudig server sided tracken en het ip blokkeren om in te loggen als het verdacht lijkt. In geval van twitch is het nog makkelijker omdat ze altijd graphql calls lijken te doen op pagina's die je laad.

Voor headless browsers is het iets lastiger maar zijn veel manieren om bepaalde zaken te detecteren. Draai je chrome headless dan zit HeadlessChrome in de user-agent, die kan je uiteraard aanpassen maar met javascript kan je alsnog van alles controleren in de omgeving en terug rapporteren. Al wat oud en wellicht dat niet alles meer werkt maar dit geeft wel een beeld van hoe dat soort detectie zaken werken:

Als iemand echt de kennis heeft om een normale user correct te simuleren dan komt het er ook wel doorheen alleen lijkt het me logischer dat mensen op dat niveau wel wat anders te doen hebben dan hate messages te spammen.
Dat is dus het ding, jij en ik weten dit maar het gros van de spammers zijn gewoon een stel tieners die een scripje van internet plukken, in elkaar zetten of gewoon ontbreekt aan technische kennis.
dat script van internet krijgt een update - klaar?
javascript, TLS hello packet en headers order meestal
Hallo, ik ben een bot, oude headers, steeds veranderend IP (tevens de reden dat ik zo min mogelijk inlog om die meen je dat nou mailtjes van inlog op ander IP niet te hoeven ontvangen van Tweakers, want die hebben hier geen betekenis).

Genoodzaakt een userAgent switch add-on te gebruiken omdat voor sommige websites van bedrijven de wereld voorbij Windows gebruikers ophoud te bestaan, en de toegang simpelweg wordt ontzegt als er zoiets als Linux in de headers staat.
Meestal blijft die dan ook op zo'n versie staan totdat er een site begint te janken dat er een te oude browser versie lijkt te zijn gebruikt.

Ik maak nog geen gebruik van applicaties als Portmaster voor een SPN verbinding(voor elke connectie zoals je omschrijft een andere exit, dit à la Tor), maar dat duurt met de huidige gang van zaken van het rotte web niet lang meer, en zou de juistheid van conclusie na omschreven analyse van tafel kunnen vegen.

Hoepels om door te manoeuvreren worden steeds gebruiksvriendelijker.

EOT
De meeste bot herkenning doen wij niet om gebruikers lastig te vallen, maar om misbruik te detecteren en aan te pakken, en zelfs bot verkeer vinden wij geen enkel probleem als je het niet doet om onze site te scrapen zonder toestemming.

En je bent geen bot, je bent een echte browser met een andere user-agent, daar zit vaak best wel een verschil in hoor ;)

[Reactie gewijzigd door Kees op 22 juli 2024 13:55]

beep boobs beep

Op Tweakers heb ik er wel last van, een nog niet op één hand getelde pricewatch query's met enkel EAN code voor een exact resultaat maakt mij verdacht van efficient website gebruik, en prompt een jij bent vast en zeker een bot reCapcha die ik dan niet op ga lossen(een paar hendels over halen is dan makkelijker dan mij te onderwerpen aan het gedrocht van google.)
p.s. waarom was dit geen hCapcha, daar g analytics wel de deur is gewezen?

EOT
Gezien het een tijdelijke maatregel is, heeft het op korte termijn wel degelijk effect. De malafide gebruikers/bots werken nu dus niet en moeten aangepast worden om hier doorheen te komen.
Twitch zal vast wel een plan opgesteld hebben wat ze te weten willen komen door deze actie waardoor ze in de toekomst de malafide praktijken beter kunnen weren.

De hoeveelheid onschuldige gebruikers die hier last van ondervinden zal een minimaal percentage zijn van alle gebruikers. Ook te zien in het gelinkte Twitter bericht waar meerdere bekende browsers al reageren met aanpassingen om alles goed te laten werken (Opera bijvoorbeeld).
Bij mij werkt alles gewoon nog hoor:https://ibb.co/VYvd4Ms
Veel van deze aanvallen gebeurt met software dat verkocht wordt en niet door mensen die zelf de software schrijven, in dat geval werken tijdelijke oplossingen zoals deze vrij effectief.

Software kan aangepast worden maar dat kost tijd en geld, oudere producten krijgen slechte reviews etc, op die manier kan het voor developers aardig vervelend worden om uptime en support te garanderen en komt het vaak voor dat ze er helemaal mee stoppen en iets anders zoeken.

Het is uiteindelijk een kat en muis spel, en als platform verlies je in theorie altijd, het enige wat je echt kan doen is het super frustrerend en duur maken met zo'n min mogelijk effect op de legitieme gebruiker.
Er zijn genoeg alternatieve browsers die op de kernen van bijvoorbeeld Firefox draaien, hoe willen ze dat gaan controleren dan?
Ik gok dat Twitch echt wel weet dat het, zoals zoveel dingen, gaat om een kat-en-muis-spel. Blijkbaar zien zij dat er momenteel erg veel bot-accounts worden aangemaakt met browsers die zich niet identificeren als Edge, Chrome of Firefox en die gaan ze nu tijdelijk blokkeren.

De mensen die de scripts schrijven voor die bots moeten nu aan de slag om de blokkade te omzeilen. Daarna zal Twitch de tijdelijke blokkade opheffen en allicht een nieuwe maatregel (of meerdere) introduceren.
Blijkbaar zien zij dat er momenteel erg veel bot-accounts worden aangemaakt met browsers die zich niet identificeren als Edge, Chrome of Firefox en die gaan ze nu tijdelijk blokkeren.
Het is nou niet bepaald moeilijk om je te laten identificeren met een andere browser of zelfs andere hardware/OS.
Het aanmaken van die accounts gebeurt met alternatieve browsers en dus probeert Twitch het probleem aan te pakken door die browsers te blokkeren en een voor een weer toe te laten.
Dit klinkt alsof ze de user-agent controleren, die je zelf gemakkelijk kan faken, zeker als script.

Dusja, kat-en-muis, maar peanuts voor bots.

[Reactie gewijzigd door Christoxz op 22 juli 2024 13:55]

Ja, maar het moet wel "even" gebeuren. En hoe vaker je ze dwarsboomt, hoe groter de kans dat het aantal scripters minder wordt. Sommige mensen houden enorm van zo'n kat-en-muis-spel en zullen altijd op zoek gaan naar manieren om bots aan te maken. Anderen zullen er snel flauw van raken dat ze "nu alweer" hun script moeten aanpassen.

Natuurlijk is dit geen goede structurele oplossing, maar ik denk dat dit meer moet worden gezien als een ontmoedigingsbeleid.

[Reactie gewijzigd door Kjoe_Ljan op 22 juli 2024 13:55]

Die mensen die er moe van worden zullen eerder developers zijn die gewoon een leuke tool willen maken en niet zozeer geld willen verdienen aan Twitch maar de ervaring van de eindgebruiker verbeteren.
En aan de andere kant de doorzetter die waarschijnlijk malafide plannen heeft voor persoonlijk gewin.

Beetje 2 extreme uitersten, maar netto lijkt deze verandering mij niet positief.

[Reactie gewijzigd door Verwijderd op 22 juli 2024 13:55]

Oftewel de kwaden doen gewoon wat ze al deden en de goeden hebben er last van.
Of ze gebruiken de originele firefox met selenium
Is dit niet een beetje het bevorderen van een monopolie?

Met dit soort praktijken druk je toch nieuwe/opkomende browsers het hoofd in voordat ze überhaupt de kans krijgen groot te worden?

Hoop in ieder geval dat anderen deze trend niet gaan volgen.
Twitch is een bedrijf die een dienst aanbiedt in de entertainment branche. Als zij browsers willen weren, dan mogen zij browsers weren. Je ondersteunt ook geen IE7 meer, of Netscape.

Nou is Twitch groot, maar geen overheidsinstelling of iets dergelijks. Ik vind het een vreemde actie, maar in basis mogen ze dit gewoon doen.
Dat je oudere software gaat blokkeren is tot daar aan toe maar wat moet Safari doen dan? Hiermee blokkeren ze gelijk een heel platform.
Je kan dan al gauw aan komen met concurrentie vervalsing. Of is de insteek dat alle bots van Mac gebruikers komen?
Je reactie komt over alsof je denkt dat de halve wereld Safari gebruikt en alsof iedereen op Apple producten alleen Safari gebruikt terwijl er zat mensen zijn die Chrome gebruiken i.p.v. Safari. Het "hele platform" is een minimaal percentage van de totale gebruikers en er is geen enkel probleem om dit dus te doen.
Afhankelijk van welke onderzoekspartij je raadpleegt is het aandeel Safari gebruikers minder dan 4%.

Van concurrentievervalsing is al helemaal geen sprake en heeft er niets mee te maken. Twitch mag zelf weten wie ze toe laten op de site en op welke manier.
Je reactie komt over alsof je denkt dat de halve wereld Safari gebruikt en alsof iedereen op Apple producten alleen Safari gebruikt terwijl er zat mensen zijn die Chrome gebruiken i.p.v. Safari. Het "hele platform" is een minimaal percentage van de totale gebruikers en er is geen enkel probleem om dit dus te doen.
Markt aandeel acht ik een nutteloze cijfer gezien het hier gaat om "beveiliging/bots"
Tevens is het markt aandeel van Opera in zijn geheel wat groter.
Het hele platform doelt dus ook op de Twitch iOS app welke Safari gebruikt als basis.
Als het niet een probleem is dan waarom niet toevoegen aan de lijst van "veilige" browsers?
Ze zijn al bekend met Opera vanwege de app dus het is niet een kosten/baten probleem.
Hiermee dwing je dus elke Apple gebruiker Chrome te gebruiken. Vandaar dus ook concurrentie vervalsing.
Op iOS kun je geen andere browser gebuiken dan Safari. Chrome is daar Safari met een Chromejasje (UI).
Ik denk niet dat je het simpelweg niet meer ondersteunen van een zeer oude browser welke niet meer aan de standaarden voldoet, kunt vergelijken met het actief blokkeren van alternatieven welke dit wel doen.

Dit is gewoon een kromme vergelijking. Je vergelijkt letterlijk geld steken in iets om het te laten werken voor iets wat uit de tijd is, tegenover geld steken in iets om bepaalde dingen bewust niet te laten werken.

En ja, dit mogen ze doen en zelf weten (heb ik ergens gezegd van niet?) maar dan mag ik nog wel mijn angst uiten en hopen dat dit geen trend gaat worden, toch?

[Reactie gewijzigd door NoobishPro op 22 juli 2024 13:55]

Bij veel diensten van de overheid moet je bijna verplicht klant zijn bij Google of Apple om in te kunnen loggen via een app.
Is dit niet een beetje het bevorderen van een monopolie?
Ja en dat mag ook gewoon, behalve door de partijen van die browsers (met een monopolie) zelf natuurlijk.
Compenseren ze content creators (partners en affilates) dan voor een percentage of is dat percentage zo laag dat de invloed op kijkersaantallen nihil is?
Voor wat?

Het alternatief is de kosten van het weren en achteraf verwijderen van bots/berichten dmv andere browser doorbelasten aan streamers.

[Reactie gewijzigd door watercoolertje op 22 juli 2024 13:55]

Als je verschillende "market share" bedrijven vraagt zal het percentage van legitieme gebruikers dat hiermee uitgesloten wordt minder dan 5% zijn. Uiteraard zegt dat niets over de gemiddelde bezoeker van Twitch, maar ik denk dat ze daar wel over nagedacht hebben.

Wat betreft compenseren, je hebt als content creator helemaal nergens recht op en je mag blij zijn dat je überhaupt betaald wordt voor iets. De meeste content creators zullen dit soort dingen gewoon in hun contract hebben staan (als ze die al hebben), dat dit soort dingen mogen gebeuren.
Los daarvan ben ik zelf van mening dat compensatie voor zoiets verwachten echt nergens op slaat en niet quantificeerbaar is.
Ik vind dit een bijzondere stap. Twitch beperkt hiermee dus de keuzevrijheid van hun gebruikers.
Zo raar is de maatregel niet. Security gaat vaak ten koste van usability en/of privacy. In dit huidige geval gaat het slechts om de usability (keuzevrijheid) van een beperkte groep legitieme gebruikers. Een alternatief is om het ten koste te laten gaan van privacy (telefoonnr en legitimatie checks etc), maar dan tref je meteen alle legitieme gebruikers.
Precies, er zijn toch wel andere manieren om dit aan te pakken lijkt me.
Hoe controleren ze dat dan?
User agent lijkt me niet onspoofbaar.

Overigens zou ik me ook niet zomaar browsergebruik laten voorschrijven.
Ik zou ze even lekker het heen en weer laten krijgen als ze me tegenhouden vanwege [insert browser].
als het niet via de user agent is dan neem ik aan dat ze de tls hello packet gebruiken en de header order, of mischien andere javascript functies die iets anders returnen als je chrome of firefox draait

[Reactie gewijzigd door Wolfofficial op 22 juli 2024 13:55]

Geen Safari? Best een grote groep die je dan buitensluit.
Als dit op basis van een user-agent header gebeurd is het wel een beetje dom. Het is makkelijk te omzeilen door de user-agent header aan te passen in je spam-bot-client. Inderdaad tijdelijke maatregel.
Conclusie: voor je spambot moet je dus je UserAgent aanpassen zodat je een populaire browser matcht.
Best een kansloze actie, als je het mij vraagt.
Nee hoor. Die bots en scripts moeten weer bijgewerkt worden door de aanvallers en dat kost tijd. Velen van hen missen de kennis hiervoor want ze hergebruiken tools die door een ander gemaakt zijn waardoor het nog meer tijd kost. Het is geen langdurige oplossing maar kan heel effectief zijn voor het tijdelijk stoppen van een gerichte aanval zoals je in de grafiek ziet. Lees ook deze reactie: Kees in 'Twitch beperkt toegang vanaf alternatieve browsers om bots te stoppen'

Vergeet ook niet dat je naast de User-Agent ook andere kenmerken hebt waaraan je browsers kunt herkennen en het aannemelijk is dat Twitch op meer dan één kenmerk checkt.

[Reactie gewijzigd door Yggdrasil op 22 juli 2024 13:55]

Misschien kom ik wat kennis te kort, maar dit klinkt als een hele rare en moeilijk te controleren maatregel. Sommige browsers hebben de optie om zich voor te doen als andere browser (i.v.m. website testen bijvoorbeeld), en veel van die alternatieve browsers gebruiken de engine van bestaande grotere browsermakers?

Op dit item kan niet meer gereageerd worden.