Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 42 reacties
Submitter: begintmeta

Twee studenten van het Duitse Horst Görtz Institut für IT-Sicherheit zijn erin geslaagd de opvolger van Windows Live ID te kraken. De Cardspace-hack is echter wel afhankelijk van controle over de dns.

Het voor authenticatiedoeleinden te gebruiken Cardspace werkt door middel van het uitwisselen van tokens tussen een Identity Provider en de Relying Partner. Bij de laatste moet de gebruiker zijn digitale identiteit kenbaar maken en op die manier toegang tot de dienst krijgen die de RP aanbiedt. De gebruiker kan een zogenoemde Infocard, een visuele weergave van de te gebruiken digitale identiteit, kiezen, waarna het juiste token naar de RP wordt gestuurd. Het voordeel van dit systeem is dat er niet langer gebruikersnamen en wachtwoorden opgeslagen en over het netwerk verstuurd moeten worden. Ook de veiligheid zou hiermee verbeterd zijn, maar de Duitse studenten bewijzen anders.

De twee studenten, Xuan Chen en Christoph Löhr, slaagden erin een beveiligingstoken van de Cardspace-testsite van Microsoft te stelen. Zij maakten gebruik van een computer met Windows XP met SP2 en Internet Explorer 7. De hack van de studenten is verder afhankelijk van een beveiligingscertificaat en een zogenoemde round robin dns. Een dergelijke dns levert meerdere ip-adressen voor een enkele domeinnaam. Deze methode werd gebruikt om het verkeer naar de Relying Partner om te leiden naar een server van de aanvaller.

Middels een phishingsite kan de gebruiker tijdens een bezoek aan de vervalste website verlokt worden Cardspace te gebruiken. De demonstratie van de Duitsers maakt gebruik van drie frames, waarbij javascripts zorgen voor het wisselen tussen de server van de aanvaller en de RP-server. Na een succesvolle kopie van het beveiligingstoken kan zonder Cardspace op de testsite van Microsoft ingelogd worden. Het gebruik van de aangepaste dns zou volgens de studenten mogelijk zijn dankzij gehackte routers of wifi-accesspoints. De studenten hebben Microsoft inmiddels geïnformeerd en suggesties aangedragen om de beveiliging te verbeteren. Cardspace vormt onderdeel van het .Net 3.0-framework dat met Windows Vista wordt meegeleverd; voor Windows XP is een update naar versie 3.0, inclusief Cardspace, mogelijk.

Windows CardSpace
Moderatie-faq Wijzig weergave

Reacties (42)

Niet om het een of ander hoor, maar CardSpace is zeker niet bedoeld als vervanger voor Windows Live ID. CardSpace is bedoeld als vervanger van gebruikersnaam en wachtwoord overal, iedere site kan CS implementeren, sinds .NET 3.5 ook zonder SSL.

Bij Windows Live ID zelf kun je je aanmelden met Information Cards, deze functionaliteit verkeert echter nog in betafase.
Als je kijkt op de weblog van het CardSpace-team, staat daar een artikel waarom ze dat gedaan hebben: http://blogs.msdn.com/car...ut-a-ssl-certificate.aspx
Het is net als bij OpenID een IDENTIFICATIE mechanisme. De trust wordt bepaald door de partij waar je je id of card aanvraagt. (bvb Bij verisign kan je zowel een card als een OpenID aan dezelfde account linken.)

Voor een beter begrip van de materie is het goed eens dit verhaal te lezen (over OpenID maar de principes zijn door te trekken naar CardSpace)

http://wiki.openid.net/Introduction

[Reactie gewijzigd door masterpoi op 29 mei 2008 14:35]

Daar gaat het niet om. SSL is juist een beveiliging tegen man-in-the-middle attacks zoals deze. Als SSL niet meer verplicht is, wordt het dus makkelijk om iemand's ID te stelen en op z'n cardspace sites in te loggen.
Akkoord, maar dat is dan niet de schuld van MS, maar van de Relying party die geen SSL gebruikt.
Het is wel degelijk de schuld van MS dat ze de verplichting tot het gebruik van SSL eruit halen.
Jah daar is de eeuwige discussie weer...

