Artikel
Introductie Web 2.0
Mauriche Kroos en Nils van der Laan
Sinds het ontstaan in de jaren 60 heeft het Internet een meer dan voorspoedige ontwikkeling doorgemaakt. De introductie van het World Wide Web was daarbij een bepalende factor. Inmiddels is het World Wide Web zo uitgegroeid, dat niet meer de technologie, maar het feitelijke gebruik leidend is. Dit artikel geeft een indruk van de nieuwe ontwikkelingen die bekend staan onder de noemer ‘Web 2.0’.
Auteurs Ing. M.R. (Mauriche) Kroos RE CISSP is Information Security Manager bij
Het World Wide Web, in 1989 bedacht door Tim BernersLee en op het Internet geïntroduceerd op 6 augustus 1991. Oorspronkelijk opgezet voor het uitwisselen van informatie tussen universiteiten en onderzoeksinstellingen en in eerste instantie vooral een bron van statische informatie. Gebruikers kregen gaandeweg echter steeds meer invloed op wat zij te zien kregen en hoe zij dit wilden zien. Wat lange tijd ongewijzigd bleef, was dat het vooral om éénrichtingverkeer ging. Er bestond een strikte scheiding tussen publicisten en gebruikers van informatie. De meest recente ontwikkeling is echter dat bezoekers van sites niet langer alleen informatie consumeren, maar zelf ook informatie toevoegen. Deze nieuwe fase in de ontwikkeling van het Web wordt, samen met een aantal sociale en technologische aspecten die aan deze ontwikkeling verbonden zijn, veelal aangeduid met de term ‘Web 2.0’. Twee-punt-nul? De term Web 2.0 verwijst naar een nieuwe stap in de ontwikkeling van het Web, waarbij termen als participatie en ‘user-content’ kernwoorden zijn. Het is moeilijk, zo niet onmogelijk, om een exacte, allesomvattende omschrijving te geven; Web 2.0 is eerder een begrip dan een gedefinieerde standaard. Voor de één verwijst Web 2.0 naar een marketing hype, voor de ander is het een fundamentele verandering in de manier waarop webtechnologie wordt toegepast. Uiteindelijk is de toevoeging ‘2.0’ wellicht meer een verwijzing naar een gevoel van verandering en vernieuwing.
Ordina BPO en is vanuit die rol mede verantwoordelijk voor informatiebeveiliging vanuit de afdeling Security & Compliance. Hij heeft negen jaar ervaring als IT-auditor (onder andere bij Ernst & Young EDP Audit en Fortis Audit Services). N.R.M.J. (Nils) van der Laan RE is Information Security Specialist bij ASML, wereldmarktleider op het gebied van lithografiesystemen voor de halfgeleiderindustrie. Hij heeft tien jaar ervaring als IT-auditor (onder andere bij Ernst & Young EDP Audit en Audit Rabobank Groep) en is specialist op het gebied van informatiebeveiliging, zowel waar het de organisatorische als technische kant betreft. De auteurs hebben het artikel op persoonlijke titel geschreven.
Hoewel een eenduidige definitie dus niet te geven is, delen Web 2.0-websites (in de regel) wel een aantal eigenschappen: • Ten eerste gaat het, dat moge duidelijk zijn, om toepassingen die volledig web-based zijn; hoewel het niet ondenkbaar is dat ook businessapplicaties, die niet webbased zijn, toch gebruik kunnen maken van Web 2.0-technologie. • De content wordt geleverd door de bezoekers van de site; het platform door de aanbieders. • Centrale redactie van de content ontbreekt. Enige vorm van centrale ‘moderatie’ is in een aantal gevallen wel aanwezig, waarmee in die gevallen nog enige vorm van kwaliteitsborging aanwezig is. Sites zoals Wikipedia steunen voor deze kwaliteitsborging op de aanname dat gebruikers elkaars content aanvullen en corrigeren.
6 | de EDP-Auditor nummer 1 | 2008
functionele en technische platform. De gebruikers geven verder vorm aan de inhoud en vormen daarmee het bestaansrecht van de site. Een vergelijkbare site die recentelijk sterk in opkomst is, is Plaxo [3]. Hier delen gebruikers niet alleen contacten, maar ook informatie over interesses, hobby’s en zelfs muziekvoorkeuren.
Afbeelding 1: YouTube • De toegang is over het algemeen zeer open. Iedereen mag de sites bezoeken, bekijken, commentaar leveren en content toevoegen, soms anoniem en soms na registratie. Vaak is het zelfs niet mogelijk om bezoekers uit te sluiten. • Meestal kennen bezoekers elkaar niet of niet direct (met uitzondering van Social Networking sites zoals LinkedIn, Hyves, of Facebook). • In veel gevallen bieden Web 2.0 sites uitgebreide mogelijkheden (in de vorm van goed beschreven API’s, Application Programming Interfaces) voor uitbreiding of informatie-uitwisseling met andere sites. Dit is bijvoorbeeld het geval bij Google Maps en Facebook. Verschijningsvormen In de voorgaande paragraaf is al een aantal sites genoemd die het stempel Web 2.0 dragen. Natuurlijk zijn er meer voorbeelden van websites die in meer of mindere mate het begrip Web 2.0 verduidelijken. Het populaire YouTube [1], een site voor het bekijken, plaatsen en becommentariëren van videofragmenten (zie Afbeelding 2), is wellicht één van de meeste bekende voorbeelden. Deze kan slechts bestaan door de actieve bijdrage van bezoekers. Omdat steeds nieuwe video’s door bezoekers worden geplaatst, blijft YouTube interessant. Hierdoor blijven bezoekers terugkomen; een perfect middel voor virale marketing1. Daarnaast maken steeds meer sites gebruik van de video’s die op YouTube zijn geplaatst. Niet door deze over te nemen, maar door te ‘linken’ naar YouTube. Daarmee hebben de beheerders van YouTube dus veel invloed op hoe gebruikers de video’s uiteindelijk op hun scherm krijgen. Google zag de (reclame)potentie van YouTube en kocht de site in oktober 2006 van de bedenkers voor een bedrag van 1,65 miljard dollar. Een ander voorbeeld is LinkedIn [2], een social networking website voor het onderhouden van zakelijke contacten (met bijvoorbeeld businesspartners, oud-studiegenoten en (ex-)collega’s). Bij LinkedIn wordt de inhoud, met uitzondering van de advertenties, gedomineerd door bezoekers die hun eigen gegevens plaatsen en vervolgens zelf contact leggen met bekenden, geïnteresseerden of toevallige bezoekers van de website. De bemoeienis van het bedrijf achter LinkedIn is hierbij beperkt. LinkedIn biedt in feite alleen het
Een heel interessant voorbeeld van een Web 2.0-toepassing is Google Maps [4]. Google Maps is in de basis ‘niet meer’ dan een database vol met kaartgegevens en satellietfoto’s. Google Maps kent echter twee belangrijke faciliteiten die de kwalificatie Web 2.0 legitimeren. Ten eerste kunnen gebruikers zelf kaartgegevens toevoegen. Hiervoor heeft Maps de optie ‘mijn kaarten’. Deze kaarten kunnen persoonlijke informatie projecteren op de kaarten van Google Maps. De door gebruikers toegevoegde informatie kan vervolgens worden gedeeld met andere gebruikers. Deze mogelijkheid kan worden uitgebreid door het creëren van zogenaamde ‘content layers’, waarmee gegevens uit bijvoorbeeld een database worden geprojecteerd op de Google Maps kaarten. Een goed voorbeeld hiervan is de toevoeging van informatie van Funda (zie Afbeelding 3). Hiermee is in één oogopslag te zien welke huizen in een bepaalde buurt te koop staan. Een dergelijke toepassing heet een ‘mashup’. Deze mashups zorgen vaak voor nieuwe, interessante en nuttige toepassingen. Zo biedt Misdaadkaart [5] een kaart van Nederland waarop de actuele misdaden (voor zover bekend uiteraard) worden geprojecteerd. Meer voorbeelden van op Google Maps gebaseerde mashups zijn te vinden op Nederkaart [6]. Om de content layers mogelijk te maken, biedt Google een uitgebreide API voor Google Maps. Op basis van deze API zijn niet alleen layers binnen de Google Maps site zelf mogelijk, maar is het ook mogelijk om zelf websites te bouwen die gebruik maken van Google Maps functionaliteit. Buiten de toepassingen zelf ontstaan ook steeds meer hulpmiddelen om zelf, via het web, mashups te maken. Zo heeft Yahoo! de website Yahoo! Pipes [7] en Microsoft zijn eigen Popfly [8] (zie hiervoor Afbeeldingen 4 en 5). Via deze sites, eigenlijk web-based ontwikkelomgevingen, kunnen gebruikers op een relatief simpele manier informatiebronnen aan elkaar koppelen en zo nieuwe toepassingen creëren (zoals bijvoorbeeld misdaadkaart.nl). En dit alles omdat al deze informatiebronnen via eigen API’s toegang van ‘buitenaf’ mogelijk maken. Een kijkje onder de motorkap Web 2.0 heeft weinig te maken met vernieuwing van technische infrastructuren of platforms. Deze zijn in de regel niet anders dan bij de meer traditionele webtoepassingen. Vaak worden echter wel nieuwe programmeertalen, -frameworks en -technieken gebruikt. Web 2.0 steunt voor een groot deel op de open standaarden HTML en CSS (Cascading Style Sheets, een technologie
7 | de EDP-Auditor nummer 1 | 2008
Artikel in gebruikersvriendelijkheid. Ze kunnen zich op deze manier namelijk steeds meer gaan gedragen op manieren die gebruikers al gewend zijn van ‘normale’ applicaties. Ook geeft het grote voordelen wanneer webapplicaties worden gebruikt vanaf netwerken waar de bandbreedte beperkt is (zoals mobiele netwerken), waardoor het toepassingsgebied flink groter is geworden. Wat overigens opvallend is, is dat het idee achter AJAX al meer dan tien jaar bestaat2. Pas de laatste paar jaren wordt AJAX echter op grote schaal toegepast en is er eigenlijk geen (populaire) website meer die zonder AJAX zijn werk kan doen. In de praktijk wordt AJAX geïmplementeerd door een combinatie van HTML en CSS voor de opmaak van de webpagina, HTTP voor de communicatie tussen server en webclient en Javascipt voor de programmeerlogica aan de kant van de webclient.
Afbeelding 2: Google Maps in combinatie met Funda-informatie (Bron: google maps) voor het opmaken van webpagina’s). Eén van de belangrijkste technieken, die eigenlijk de basis vormt voor de mogelijkheden die Web 2.0 toepassingen op dit moment bieden, is AJAX. AJAX is een afkorting voor ‘Asynchronous Javascript and XML’. Het uitweiden over deze techniek gaat te ver voor dit artikel. Het komt er in het kort op neer dat het inzetten van AJAX het onder andere mogelijk maakt om delen van een webpagina, dus niet meer de gehele pagina in één keer, te verversen. Dit gebeurt meestal op basis van input van de gebruiker. Een simpel voorbeeld hiervan is het scherm voor het maken van een nieuw mailbericht in Google Mail. Bij het invoeren van de geadresseerde, verschijnt bij elke ingetoetste letter een lijstje van mogelijke namen uit het adresboek. Dit zonder dat de webpagina opnieuw geladen wordt. Dit lijkt niet wereldschokkend, maar voor webapplicaties was deze mogelijkheid een flinke stap voorwaarts
AJAX vormt ook steeds vaker de basis voor de hulpmiddelen die ontwikkelaars gebruiken. Wat de programmeertalen en -frameworks betreft, is het streven vaak om op een zo simpel mogelijke wijze nieuwe dingen te creëren. Programmeertalen als het objectgeoriënteerde Ruby en het hiermee verbonden framework ‘Ruby on Rails’ zijn nieuwe ontwikkelingen die duidelijk als vernieuwend kunnen worden aangemerkt. Ruby on Rails, ook vaak aangeduid als RoR, is een raamwerk dat bedoeld is om snel en efficiënt webtoepassingen op basis van de programmeertaal Ruby te ontwikkelen. Uitgangspunt bij RoR is de scheiding van businesslogica, presentatie en interactie met de gebruiker (de zogenaamde ‘ModelView-Controller’ architectuur, die overigens een stuk ouder is dan RoR). Voordeel hiervan is dat relatief simpel aanpassingen aan één van de lagen kunnen worden doorgevoerd zonder dat andere lagen daar last van hebben. Risico’s (gezien door de ogen van de auditor). De toepassing van nieuwe webtechnologieën heeft vaak tot gevolg dat slimme hackers op een nog slimmere wijze toegang kunnen krijgen tot nog meer kritische (bedrijfs)gegevens en andere informatie. De populariteit van Web 2.0 heeft de afgelopen jaren een grote vlucht genomen en is daardoor ook steeds vaker het doelwit van aanvallen. De komende jaren zal het speelveld van hackers logischerwijs steeds meer worden uitgebreid met het uitbuiten van zwakke plekken Web 2.0 technologieën in webtoepassingen. Aan de introductie van Web 2.0toepassingen zijn diverse risico’s verbonden. Veel van deze risico’s
Afbeelding 3: Yahoo Pipes 8 | de EDP-Auditor nummer 1 | 2008
Afbeelding 4: Microsoft Popfly zijn gerelateerd aan informatiebeveiliging, zoals onder andere: • ‘Pervasive content’ Een inherent risico aan het gebruik van Web 2.0 toepassingen is het feit dat data niet meer centraal op een punt hoeft te zijn opgeslagen. Bronnen van informatie kunnen over het gehele internet verspreid zijn. Dit heeft tot gevolg dat ook hier de kwaliteit van de informatiebeveiliging afhankelijk is van de zwakste schakel in het geheel. • ‘Pervasive logic’ Naast decentrale data, is bij mashups sprake van decentrale logica. Mashups maken immers gebruik van functionaliteit van andere websites. De eigenaar van de mashup heeft geen invloed op een (vaak belangrijk) deel van de werking van de onderliggende websites (zoals bijvoorbeeld Google Maps). • Profiling (het verzamelen van informatie) Door het handig zoeken in diverse websites is het relatief eenvoudig om een persoon te ‘profilen’ en zodoende veel informatie te verzamelen. Zo bevat LinkedIn gegevens over iemands carrière, bevatten sites als Hyves vaak persoonlijke foto’s en andere persoonlijke informatie en kunnen andere websites worden gebruikt om nog veel meer informatie over een persoon te achterhalen. Tevens worden, zoals ook bij vele niet-Web 2.0 websites, gegevens van bezoekers (ongemerkt) verzameld en is niet altijd duidelijk wat er met deze gegevens gebeurt. • Nieuwe kwetsbaarheden in web 2.0 toepassingen Een Web 2.0-toepassing is in feite een interactieve applicatie binnen een website. Het gebruik van AJAX in zo’n applicatie vergroot het risico van diverse webapplicatie specifieke aanvallen zoals bijvoorbeeld cross site scripting (XSS) en SQL Injection. Ook verhoogt de toepassing van bijvoorbeeld Ruby on Rails kans op tekortkomingen in de
beveiliging (RoR biedt weinig inherente beveiligingsmaatregelen); veel beveiligingsmaatregelen moeten handmatig ingebouwd worden en worden daardoor geregeld vergeten of onvolledig geïmplementeerd. Dit illustreert duidelijk de noodzaak van goed en uitgebreid testen; niet alleen op basis van functionele criteria, maar juist ook op basis van criteria met betrekking tot beveiliging. • Beveiliging deels afhankelijk van de client Web 2.0-sites steunen voor een belangrijk deel op clientside logica zoals Javascript. Hierdoor komt een deel van de beveiliging bij deze client te liggen en moeten mogelijke tekortkomingen hierin op de server worden afgevangen. • Betrouwbaarheid van informatie Door het ontbreken van centrale redactie, kan in veel gevallen niet worden gesteund op de betrouwbaarheid van informatie. Daarnaast hoeft ook de beschikbaarheid niet te zijn gewaarborgd. Hiermee moet terdege rekening worden gehouden wanneer Web 2.0 toepassingen worden gebruikt bij de ondersteuning van bedrijfsprocessen. • Beta Veel Web 2.0-sites beginnen als ‘public beta’, oftewel: de toepassing is eigenlijk nog niet af maar is al wel voor het publiek beschikbaar (bijvoorbeeld Google Mail). Vaak blijven dergelijke sites tot in lengte van dagen deze status houden. Ook hierdoor is de betrouwbare werking op geen enkele manier gegarandeerd en kan functionaliteit zomaar wijzigen of verdwijnen. Toekomst Wat de toekomst Web 2.0 brengt, is moeilijk te voorspellen. Feit is dat steeds meer toepassingen zullen ontstaan die steeds weer nieuwe mogelijkheden laten zien. Voorlopig is vooral de creativiteit en de durf van gebruikers en ontwikkelaars bepalend voor de toekomst. En omdat de grens
9 | de EDP-Auditor nummer 1 | 2008
Internet Artikel tussen deze twee groepen soms erg vaag is, zullen de wensen van gebruikers steeds vaker en sneller worden vertaald naar écht bruikbare toepassingen. De praktijk wijst uit dat één van de filosofieën achter Web 2.0, namelijk dat gebruikers ook leverancier van content zijn, inmiddels ook buiten het web zichtbaar is. Zo heeft TomTom recentelijk een nieuwe versie van zijn navigatiesysteem op de markt gebracht waarbij gebruikers zelf informatie aan kaarten kunnen toevoegen en deze kunnen delen met andere gebruikers. Een nieuwe stap in een ontwikkeling waarvan het einde voorlopig nog niet in zicht is. ■
Bron- en andere verwijzingen Over het World Wide Web en Web 2.0 Wikipedia over de historie (http://en.wikipedia.org/wiki/Www) Weaving the Web (The Past, Present and Future of the World Wide Web by its Inventor), Tim Berners-Lee, ISBN 978-0752820903 Wikipedia over Web 2.0 (http://en.wikipedia.org/wiki/Web_2.0) In het artikel genoemde websites en hulpmiddelen [1] YouTube (http://www.youtube.com) [2] LinkedIn (http://www.linkedin.com) [3] Plaxo (http://www.plaxo.com) [4] Google Maps (http://maps.google.com) [5] Misdaadkaart (http://www.misdaadkaart.nl) [6] Nederkaart (http://www.nederkaart.nl) [7] Yahoo Pipes (http://pipes.yahoo.com) [8] Microsoft Popfly (http://popfly.ms) Andere voorbeelden NewsVison (http://www.rnw.nl/newsvision) TagZania (http://www.tagzania.com/) Ruby on Rails (http://www.rubyonrails.org) Prototype Javascript Framework (http://www.prototypejs.org) Script.aculo.us (http://script.aculo.us) Dit artikel kwam tot stand met een initiële bijdrage van ing. R.C. de Vos RE (Fortis Audit Services) Noten 1 Virale marketing is een marketingtechniek die poogt om bestaande sociale netwerken te exploiteren om zo de bekendheid van het merk te vergroten of positieve associaties te bewerkstelligen op een wijze die te vergelijken is met een virale epidemie. In die zin lijkt het op mond-tot-mondreclame die versterkt wordt door het internet, waardoor zeer snel en veelal op goedkope wijze een groot aantal mensen bereikt kan worden. http://nl.wikipedia.org/wiki/Virale_marketing 2 Het concept van asynchroon verversen, dus zonder de gehele pagina opnieuw te laden, stamt al uit 1996. Toen werden het iframe element geïntroduceerd in Internet Explorer 3.0 en het layer element in Netscape 4.0. Deze elementen boden toen al dezelfde mogelijkheden die nu onder de noemer AJAX vallen. Toepassingen die van deze elementen gebruik maakten, werden toen geschaard onder de noemer ‘Dynamic HTML’ (DHTML).
10 | de EDP-Auditor nummer 1 | 2008