je kijkt naar nullbeta home » schrijfsels » security

Over Cross Site Request Forgery

Ik ben niet zo’n enorme beveiligingsnerd. Hackeraspiraties heb ik bijvoorbeeld nooit gehad. Daar ben ik ook bij lange na niet slim genoeg voor.

Bewust van de risico’s op internet ben ik me wel. In tegenstelling tot een (groot?) deel van de internetpopulatie verkeer ik niet in de veronderstelling dat ik een gezellige wandeling door het dorpspark van Sunnyville maak als ik online ben. Eerder voel ik me alsof in een jungle rondsluip waar ik elk moment besprongen kan worden door een onbekend en gevaarlijk dier.

Ook al ben ik dan geen security fetisjist, als je websites maakt denk je vanzelfsprekend na over de beveiligingsaspecten van je websites. Over Cross Site Scripting (XSS) had ik bijvoorbeeld al voldoende gelezen. En over geschreven in een stukje over script injectie in startpagina klonen zoals Startertjes. Het concept van Cross Site Request Forgery (CSRF) was daarentegen helemaal nieuw voor mij. Hoewel de aanvalsvector al meerdere jaren bekend is.

Cross Site Request Forgery heeft wel wat weg van XSS. Maar in tegenstelling tot XSS, waar een aanvaller kwaadwillende code injecteert in een website, is Cross Site Request Forgery gebaseerd op het vertrouwen dat een website heeft in een gebruiker. De aanvalscode lift als het ware mee op de identiteit van het slachtoffer om iets voor elkaar te krijgen.

Ter illustratie, als een persoon aangelogd is in GMail, is het mogelijk om hem / haar uit te loggen door een webpagina of een html emailtje voorbij te laten komen waarin de code http://mail.google.com/mail/?logout&hl=en verwerkt zit. Bijvoorbeeld als de inhoud van het source attribuut van een plaatje. Met andere woorden, het oproepen van een webpagina met daarin de code
<img alt=”" src=”http://mail.google.com/mail/?logout&hl=en” />

faciliteert een automatische en onvrijwillige logout als je op dat moment aanlogd was in Google’s webmail client. Geloof je het niet? Log voor de lol even in op GMail en open een ander tabje of venster met deze testlink. Nog steeds aangelogd in GMail? Dat dacht ik al …

En dat hatelijke rode kruisje dat Internet Explorer weergeeft als een afbeelding niet geladen kan worden, verbergen we natuurlijk gewoon door er een display: none stijldeclaratie aan te hangen. Geen haan die er naar kraait …

Ai. De demo is dan wel onschuldig, maar de potentiële impact is niet te onderschatten. Ik zal voortaan zeker geen spannende websites meer bezoeken zonder eerst minimaal de browser cache door de shredder te halen en alle sessieinfo weg te gooien.

Klinkt het nog allemaal een beetje wazig? Misschien werkt het verhelderend als je het CSRF artikel van 0×000000 Hacker WebZine leest.

Encryptie met PHP

De IBM Developers Works website is met regelmaat te betrappen op het publiceren van handige en prima leesbare artikelen op het gebied van scripting. Zo is er een heel aardige serie over de inzet van asynchrone javascripts.

Maar ook voor een goed stukje tekst over serverside scripting ben je bij IBM Delevelops Works aan het juiste adres. Bijvoorbeeld hoe de in PHP aanwezige functies voor versleuteling te gebruiken. Een aantal zaken die in dit encryptie artikel besproken worden zullen (als het goed is) de meeste mensen bekend zijn. Voor mij was het in elk geval niet nieuw. Het stukje over public key encryptie op basis van GNU Privacy Guard (GPG) daarentegen was voor mij wel vers en interessant leesvoer.

Ik vraag me alleen af of gpg standaard te vinden is op de meeste Linux webservers … ** start ftp proggie van keuze om eens te neuzen op een webserver **

Yep, op één van de Linux webservers waar ik bij kan is gpg gewoon aanwezig. Binnenkort eens in de praktijk uitproberen …

  · ·