In de andere situatie was er heus wel iemand die komt zeuren met.:

"Door MS ben ik weeral verplicht SSL te gebruiken."

Geweren waar je jezelf niet mee in de voet kan schieten bestaan niet.
Tja, als je een router hackt of de admin bent van een wifi AP, kan je alles. Niet zo bijzonder vind ik eigenlijk....
Tja, als je een router hackt of de admin bent van een wifi AP, kan je alles. Niet zo bijzonder vind ik eigenlijk....
Hoe kom je daar nou bij?
Iets als SSL/TLS is speciaal ontworpen om dit soort man-in-the-middle aanvallen tegen te gaan.
niet helemaal want de routering van berichten naar sites is niet versleuteld, alleen de inhoud van het bericht. Anders zouden routers de berichten helemaal niet kunnen routeren. Dus als je nu via een publieke accesspoint naar www.abnamro.com gaan en de router routeerd je naar een andere site dan heeft SSL ook geen nut.
Nee, daarom heb je juist die server side certificaten. Daarmee kan de bank zich aan jou authentificeren.

[Reactie gewijzigd door robbert op 29 mei 2008 12:49]

En met DNS spoofing/rebinding kun je de SSL certificaat verificatie door de client weer redirecten naar je eigen server ... De data zelf kon je toch al sniffen en manipuleren.

Edit @Olaf: En jij blijkbaar niet hoe Windows met certificaat verificatie omgaat en hoe dat zodanig te manipuleren is dat een gebruiker (het in de meeste gevallen) niet merkt; lees: geen certificaat warning krijgt ... Er zit nou eenmaal een verschil tussen theorie en praktijk ;)

Edit @latka: Je scenario klopt grotendeels; je zet een soort proxy als MITM neer en vervolgens dien je ervoor te zorgen dat de client jou eigen certificaat als vertrouwd/correct ziet (duhh). Dat laatste - transparent - voor elkaar te krijgen is nou inderdaad de truuk; er zijn verschillende scenarios voor; enkele simpele en ad-hoc (meestal door gebrekkige server en/of client-configs, dus echt een kwestie van geluk) , maar ook gegarandeerde methoden, die vergen echter wel weer veel voorbereiding en zijn dus niet geschikt voor ad-hoc aanvallen. DNS rebinding alleen(!) is inderdaad meestal niet genoeg, maar het is ook een opstapje naar andere zaken; zie het als de fundering van de aanval.

Het motto is: als je DNS gecompromeerd is, dan kun je dus geen enkele publiek bekende FQDN meer vertrouwen, SSL of niet. Hetzelfde geldt voor rerouting van IPs (eigenlijk IP kaping), zoals dit nog weleens door spammers gebruikt wordt.

Denk niet dat het niet kan of niet gebeurd, het gebeurd al jaren, misschien niet door scriptkiddies, maar toch ... en banken zijn - anno 2008 nog steeds - slordiger dan je denkt (nog ff los van "doofpotterig").

[Reactie gewijzigd door SKiLLa op 29 mei 2008 16:42]

Huh? Je bedoelt de eerste pagina met de sleutel van de bank en de volgende paginas met je eigen SSL sleutel? Moet je dus de SSL Session stelen (en de onderliggende session key). Volgens mij lukt dat je alleen met single-sided SSL en inderdaad een flinke slok kennis (eigen pub-key gebruiken uitgegeven door trusted CA, session-key decrypten met eigen priv-key en een secure-session naar de server opzetten namens de client etc.). Volgens mij moet je ten alle tijde een MITM attack doen en is een beetje rebinden niet de optie. Ik ben echter zeer benieuwd naar je scenario. Kun je dit uit de doeken doen?
Jij weet blijkbaar niet hoe certificaat verificatie werkt...
En daarbovenop, een acesspoint doet niet zoveel hoor, is gewoon een bridge tussen je wired en wifi netwerk, het doet niets met je traffic, geen nat, geen routering.
nee maar via de dhcp daarop kan je wel een gateway/dns instellen, op je gateway doe je dan in de firewall een redirect naar een eigen fabrikaat proxy en je zou al heel wat dingen kunnen doen
Op zuivere AP's zitten geen dhcp, gateway of dns. En al helemaal geen firewall.
daar bestaan er maar heel weinig van dan.
Niet helemaal waar. Wat je zegt klopt pas als je het hebt over controle over de gebruikte PC.

