Web 2.0, en dan met name het gebruik van de Ajax technologie, houdt een beveiligingsrisico in. Dat vertelde Caleb Sima van SPI Dynamics gisteren op de jaarlijkse conferentie van beveiliger RSA in Londen.
"Wat we zien met Web 2.0 is dat programmeercode die voorheen op de server bleef in toenemende mate verhuist naar de browser. Daardoor kun je makkelijker gebruikersgegevens onderscheppen," zegt Sima, die elf jaar in de IT beveiliging werkzaam is.
De belangstelling voor technieken als Ajax is begrijpelijk: ze zorgen ervoor dat het web gebruikersvriendelijker wordt. "Je hoeft niet elke keer een webpagina te herladen als je iets wilt veranderen," zegt Sima. Maar de consequentie is wel dat gegevens die voorheen veilig op de server werden verwerkt in principe in de browser beschikbaar zijn.
Incidenten
En steeds vaker gaat het mis, waarschuwt Sima. Hij wees in Londen op een inmiddels legendarisch incident met MySpace uit 2005, toen een gebruiker met wat simpele regels Javascript onbedoeld een webworm had gecreëerd. Die forceerde andere gebruikers om toegevoegd te worden aan zijn vriendenlijst. Binnen 24 uur had deze gebruiker – beter bekend als Samy – meer dan 1 miljoen vrienden gemaakt. "Samy werd compleet verrast door wat hij had gedaan," zegt Sima. "Het veroorzaakte zoveel dataverkeer dat de servers van MySpace overbelast raakten."
Toegegeven: MySpace had wel een poging ondernomen om het gebruik van Javascript te beperken, maar de beveiliging was veel te makkelijk te omzeilen. "Samy had er geen kwade bedoelingen mee, maar in andere handen groeien dit soort grappen uit tot serieuze bedreigingen."
Sima wijst ook op een ander incident met een registratieformulier van MacWorld, de jaarlijkse vakbeurs voor Mac gebruikers in San Francisco. "Daar kon je begin dit jaar in ruil voor een couponcode gratis kaartjes krijgen. De bescherming van die gegevens was veel te zwak, en iemand wist zo de beste VIP kaartjes te bemachtigen ter waarde van 1600 dollar, plus toegang tot de exclusieve feestjes. Hij was wel zo eerlijk om het de organisatoren te melden."
Sima waarschuwt ook voor Facebook, de sociale site waar gebruikers eigen applicaties kunnen laten draaien. User generated content houdt steeds meer een gevaar in, waarschuwt Sima. "Hoe weet je dat je die applicaties kunt vertrouwen?"
Wachtwoorden
>Sima heeft al voorbeelden gezien waarbij hackers de controle over de browser geheel overnemen. "En dan bepalen zij welke websites je ziet en kunnen ze met gemak wachtwoorden achterhalen, Zelfs het sluiten en weer opstarten van de browser zal vaak niet helpen."
Volgens Sima is er geen remedie tegen deze aanvallen, behalve dat programmeurs goed naar hun code moeten kijken en die moeten laten valideren tegen zwakheden. "In elk geval dienen webexploitanten en programmeurs zich te realiseren dat ze met Web 2.0 extra risico lopen."
Ik zie hier geen enkel nieuws in. Deze meneer kan ons leuk aan een incident uit 2005 herinneren, maar hij heeft inhoudelijk niets te melden en loopt achter de feiten aan.
Wat is “Web 2.0 is gevaarlijk” een ontzettend populaire uitspraak. Web 2.0 is absoluut niet gevaarlijk. Het enige dat in deze context gevaarlijk is, is slecht programmeren.
Helemaal met Hugo hierboven eens. AJAX is niet per definitie gevaarlijk, zoals hier gesteld word. Echter een slechte implementatie KAN het gevaarlijk maken, net zoals bij elk andere techniek.
Wat de reacties hierboven aannemen is dat iedereen precies weet waar dit artikel exact over gaat. Terwijl er veel lezers zijn (nee, ik hoor daar niet bij) die geen idee hebben wat AJAX allemaal behelst anders dan snel(ler) reagerende invoervelden en draaiende objecten, etc. Alleen de opmerking in dit artikel dat er meer aandacht moet worden geschonken aan de hackerbestendigheid van code die voorheen op een server draaide en nu op de client maakt dit een nuttig artikel.
Web 2.0 is niet het enige wat gevaarlijk is 😉
Er word hier gepraat over een AJAX (programmeer) TECHNIEK, maar wat nog veel grotere bedreiging vormt, is het feit dat internet bijna letterlijk – als een digitaal zenuwstelsel – door het dagelijkse leven van miljoenen mensen en bedrijven loopt. Heb je daar al eens bij stil gestaan??
Deze Fuzzy techniek laat maar weer eens zien dat je als web-developmentteam altijd bijvoorbeeld de volgende web-forminput check moet inbouwen:.
If Parameter <> [een van de door mij gemaakte mogelijkheden]
Then
– Registreer ip adres
– Clear webserver connection
– Raise security alert
– Exit script
End.
Op deze wijze komen dit soort gedachten AND/OR programmeer-blunders of backdoors eerder boven water.
Herinnerend aan Murphy’s Law “If something can go wrong it wil go wrong”..
So beat Murphy at your first line of code. Think ahead of your attacker web-coding-masters 😉 Tijd om weer eens terug te gaan naar rauwe html, en cgi scripts die je zelf 100 procent hebt geschreven.
Er wordt tegenwoordig veel te veel vertrouwd op de zogenaamde ready made componenten van een fabrikant. Wie zegt dat in die kant-en-klare componenten geen BACKDOOR geprogrammeerd zit???
Zijn we allemaal de boodschap van de film “The Net” alweer vergeten, collega’s? The treat is out their, on the internet and is it real, very real..
Misschien een leuke nice-markt voor testing bedrijven.
Assume nothing, en reverse engineer ieder stuk (web) software, totdat je helemaal 100 procent zeker weet hoe het werkt :-).
Zodat “Het web versie x.x” jouw bedrijf niet uit business brengt.
Web enabled driven business could kill your company at the speed op light
Het is teleurstellend dat deze discussies zich altijd weer toespitsen op de beveiliging van de programma’s terwijl het gaat over de beveiliging van de informatie. Kennis van Informatie-Theorie is daarbij onontbeerlijk. Op de URL
http://picasaweb.google.com/freemovequantumexchange/InformationTheoreticInequalityProver is een korte introductie te vinden op dit gebied, inclusief geautomatiseerde hulpmiddelen.