Clickjacking


Met clickjacking is het mogelijk om gevoelige informatie te ontfutselen of onbedoeld op ongewenste zaken te klikken.

Je 'klik' wordt gestolen doordat men een site heeft gemanipuleerd. Je denkt dat je naar het onderdeel van je keuze gaat, maar je wordt door gelinkt naar een door de hacker gekozen site.

Dit schijnt volgens Wikipedia vaak te gebeuren door middel van een transparante laag die de hacker over een site heen legt. Klik je op een link, dan vangt die transparante laag de click af en stuurt bijvoorbeeld je gegevens (wachtwoorden etc.) naar die andere site in plaats van naar iDeal bijvoorbeeld.

Het is uiteraard heel moeilijk je hier tegen te wapenen. Wees alert op verdachte links die verschijnen als je er met de muis boven zweeft. Zorg voor een goede virusscanner die ook het webadressen controleert. Als die een foute site constateert, dan ontvang je in ieder geval een waarschuwing.

Hoe werkt het?

Wanneer een hacker bijvoorbeeld een website op een domeinnaam heeft wat erg veel op uw domeinnaam lijkt dan kan deze via bijv. een iframe uw website embedden. Vervolgens legt hij een onzichtbare laag over uw website waarmee hij al uw links en knoppen kan vervangen door zijn eigen links zonder dat uw bezoeker dit door heeft. Zo plaatst de hacker bijvoorbeeld een ‘Vind ik leuk’ button van Facebook om likes te verzamelen en daarmee hoger in de zoekresultaten te komen.

In deze Engelstalige video word onder meer een demonstratie gegeven van Clickjacking én word een tool gedemonstreerd die in WordPress en Joomla Clickjacking tegen kan gaan:

Wat is clickjacking?

Clickjacking is een techniek die ook wel bekend staat als ‘user interface redressing’. Het is een vrij nieuwe techniek waarbij de gebruiker in de val gelokt wordt door op een verborgen link te klikken.

Bijvoorbeeld, een gebruiker komt een pop-up boodschap tegen op een website met schijnbaar een video als inhoud. Dit blijkt geen video te zijn, maar een nagemaakte foto met een afspeelknop. De gebruiker klikt op de afspeelknop in de veronderstelling dat de video zal starten, maar onrechtstreeks klikt hij op een verborgen link die onder een foto verscholen zit. Het is dus helemaal geen video, maar een foto van een filmpje waarop een afspeelknop te zien is. Wat is het gevaar van deze onschuldige klik? Vaak gaat er ongewenste malware gedownload worden, zonder dat je hier iets van merkt. Dit is slechts één van de vele methodes die op het internet circuleren. Andere veel gebruikte methodes zijn nagemaakte CAPTCHA’s, nep viraal nieuws, valse update boodschappen voor softwareprogramma’s etc.

De term clickjacking wordt gebruikt omdat men de gebruiker tracht te lokken om op een malafide link te klikken waardoor hij doorgestuurd wordt naar een website die hij niet wou bezoeken of malware gedownload wordt. Normaal kan je de eindlocatie van de URL bekijken als je met je muis over een link zweeft. Dit wordt bij clickjacking vermeden door gebruik te maken van een iFrame waarin een link verborgen kan worden. De definitie van een iFrame is als volgt: Een iFrame is een stukje code waarmee je een HTML website in een andere website kunt plaatsen. Een goed voorbeeld hiervan is het tonen van een YouTube video op een andere website. Men noemt dit ook wel ‘embedden’.

Gevaren van clickjacking

Clickjacking wordt gebruikt voor vele doelen, sommige houden in dat ze malware of virussen verspreiden, sociale media manipuleren, advertising schemes waar de verspreider geld krijgt per klik op de link of persoonlijke info verkrijgen.

Op dit moment komt het verbergen van een Facebook like-knop het meeste voor. Er wordt dus een like-knop verborgen onder een andere laag. Zonder dat je het weet, geef je een like aan een bepaalde pagina of persoon. Deze vorm van clickjacking wordt ook wel likejacking genoemd. Dit lijkt een onschuldige techniek, maar het kan ook veel verder gaan waarbij er persoonlijke informatie van je profiel wordt gestolen. Deze info kan gemakkelijk verkocht worden op ‘the black market’.