Als in buiten kantoor zit te werken via b.v. een hotspot dan is dat prima veilig te doen ook al weet ik dat een derde partij controle kan hebben over de netwerk verbinding. Hiervoor zijn dingen als VPNs, public keys en TLS/SSL uitgevonden.

IMO is het dus zeker wel een probleem dat een systeem als Cardspace vatbaar is voor dit soort 'man in the middle' problemen.
Ware het niet dat je met een router of AP geen enkele mogelijkheid hebt om de gebruikte methode na te bootsen noch als Relying Partner te gaan fungeren.

Ondanks dat Microsoft dus blijkbaar ergens een fout heeft in het van/naar resolven van de RP-servers, is het wel een erg creatieve methode geweest van de betreffende studenten. Kan me een dergelijke "hack" niet herinneren met andere certificaten.
Een dergelijke "hack" is ook met andere certificaten mogelijk hoor; DNS rebinding is een truukje dat al 12 jaar "gedocumenteerd" is; en tegenwoordig met cross-site scripting (XSS) weer helemaal "hot" is. Zie ook deze Black Ops 2007 powerpoint presentatie over DNS rebinding. Er is ook een YouTube video over ...

Er zijn wel "beschermingsmethoden" tegen DNS spoofing en XSS, maar zolang er in de praktijk FQDNs gebruikt worden (en DNS rebinding/spoofing van het doelwit/slachtoffer mogelijk is), valt de datastroom te onderscheppen (net zoals bij een proxy) en dus te manipuleren; b.v. door controle van een certificaat redirecten naar je eigen server zoals de in het artikel genoemde studenten ook gedaan hebben.

Eigenlijk is het dus een PoC van DNS rebinding met Cardspace als voorbeeld met als toevoeging wat tips voor MS om dit te voorkomen ...

EDIT @Guru Evi: Je zet een proxy op en je gaat niet een certificate chain nabootsen, maar vervangen. De truuk is vervolgens om jou eigen certificaat richting client als "vertrouwd" te laten zien en daarbij vormt DNS rebinding een cruciaal onderdeel. In dat geval is het ook geen ad-hoc aanval, daar het (meestal) wenselijk (of zelfs vereist) is die CA trust van te voren te realiseren. Het is ook zeker niet altijd mogelijk, maar vaak door onwetendheid toch wel ...

[Reactie gewijzigd door SKiLLa op 29 mei 2008 17:03]

Je kunt niet zomaar een certificate chain nabootsen op een gehackte server. Daarvoor heb je de private keys voor de certificate issuer (vb. Verisign) en die zijn enorm goed beschermd.

Als je banksite opeens afkomt met een nieuw certificaat die niet gevonden wordt in je certificate store, dan moet je wel eens oppassen.

Daarnaast beschermen veel banksites zich tegenwoordig daartegen. Momenteel heeft mijn bank (Bank of America) een specifiek plaatje en tekst om hun te authenticeren voor mij, daarnaast als er iets verandert aan de configuratie tov de laatste verbinding of ik maak grote bedragen over (ik kan dit ook permanent maken) dan moet ik authenticeren met een token die ik via sms krijg.
Je zou de te gebruiken DNS servers aan kunnen passen. Een heleboel mensen gebruiken DHCP om een IP van de router te krijgen met bijbehorende DNS servers. Kleine stap lijkt me?
Hoe kom jij via toegang tot de access point aan inloggegevens voor zoiets als cardspace dan? Er even vanuitgaande dat gevoelige informatie versleuteld wordt verstuurd en je niet je OS wagenwijd hebt open gezet door de firewall uit te zetten en allerlei onveilige services te draaien.
Via de hack die in het artikel beschreven staat.
Jammer dat je weggemod wordt .. want je hebt er wel een punt. Zolang gebruikers gebruik blijven maken van onveilige accesspoints blijven ze vatbaar voor aanvallen. En of dit nou om een Cardspace gaat of om bankaccount maakt an sich niet uit. Misschien dat MS wel iets meer kan doen aan het promoten van veilig draadloos netwerk gebruik om te voorkomen dat gebruikers met hun account dit soort fouten maken.
Op zich niet zo moeilijk. Lees dit artikel maar eens :

