Computerbeveiliging - Hoe je bad guys buiten de deur houdt

Chrome + Linksys CSRF vulnerabilities

05-12-2010, 13:13 door Bitwiper, 6 reacties
Gisteren is door auteur Martin Barbella in http://www.exploit-db.com/exploits/15675/, aan de hand van enkele voorbeelden voor Linksys routers (WRT54G, WRT54G2 en BEFSR41) nog eens gewezen op het risico van het niet wijzigen van het standaard wachtwoord in netwerkapparatuur. Opvallend is dat Google Chrome in dit voorbeeld geen bescherming biedt, waar andere veelgebruikte webbrowsers dat wel doen.

In de voorbeelden wordt gebruik gemaakt van een CSRF (Cross Site Request Forgery) attack. Bij zo'n CSRF attack is sprake van 2 websites:

1) eentje die jij vertrouwt en waarop je moet inloggen (voorbeelden: webmail, twitter, maar ook de beheerinterface van netwerkapparatuur)
2) een kwaadaardige website.

De aanval bestaat eruit dat content geladen vanaf die kwaadaardige website, jouw browser aanzet om handelingen uit te voeren op de vertrouwde website. Dit kan op de volgende manieren plaatsvinden (ervan uitgaande dat de web browser of de vertrouwde site hier niet tegen beschermen), zodra je een webpagina opent van de kwaadaardige website:

A) Je bent tegelijkertijd ingelogd op de vertrouwde website;
B) Je bent niet ingelogd op de vertrouwde website maar die gebruikt een bekend user-ID en wachtwoord;
C) Je bent niet ingelogd op de vertrouwde website maar die gebruikt een te brute-forcen user-ID en wachtwoord.

De beschreven aanvallen hebben betrekking op B. Interessant daarbij vond ik de volgende passage uit Martin Barbella's exploit omschrijving:
As I mentioned before, success of this type of exploit depends on the victim's browser. This is simply blocked in IE8, while Safari will give a phishing warning, Firefox warns the user that they are attempting to log in with the name "a", and Google Chrome simply allows the request without notifying the user in any way.
Een bekend artikel over CSRF aanvallen en preventie is in 2008 geschreven door Ed Felten en Bill Zeller (de blog http://www.freedom-to-tinker.com/blog/wzeller/popular-websites-vulnerable-cross-site-request-forgery-attacks bevat een link naar het artikel zelf). Een aardige samenvatting daarvan in de vorm van sheets vind je op deze pagina onder "CSRF": http://www.kjhole.com/WebSec/Downloads.html. In die PDF file doet de auteur Kjell Jørgen Hole de volgende aanbevelingen onder Client Side Defenses, met enkele aanvullingen van mijzelf erbij:
- Log uit zodra je een geautenticeerde sessie afsluit (vertrouw er niet op dat de server dit doet na een tijdje);
- Start geen andere sessies vanuit je webbrowser zolang je met een geauthenticeerde sessie bezig bent;
- Sla nooit usernames/wachtwoorden op in je webbrowser;
- Wijzig elk default (of via e-mail verkregen) initiëel wachtwoord in een lastig te raden exemplaar;
- Hergebruik nooit wachtwoorden;
- Gebruik een veilige webbrowser, zomogelijk met vertrouwde extensies die meer veiligheid bieden (bijv. NoScript voor Firefox biedt extra beschermende maatregelen o.a. tegen CSRF attacks, zie http://noscript.net/abe/ en http://noscript.net/faq).

Aanvulling 18:08: Linksys router model BEFSR41 toegevoegd.
Reacties (6)
05-12-2010, 22:34 door spatieman
interessant verhaal bit..
10 punten voor jou.
06-12-2010, 08:00 door Syzygy
Goed verhaal, goed uitgelegd.

Bevestiging van wat eigenlijk evident is:

In geval van WIFI:
Naast je default user name en password dien je tevens de standaard SSID te vervangen door iets "nietszeggends".
Dus iets waaruit niet de merknaam en/of het type van je Modem/Router is af te leiden (in verband met known vulnerabilties)
Tevens ook niet een naam waaruit blijkt bij wie de SSID/Netwerk hoort (hetgeen directe aanvallen op jouw bedrijf/naam/netwerk weer beperkt).

Het onthouden van username en password is altijd af te raden vooral bij laptops.

Natuurlijk zijn deze zaken voor ons (laat maar even zeggen bezoekers van Security.nl) bekend maar kijk maar eens om je heen hoe mensen met dit soort zaken omgaan:

Hoe vaak komt het niet voor dat iemand zijn PC crashed en dat na herinstallatie de mail niet werkt.
Als behulpzame ICT-er (want dan weet iedereen opeens je nummer weer ;-) stel je dan hun account weer in en dan vraag je: wat is het password van je e-mail account ??
Ja 4 jaar geleden heb ik wel een brief van mijn ISP gehad met wat gegevens er op maar ik weet niet waar dat is gebleven.
Vervolgens deugt de ISP niet, de computer is waardeloos omdat ie gecrashed is, ze willen gewoon net zo e-mailen als vroeger en dat jij dat dan niet weet want jij bent toch de ICT guru maar het ligt nooit aan henzelf. hahahaha

We hebben het wel eens over "computerrijbewijzen"maar dit zijn essentiële zaken die toch eigenlijk iedereen behoort te weten om drama's te voorkomen.
06-12-2010, 09:32 door Bitwiper
Dank voor de positieve reacties en aanvullingen! Overigens gaat de eer natuurlijk naar Martin Barbella, ik heb alleen wat achtergronden erbij gehaald en het e.e.a. vertaald.

Door Syzygy: Als behulpzame ICT-er (want dan weet iedereen opeens je nummer weer ;-) stel je dan hun account weer in en dan vraag je: wat is het password van je e-mail account ??
Zeer herkenbaar. Vaak hoor ik dan nog wel "ik heb het volgens mij ergens opgeschreven..."

Aan de andere kant ben ik zelf ook wel eens een wachtwoord vergeten. Sinds ik KeePass gebruik is het risico op vergeten kleiner, maar het gebruik van zo'n tool is natuurlijk weer niet risicoloos...
06-12-2010, 09:55 door Anoniem
Chrome doet geen checks, aangezien het zich vooral richt op snelheid. Tsjaa.. made by Google. Dan weet je het wel. Privacy is nu eenmaal niet hun core business
06-12-2010, 12:55 door Anoniem
Door Anoniem: Chrome doet geen checks, aangezien het zich vooral richt op snelheid. Tsjaa.. made by Google. Dan weet je het wel. Privacy is nu eenmaal niet hun core business
Slaap lekker verder. anti CSRF bescherming is een kwestie van beveiliging, privacy heeft er slechts indirect mee te maken. Maar belangrijker, vraag is of anti CSRF bescherming echt een browser issue is. Mijn mening is van niet. Het probleem ligt bij halfbakken web applicaties waar het aan bescherming schort en het veel te veel accepteert als legitieme requests. Een andere bescherming, via een browser, virusfabrikant etc, is slechts een lapmiddel waarbij je als gebruiker maar moet hopen dat de bescherming is wat de kwetsbare web applicatie nodig heeft.
06-12-2010, 22:47 door Anoniem
Of ''anti-CSRF'' thuishoort in de browser is te betwisten. Dat Google Chrome het NIET heeft en de overige 'grote'browsers wel, pleit NIET voor Google.
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.