Een ander veelvoorkomend type is het verschuilen van cost-per-click (CPC) advertenties. Adverteerplatformen zoals Google Adsense betalen blog eigenaren een klein bedrag per klik die ze binnenhalen op een advertentie. Sommigen proberen deze inkomsten te verhogen door dit soort advertenties te verbergen en clickjacking toe te passen. Deze methode verdwijnt meer en meer omdat Google (en andere aanbieders) weten hoeveel keer er gemiddeld geklikt wordt op een advertentie per x-aantal bezoekers. Wanneer dit aantal niet strookt met het verwachte aantal kliks, gaat er als het ware een alarmbelletje af bij Google.

Beschermen tegen clickjacking

Zolang je gebruikt maakt van een webbrowser, is er geen 100% doeltreffende manier om alle vormen van clickjacking te voorkomen. Alle grote browsers (Firefox, Chrome, Opera, Internet Explorer en Edge) ondersteunen het gebruik van verschillende lagen op websites, waarvan sommige onzichtbaar kunnen zijn.

Je kan altijd overschakelen naar een niet-grafische webbrowser, maar dat is niet de meest praktische oplossing. Allereerst, zorg ervoor dat al je browser plugins up-to-date zijn zodat deze zwakheden al grotendeels vermeden kunnen worden. Het is ook belangrijk om je web browser zelf regelmatig te updaten. Hackers maken maar al te graag gebruik van verouderde web browsers die exploits bevatten.

NoScript

Er zijn enkele tools ontwikkeld om jezelf te beschermen tegen clickjacking. NoScript is een gratis te gebruiken Firefox add-on die automatisch malafide scripts en iFrames gaat blokkeren. NoScript gebruikt auditieve feedback om zijn gebruikers te waarschuwen voor pagina’s die een of meerdere <script> tags (HTML structuur element om webpagina’s te bouwen) bevatten. Het lijkt irritant, maar sommige websites gaan door het blokkeren van <script> tags niet meer werken. Door het geluidssignaal weet je meteen dat er een mogelijke dreiging is en dat de website om deze reden niet zoals behoren zal werken. NoScript maakt daarnaast gebruik van een whitelist. Dit is een lijst die alle goedgekeurde websites met <script> tags bevat (o.a. youtube.com, outlook.com, netflix.com, paypal.com etc.). Daarnaast gaat ook niet elke website die gebruik maakt van <script> tags geblokkeerd worden. Er wordt een bepaald algoritme gebruikt die op verschillende elementen let en op basis hiervan een bron goed- of afkeurt. Een zeer bepalend element is of de gebruikte javascript package opgenomen is in een belangrijke javascript package register.

NoScript maakt tevens gebruik van ‘Anti-XSS protection’. XSS staat voor cross site scripting. Dit is het gebruikmaken van een zwakheid in een web applicatie om code te injecteren in een andere website. Dit soort aanvallen kunnen niet gedetecteerd worden door de whitelist omdat het de whitelist voorbij wandelt door deze injectie. Anti-XSS protection zorgt er vervolgens voor dat dat niet-vertrouwde websites geen JavaScript code kunnen injecteren.

Mogelijk nadeel aan NoScript is de vele (vaak dagelijkse) updates. Quote van NoScript website: ‘Every time a new browser weakness is reported, a new kind of web threat is discovered or a bug is found in NoScript itself (hey, no software is perfect!), NoScript is immediately updated to react as needed.’ Dus… Wil je jezelf beschermen, dan is een dagelijkse update een kleine prijs die je betaalt.

Clickjacking Reveal

Clickjacking Reveal plugin is gemaakt voor Chrome met hetzelfde doel als NoScript. Reveal zal je enkel waarschuwen wanneer hij clickjacking schema’s herkent. Reveal zal deze scripts dus niet blokkeren. Voor sommigen is het waarschuwen alleen al voldoende. De gebruiker kan de website nog steeds gebruiken zoals gewenst terwijl men op de hoogte is van de mogelijke clickjacking gevaren.

Hulp van webmasters

Ook webmasters kunnen zich inzetten in de strijd tegen clickjacking. Webmasters kunnen een header toevoegen aan hun website die afdwingt dat er geen iFrames van andere websites gebruikt kunnen worden op zijn website (X-Frame-Options HTTP Header). Vele frameworks of providers implementeren dit als een standaard optie zodat de webmaster hier niet zelf moet aan denken.

Conclusie

Er is geen sluitende methode om clickjacking aan te pakken. Het is een zeer eenvoudige techniek die moeilijk te stoppen is. Plugins zoals NoScript en Clickjacking Reveal maken het leven van de internetgebruiker al een stuk aangenamer. Samen met de hulp van webmasters (en providers / frameworks) zouden we dit probleem grotendeels kunnen uitschakelen. Uiteindelijk is gezond verstand het beste wapen tegen clickjacking.