Wie is kwetsbaar? Wat is lek? Vraag het aan Google

Zoekmachines zijn een prima hulpmiddel om snel van alles en nog wat aan de weet te komen. Ook in gevallen waarin informatie beter onder de pet had kunnen blijven, zijn zoekmachines veelal openhartig.

Via een artikel op Computerworld (Using Google to attack databases) klikte ik door naar de Google Hacking Database. In de Google Hacking Database vind je lange lijsten met zoekmachine queries. Queries die bij uitstek geschikt zijn om bijvoorbeeld een webserver te profilen. Of om folders met gevoelige informatie te vinden. Of om websites met een lekke PHPMyAdmin interface naar MySQL op het spoor te komen.

Rank je eindelijk een keertje goed … is het vanwege een ernstige kwetsbaarheid van een webapplicatie of een misconfiguratie van je webserver … De ironie!

  ·

Werken onder een beheerdersaccount

Gemak(zucht) dient de mens. Vandaar dat ik in het verleden nogal eens zondigde en met teveel rechten op mijn laptop werkte. En als je eenmaal gewend bent dat je alles mag op een computertje, lever je die verworvenheden niet zonder mokken in.

Met de aanschaf van een verse schootcomputer heb ik echter besloten mijn leven te beteren. Niks geen king of the hill status meer als dat niet strict noodzakelijk is. Dan maar wat minder gebruikersgemak en mijn rechten on the fly verhogen via uitvoeren als. Werkt dat niet? Niet zaniken, gewoon de moeite nemen om opnieuw aan te loggen als Onze Lieve Heer, klikkerdeklik installeren die hap en weer terug naar de zandbak.

Waarom ben ik overstag gegaan? Niet omdat ik nare ervaringen heb met de boze computer- en internetwereld bij het werken onder een beheeraccount. Dankzij m’n aan paranoia grenzende voorzichtigheid ben ik verstoken gebleven van creepy crawly beestjes in mijn pc. Maar het is goed beschouwd zooooooo slap om te kiezen voor de weg van de minste weerstand. Vandaar dat ik afstand neem van mijn dwalingen.

Je merkt wel dat sommige software niet is gebouwd met een gebruiker met beperkte rechten in het achterhoofd. Neem nou die Security Suite van McAfee. Ik weet niet of ik voor dit product gekozen zou hebben als deze software niet meegeleverd was bij mijn laptop. Maar goed. Het staat nou eenmaal op die harddisk. En zo’n slechte naam heeft McAfee nou ook weer niet.

Niet alleen heb ik beheerdersrechten nodig om een aantal updates te installeren. McAfee maakt ook gebruik van een onzalige combinatie van Internet Explorer en ActiveX om de update uit te voeren. Pas nadat ik het beveiligingsnivo van Internet Explorer sterk verlaagd had, protesteerde McAfee niet meer en voerde de update uit.

Hmmmm …. eigenlijk kan dit maar één ding betekenen. McAfee gaat er blijkbaar standaard van uit dat de doorsnee thuisgebruiker met beheerdersrechten werkt en daarnaast Internet Explorer op een comateus beveiligingsniveau heeft draaien.

Da’s een goed uitgangspunt als bouwer van beveiligingsprogrammatuur. not!

  ·

Trust no one

In mijn baantje als systeembeheerder word ik nogal eens woest aangestaard als een medewerker een website wil bezoeken en op een pagina wordt getrakteerd die niet wil laden of hartstikke kreupel is. De functionaliteit van de browser, Internet Explorer, wordt standaard nogal afgeknepen. Lees: actieve content in de vorm van ActiveX, meta tag redirects en scripting staat standaard UIT! Hiermee wordt de brakke browser ongevoelig voor het grootste deel van de bedreigingen. Als het nodig is geef ik natuurlijk websites vrij door ze in de vertrouwde zone van Internet Explorer op te nemen. De policy-wijziging wordt uitgerold over het domein. En voila: de website is toegankelijk.
lees verder

  · ·