Beveiligingsonderzoekers van Secure Annex hebben de groeiende populariteit opgemerkt van een nieuwe methode voor het monetariseren van browserextensies, waarbij gebruikers van de extensies een gedistribueerd netwerk vormen dat gebruikt wordt voor het scrapen (indexeren van webinhoud). De systemen van de gebruikers functioneren als webbots en proxies voor het downloaden van webinhoud — de geïnstalleerde browserextensie ontvangt instructies voor het indexeren van websites van een externe server, waarna deze in een aparte verborgen iframe de opgevraagde inhoud laadt en de verkregen gegevens doorgeeft aan een externe dienst. In de catalogi van Chrome, Firefox en Edge is het gebruik van deze monetisatiemethode vastgesteld in 245 extensies, die samen goed zijn voor 909.000 installaties.
Het werk wordt georganiseerd door het insluiten van de open JavaScript-bibliotheek mellowtel.js in de code van de browserextensies, die wordt geleverd onder de LGPLv3-licentie. De bibliotheek wordt ontwikkeld door het Mellowtel-project, dat een nieuw monetisatieplatform promoot dat, naast browserextensies, ook kan worden toegepast in programma's op basis van de Flutter- en Electron-frameworks. Het belangrijkste idee van het platform is dat ontwikkelaars van browserextensies en applicaties geld kunnen verdienen zonder advertenties of twijfelachtige methoden zoals het verkopen van gegevens die de privacy van gebruikers ondermijnen, maar door taken voor het indexeren van webinhoud uit te voeren voor de training van AI-systemen.
De behoefte van AI-bedrijven aan gegevens voor het trainen van modellen heeft geleid tot de opkomst van talloze bots die websites indexeren zonder een redelijke beperking van de intensiteit van verzoeken en de regels voor indexering in robots.txt negeren. Deze bots veroorzaken een enorme parasitaire belasting op servers, verstoren de normale werking van systemen en nemen tijd van beheerders in beslag, en worden de laatste tijd actief geblokkeerd (bijvoorbeeld heeft het content delivery netwerk Cloudflare een optie geïmplementeerd voor het standaard blokkeren van dergelijke bots).
AI-bedrijven zijn bereid te betalen voor indexering en het platform Mellowtel biedt de mogelijkheid om aan deze behoefte te voldoen door gewone gebruikers te betrekken bij het verzamelen van gegevens van websites. Het platform geeft 55% van de opbrengsten van de samenwerking met AI-bedrijven aan de eigenaren van extensies. Het project is volledig legaal en benadrukt dat deelname aan scraping vrijwillig moet zijn en alleen kan worden geactiveerd na expliciete toestemming van de gebruiker. Het is de bedoeling dat de gebruiker als blijk van waardering voor de ontwikkelaars van de extensie de scraping-modus kan inschakelen en hen indirect financiële steun kan bieden.
Het probleem is dat niet alle ontwikkelaars van extensies bereid zijn om eerlijk en transparant te werken. Sommige extensies proberen verborgen monetisatie via Mellowtel aan de gebruiker op te leggen, in strijd met de regels van de dienst, wat ertoe leidt dat gebruikers zonder expliciete toestemming deelnemen aan een gedistribueerd netwerk voor het downloaden van gegevens van websites. Van de 45 extensies voor Chrome die Mellowtel gebruiken, zijn er al 12 geblokkeerd door Google vanwege kwaadaardige activiteiten. In de Microsoft-catalogus zijn van de 129 extensies er 8 geblokkeerd, en in de Mozilla-catalogus zijn van de 71 extensies er 2 geblokkeerd. De redenen voor verwijdering worden niet gedetailleerd, maar het is mogelijk dat onjuist gebruik van Mellowtel de oorzaak is.
De ontwikkelaar van Mellowtel heeft verklaard dat om het probleem van mogelijke verborgen scraping-opname aan te pakken, de dienst overgaat op verplichte controle van alle extensies die Mellowtel gebruiken, om te garanderen dat scraping standaard is uitgeschakeld (activering alleen na expliciete toestemming van de gebruiker) en dat er een zichtbare knop is om het uit te schakelen. Verzoeken om opdrachten van extensies die de controle niet hebben doorstaan, worden in quarantaine geplaatst en genegeerd.
Tijdens het gebruik van de extensie maken de onderdelen die gebruikmaken van de Mellowtel-bibliotheek een websocketverbinding met een externe server die in de AWS-cloud is geplaatst, waarlangs informatie over de beschikbaarheid van de gebruiker, het land, de bandbreedte van de verbinding en de activering van de ondersteuning voor scraping door de gebruiker wordt verzonden. Periodiek worden er heartbeat-verzoeken via de verbinding verzonden om de beschikbaarheid van de cliënt te controleren. Wanneer er verzoeken voor het laden van inhoud op de door de gebruiker bezochte pagina's verschijnen, wordt er een verborgen iframe ingevoegd vanuit waar de scraping plaatsvindt.
Voor het laden van externe pagina's vanuit de iframe die wordt ingevoegd tijdens het bekijken van andere sites, omzeilt de bibliotheek tijdelijk de door de browser geboden bescherming tegen het laden van externe inhoud, door de HTTP-headers Content-Security-Policy en X-Frame-Options te verwijderen en deze terug te geven nadat de gewenste pagina is geladen. Dit verwijderen gebeurt door aanpassing van netwerkverzoeken met behulp van de API declarativeNetRequest (voor toegang tot deze API vraagt de extensie om aparte bevoegdheden). Het tijdelijk uitschakelen van de headers Content-Security-Policy en X-Frame-Options heeft een negatieve impact op de veiligheid, aangezien de standaardbeveiliging tegen aanvallen met cross-site scripting (XSS) tijdelijk wordt verwijderd.
Het Mellowtel-platform is aangesloten bij het bedrijf Olostep, dat een API voor scraping aanbiedt die de bescherming tegen bots kan omzeilen en tegelijkertijd tot 100.000 verzoeken per minuut kan verwerken. Een dergelijke activiteit van de service, toegepast in de context van één website, kan worden vergeleken met het uitvoeren van een gedistribueerde DoS-aanval. De service kan ook gebruikers potentieel als proxy gebruiken voor het extraheren van inhoud van privé-websites die alleen toegankelijk zijn via subnetten waar de gebruiker toegang toe heeft via VPN.
Bron: opennet.ru