http://www.nu.nl/news/157..._trappen_in_nep-wifi.html

Ga op die manier maar op schiphol of een druk hotel zitten met je eigen gebouwde AP en de CardSpace hack en wachten totdat je een paar tokens in je bezit hebt.

Het grote voordeel nu is wel dat CardSpace (nog) niet zoveel gebruikt wordt.
@woekele
Jij had dit natuurlijk al lang zelf opgelost..
En heel eenvoudig over het gebruik van SSL./TLS heen stapt met de woorden, "daar kijkt een gewone gebruiker toch niet naar".
Dus jij accepteert dat als je ISP, router, switches, ... (of gelijk welke provider tussen jouw en je bank bijvoorbeeld) gehackt wordt, dat opeens alle secure verbindingen van hun klanten ook gecompromiseerd zijn?

SSL etc. dient ervoor te zorgen, dat zelfs al is mijn DNS naar de knoppen is, het certificaat of gelijk wat ik gebruik (SSH-keys) ofwel niet geaccepteerd wordt (automatisch) of een warning geeft.

Als er onderdelen op je banksite afgewisseld worden zonder encryptie, via een script of met een verkeerd certificaat, dan worden die dingen niet geladen of wordt mij de optie gegeven om al dan niet te accepteren.
goed, ik geef jouw morgen volledige controle over men router, zien of je in men gmail geraakt.....
Het is misschien niet heel bijzonder maar, het toont wel aan dat deze service niet helemaal waterdicht is. En dat er op een vrij simpele maniet misbruik van te maken is
Het feit dat ze ook suggesties naar MS sturen hoe het beter kan, doet mij vermoeden dat't dus ook écht beter kan. als je weet dat dit soort aanvallen mogelijk zijn, én er een manier is om het tgen te gaan... dan denk ik dat deze gasten zeker een geod punt hebben....

Niet alle aanvallen zijn 100% te voorkomen/voorzien, maar dit lijkt me in dit geval niet zo. Natuurlijk is met voldoende 'als' en andere rariteiten in je netwerk, bijna altijd wel een aanval die beveiliging kan kraken, dit lijkt me echter geen totaal onwaarschijnlijk senario,... dus dat lijkt me prima dat er eens goed naar gekeken is.
je kan ook gewoon NIET zeggen dat het waterdicht is dat maakt het al zo'n 75% veiliger. Wanneer je van de daken schreeuwd dat het waterdicht is, is er zeker iemand die het hacked. Al is het maar om het hacken zelf. Als je dat niet doet, zal dit effect in veel kleinere schaal toeslaan.
Het jatten van allerlei persoonlijke gegevens met als doel het leeghalen van bankrekeningen of misbruiken van creditcards is tegenwoordig een volledige sector, dus halfbakken oplossingen invoeren moet vermeden worden. Doe het goed of doe het niet als je iets veilig wil maken.
Niet allen met AP of routers, je kan ook ARP spoofing gebruiken, en zo al het verkeer via jou laten gaan. Zolang je maar op de ea manier toegang tot een netwerk hebt kan je in veel gevallen een man of the middle attack doen.
Het .NET framework versie 3.5 is ook al een tijdje beschikbaar en bied nog meer nieuwe functies aan.

Engelse versie
Nederlandse versie

Admin/IT installatie (volledig pakket van 197MB)

Wat betreft CardSpace informatie over het gebruik in .NET ter beveiliging, dat kan je op de volgende pagina lezen in het Engels: http://msdn.microsoft.com/en-us/magazine/cc163434.aspx

[Reactie gewijzigd door Ron.IT op 29 mei 2008 12:57]

En dat heeft op welke manier met dit bericht te maken?

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True