211service.com
Web Security Tool kopieert bewegingen van apps
Tegenwoordig is het voor ontwikkelaars gemakkelijk om volwaardige applicaties te bouwen die in de browser worden uitgevoerd. Deze applicaties beschermen tegen hackers is een andere zaak.

Op veilig spelen : Microsoft-onderzoekers hebben Ripley gebruikt om verschillende webapplicaties, waaronder games, te beveiligen.
Met dit in gedachten hebben wetenschappers van Microsoft Research een nieuwe manier onthuld om complexe webapplicaties te beveiligen door de browser van de gebruiker effectief te klonen en op afstand uit te voeren.
Veel van de nieuwste webapplicaties splitsen hun uitvoerbare code tussen de server en de client. Het probleem is om te detecteren of de code die op de thuis-pc van de gebruiker wordt uitgevoerd, op de een of andere manier is gecompromitteerd. De nieuwe Microsoft-oplossing, bekend als Ripley, werd dinsdag aangekondigd op de Association for Computing Machinery's Computer- en communicatiebeveiligingsconferentie in Chicago.
Ripley gaat verder dan eerdere inspanningen om de integriteit van webapplicaties te beveiligen. Het voert integriteitsbescherming tot het logische uiterste, zegt: Adam Barth , een onderzoeker aan de University of California, Berkeley die gespecialiseerd is in de beveiliging van webapplicaties. Hij was niet betrokken bij het project. In plaats van alleen te verifiëren dat een verzoek van de juiste website kwam, verifieert Ripley dat de acties van de gebruiker daadwerkelijk zijn toegestaan door de gebruikersinterface van de applicatie.
Ripley voorkomt dat een kwaadwillende gebruiker of externe hacker het gedrag van code die in een webbrowser wordt uitgevoerd, verandert door een exacte kopie van de rekenomgeving te maken en die kopie op de server uit te voeren. Ripley stuurt vervolgens alle acties van de gebruiker, inclusief muisklikken, toetsaanslagen en andere invoer, in een gecomprimeerde gebeurtenisstroom van de client naar de server. Deze stream wordt door de gekloonde clienttoepassing op de server geleid en het gedrag van die virtuele dubbelganger wordt vergeleken met dat van de toepassing die thuis in de browser van de gebruiker draait. Als er discrepanties zijn, verbreekt Ripley de verbinding met de client.
Je kunt niets vertrouwen wat er in de cliënt gebeurt, zegt Ben Livshits , de hoofdonderzoeker bij Microsoft Research over het Ripley-project. Het is eigenlijk de duivel in de browser vanuit het oogpunt van de ontwikkelaar.
Ripley is onzichtbaar voor de eindgebruiker en heeft geen invloed op de normale werking van een webapplicatie. Het zijn alleen de kwaadwillenden die zich zorgen hoeven te maken over wat er gebeurt als ze een resultaat indienen, zegt Livshits.
Een van de uitdagingen die Livshits en zijn medewerker bij Microsoft, Emre Kiciman , waarmee we bij het bouwen van Ripley geconfronteerd werden, was hoe je een kopie van de hele clientomgeving kon maken - de webtoepassing en de software-engine die erop draait - die klein genoeg was om praktisch te zijn voor een webserver met grote volumes die verzoeken van honderden of duizenden gebruikers op een keer.
Op de server, zei Livshits, als je de replica in een browser moet uitvoeren, zou je een geheugenvoetafdruk van 50 tot 60 megabyte per browserinstantie oplopen. De oplossing die hij en Kiciman bedachten, was om in plaats daarvan een headless browser te gebruiken - een emulator die alleen de functies simuleert van een webbrowser die essentieel is voor Ripley. Dit verminderde de geheugenvoetafdruk van de gekloonde browser en applicatie tot tussen de anderhalve megabyte per applicatie.
Door de server-side kloon van de browsergebaseerde applicatie van de gebruiker te verkleinen, hebben Livshits en Kiciman, samen met collega's van Cornell University, NY en het Indian Institute of Technology, Delhi, de prestatieoverhead van Ripley nog verder verlaagd. Van de vijf experimentele applicaties, waaronder een winkelwagentje, verschillende games en een blog-engine, was de gemiddelde latentietoename als gevolg van de toegenomen inspanningen van de CPU van de server ongeveer één milliseconde.
In sommige gevallen verbeterde Ripley zelfs de prestaties van webapplicaties, omdat de server-side kloon van de client-applicatie is herschreven in .NET, een programmeertaal die 10 tot 100 keer sneller is dan het JavaScript dat op de client-side draait. Soms stelt dit Ripley in staat om te voorspellen wat het volgende applicatieverzoek aan de clientzijde zal zijn voordat het zelfs door de klant is gedaan, en preventief gegevens naar de klant te pushen.
Dit is een magische situatie, als je erover nadenkt, zegt Livshits. Het leidt tot aanroepen van externe procedures zonder latentie.
Op dit moment zouden ontwikkelaars die Ripley willen gebruiken om hun webapplicaties te beveiligen, de ideeën in de paper gepresenteerd op Ripley opnieuw moeten implementeren in hun eigen favoriete webapplicatieframework. Uiteindelijk denken Livshits en Kiciman echter dat Ripley kan helpen een essentieel onderdeel van de beveiliging van webapplicaties te democratiseren, waardoor het binnen het bereik van niet-deskundige ontwikkelaars komt.
Tot nu toe denk ik dat mensen deze problemen handmatig hebben aangepakt, zegt Kiciman. Je krijgt experts die erin duiken en hun applicaties afstemmen op deze uitdagingen, maar dat is niet erg schaalbaar en niet erg wendbaar als je wijzigingen moet aanbrengen. Wat we proberen te doen, is het webontwikkelingsplatform zover te krijgen dat iedereen kan profiteren van de soorten technologie die deze experts gebruiken.
Barth van UC Berkeley merkt op dat Ripley deel uitmaakt van een grotere trend in oplossingen die de integriteit van client-side code beschermen door ervoor te zorgen dat er geen ongeoorloofd gedrag kan plaatsvinden. Ik zie Ripley meer als een gedachte-experiment: wat zou er gebeuren als de server alles zou valideren? hij zegt. Het werk suggereert dat beveiliging er baat bij zou hebben als we meer zouden valideren dan we nu valideren.