Fout in verificatiecheck Whatsapp maakt meelezen berichten mogelijk

Er blijkt een fout in het verificatieproces van de populaire applicatie Whatsapp te zitten. Hierdoor is het mogelijk om mee te lezen met de chatberichten van iemand anders. Het enige dat nodig is, is een prepaid-telefoon zonder tegoed en wifi.

Een tipgever van GeenStijl ontdekte een manier om de controle te omzeilen. Ondanks dat deze tipgever volgens het weblog Whatsapp drie keer heeft geprobeerd op de hoogte stellen van zijn ontdekken, werden er geen maatregelen genomen.

Bij het installeren van Whatsapp wordt de gebruiker gevraagd zijn mobiele nummer in te voeren om zo het account aan de mobiele telefoon te kunnen koppelen. Om dit te controleren wordt er vanaf de telefoon een controlebericht gestuurd. Als Whatsapp kan verifiëren dat het bericht is aangekomen, is de registratie voltooid.

De tipgever ontdekte echter dat er een fout in die procedure zit die kan worden misbruikt. Als iemand namelijk geen beltegoed meer heeft en geen bereik heeft, dan wordt het sms-bericht niet verzonden. Dit bericht is echter wel bereikbaar op de telefoon. Door vervolgens het bericht via een online sms-dienst te versturen en daarbij het mobiele nummer van iemand anders als afzender te gebruiken, kan Whatsapp worden gekoppeld aan het account van een andere gebruiker.

Diverse tweakers hebben inmiddels hun ervaringen op het forum gedeeld over deze hack en de werking ervan bevestigd. Een van deze gebruikers stelt dat de applicatie na het spoofen niet meer functioneert op de telefoon van de gespoofde gebruiker.

Eerder al meldde beveiligingsonderzoeker ObAt aan Tweakers.net dat door op een netwerk het netwerkverkeer mee te lezen de berichten van Whatsapp onderschept kunnen worden en dat hierbij ook de gebruikersnaam en het wachtwoord te zien zijn. Hij kwam hier achter tijdens zijn onderzoek naar de dpi-praktijken van KPN. Tijdens diezelfde zoektocht ontdekte hij ook dat de website van Hi een beveiligingsfout bevatte.

Door Wilbert de Vries

21-05-2011 • 09:38

56

Reacties (56)

56
53
29
7
0
3
Wijzig sortering
Een zinnige aanvulling voor slachtoffers:

Er is overigens wel één beveiligingstechniek die de populaire applicatie toepast: Zodra de app geregistreerd is via een andere smartphone, werkt die niet meer op het toestel waar deze als eerste op geregistreerd is. De applicatie waarschuwt daarvoor en geeft aan de app opnieuw te installeren en dus opnieuw te authenticeren. Als het slachtoffer dat eenmaal gedaan heeft, kan de aanvaller niet langer de berichten lezen. Totdat hij de applicatie ook verwijdert en opnieuw aanmeld dan.
Dat is niet waar.. tenzij ze dit sinds kort hebben veranderd. Ik heb een tijdje whatsapp op twee iphones tegelijk gedraaid. En tot zover ik me herinner kreeg ik de berichten op beide telefoons binnen.
In het XMPP protocol wat het eigenlijk allemaal is, is dat standaard gedrag ja. Zie ook een-der-welke-client met facebook (open je facebook webpage tegelijk).
Dit klopt niet, in XMPP is het standaard dat je kan kiezen als verzender naar welke resource je bericht gaat. De naam van een resource kan je in je client instellen.
In de meeste implementaties worden zelfs op resource gebasseerde berichten afgeleverd bij de client met de hoogste presence. En niet bij alle clienten. Als het feitelijk een pubsub is, is het een compleet ander verhaal, maar een pubsub garandeert dan weer niet dat er message delivery is, tenzij je ook die berichten als chat verstuurt en niet als headline (wat het standaard weer is).

Overigens ik vind het zo idioot dat je voor dit soort dingen XMPP naar de client zelf zou gebruiken. Is het niet het idee dat de minst mogelijke hoeveelheid data wordt gebruikt?
En heb je toen ook berichten verstuurd vanuit beiden foons?
Bor Coördinator Frontpage Admins / FP Powermod 21 mei 2011 09:40
Inmiddels loopt er op GoT hier ook al een interessant topic over waar meer informatie te lezen is.

[Reactie gewijzigd door Bor op 23 juli 2024 17:23]

Even ter update: ik ben met WhatsApp in gesprek over dit probleem en ze tonen interesse en zeggen dat ze heel druk bezig zijn dit lek te patchen. Denk met ze mee en denk dat we het wel een stuk veiliger kunnen gaan maken :)
Veiliger maken is niet zo moeilijk,

Gewoon de sms door de servers van Whatsapp laten sturen, dan kom je er niet achter wat de code had moeten zijn.
Het probleem hiervan is dat dit geld kost voor Whatsapp.
Wat is dat nou weer voor non-argument? Dat geldt toch voor ieder systeem?

Het gaat hier over een falend verificatiesysteem.
Het is de laatste tijd wel goed raak he, met de beveiliging van vanalles en nog wat.. Wordt het niet gehacked, dan verprutsen ze zelf alles wel :/ PSN, KPN, Facebook, Whatsapp noem maar op.
Je klinkt enigszins verbaasd. Ik ben`t niet. Nu dit soort dingetjes een hot item worden gaan steeds meer mensen er ook bovenop zitten.
Wat mij verbaast is dat zulke populaire diensten erg hackgevoelig zijn. Dat een simpele onpopulaire site nog niet alle gegevens versleuteld is geen goede zaak, maar als een dienst zoals Hi of WhatsApp met miljoenen gebruikers dat doet, dan ben ik in de war.

Trouwens, het eenmalig hashen met MD5 is onvoldoende! Er zijn al Rainbow Tables te koop die 99.9% voltooit zijn. Ook is er al een gratis variant opgedoken die al meer dan 65% compleet is! Oftewel tweemaal hashen is geen luxe meer :)
Oftewel tweemaal hashen is geen luxe meer
Ik zou eerst kiezen om gewoon een fatsoenlijk hashingalgoritme te gaan gebruiken. Denk aan SHA-2. En natuurlijk goede salts gebruiken. Daarna kan je altijd nog gaan denken om meerdere keren te hashen maar als je eerst gewoon stopt met MD5 gebruiken...

Bij MD5 zijn niet alleen rainbowtabellen een probleem maar ook zwakheden in het algoritme, cq een hoge kans op collisions.http://tweakimg.net/g/if/comments/button_submit.png

[Reactie gewijzigd door PolarBear op 23 juli 2024 17:23]

@PolarBear en AbAt: Ook voor 2x hashen (met hetzelde hashing algoritme om maar even een contrast te stellen met wat H!GHGuY hieronder stelde) zijn er, als ik af ga op wat ik hoor en lees, inmiddels gewoon rainbow tables beschikbaar. Ik zou (afhankelijk van de beschikbare hardware en CPU kosten van het algoritme) ergens boven de 64x gaan hashen. Natuurlijk is het in theorie dan nog wel mogelijk om een rainbow table op te stellen maar dat wordt dan in de praktijk ondoenlijk voor een paar jaar.
Anoniem: 125738 @Jeanpaul14521 mei 2011 15:05
64x hashen met MD5 kun je doen, maar dat is echt zwaar overbodig, en duurt veel te lang. 1x hashen met een SHA-2-algoritme (dus SHA-224, SHA-256, SHA-384 of SHA-512) is ruim voldoende, want die algoritmes zijn voorlopig nog lang niet gekraakt. De Amerikaanse federale diensten bevelen dan ook het gebruik van een van bovenstaande algoritmes aan. Het gebruik van SHA-1 is af te raden, want dat kan niet meer als veilig worden beschouwd.

Bron: http://nl.wikipedia.org/wiki/SHA-1
Hoewel het SHA-2 algoritme beter is dient hierbij ook een salt gebruikt te worden.

Met name deze salt zorgt ervoor dat rainbow tables nutteloos zijn, tenzij je deze voor de specefieke salt hebt. De kans hierop is echter zeer klein.

Overigens geldt dit voor elk hashing algoritme. Door de hash niet gelijk te maken aan de directe input (d.m.v. een salt) voorkom je al de meeste problemen.
Bedankt, ik denk dat ik binnen een maand (examens eerst) ofzo eens al mijn applicaties ga updaten van sha-1 naar sha-512 :)

[Reactie gewijzigd door azerty op 23 juli 2024 17:23]

Ik weet niet wat jij hoort en leest, maar veel succes met rainbow tabels op SHA-512 met een salt van een paar honderd karakters.
Ik hoop dat je bedoelt dat je dezelfde source data 2 maal met een verschillend algoritme hasht en niet de hash van het ene algoritme door een andere hash sleurt...
Ik vermoed dat je dit bedoelt, maar je post is hier niet duidelijk over en ik zou niet willen dat iemand het verkeerd begrijpt...
Dit is altijd al aan de orde geweest, maar nu veel meer mensen internet intensief gebruiken word het een issue.
Nu heeft ook je moeder en je buurman last van dit soort dingen, eerder (zeg ongeveer 5 jaar) was eigenlijk alleen het handige neefje die er last en weet van dit soort dingen had.
Nu de halve bevolking met smartphones + internetverbinding rondloopt worden veel meer mensen getroffen en dus is het nieuwswaardig en word duidelijk dat die dingen niet alleen handig maar ook een potentieel veiligheidsrisico in houden.
Dat jan en alleman een app in de diverse appstores kan zetten houd natuurlijk ook in dat alle apps van hetzelfde goede niveau zijn qua beveiliging.
En hoe populairder een programma, hoe meer mensen er in zitten te snuffelen naar fouten. Met of zonder goede bedoelingen.
Beveiliging is gewoon moeilijk en er zijn altijd wel situaties waar je niet aan hebt gedacht.. Vergeet niet dat sommige exploits zo ingenieus zijn dat je je afvraagt HOE ze het hebben kunnen vinden....

EN, het is niet iets van de laatste tijd...

[Reactie gewijzigd door SuperDre op 23 juli 2024 17:23]

Anoniem: 221425 21 mei 2011 09:47
Betekent dit dat je alleen de Whatsapp-berichten van een ander kan lezen, of kan je ze ook op die andere account versturen? :o

BTW: Gebruik al tijden geen Whatsapp meer. Wat een stroomvreter!
Dit betekent dat jij berichten kan versturen uit naam van het nummer welke je aan het spoofen bent.

Gezien het niet-zakelijke gebruik van whatsapp zie ik persoonlijk ook niet echt direct een groot gevaar.
Je moet namelijk wel de contacten kennen van diegene wiens nummer je overneemt.
Anoniem: 221425 @ErA21 mei 2011 10:15
Je moet namelijk wel de contacten kennen van diegene wiens nummer je overneemt.
Volgens mij is dat niet juist. Stel je hebt het nummer van een BN-er. Vervolgens voer je de 'hack' uit, en je wacht een poosje. Als die BN-er Whatsapp gebruikt, zullen er vanzelf berichten binnenstromen. Die kan je eenvoudigweg beantwoorden.
Een van deze gebruikers stelt dat de applicatie na het spoofen niet meer functioneert op de telefoon van de gespoofde gebruiker.
Als dit daadwerkelijk zo is kom je er dus snel genoeg achter dat WhatsApp niet meer werkt. Een dag gaat het wellicht nog goed, maar veel langer zal het niet ongemerkt blijven. Of de gespoofde gebruikt WhatsApp niet veel waardoor je dus weinig binnen krijgt als spoofer.
Mee eens van het stroom vreten, maar het is toch "gratis" sms/mms etc. Wat is een goed alternatief?
Email? En Google Talk draait ook al standaard op Android.
dan moet je PingChat eens proberen.. vreet nog 2x zoveel
Het was toch zo dat Whataapp naar jou een sms stuurde? Ipv andersom?

Of is het dus zo dat de sms gewoon van jezelf afkomstig is, van de app?
Hmmm dacht dat die code extern van Whatsapp kwam... Maar als de verificatie compleet in de app zit kun je die app ook hacken.

Edit inderdaad wordt bij de iPhone een sms gestuurd door de server van Whatsapp. Zie ook update webwereld

[Reactie gewijzigd door Rinzwind op 23 juli 2024 17:23]

WhatsApp stuurt jezelf een verificatiecode. Je kunt dat ook zien aan de afzender van het nummer. Eigenlijk wacht die gewoon totdat het SMSje ontvangen is en kijkt of de code en nummer overeenkomen. Zo ja, dan werkt het. Zo niet, dan krijg je een foutmelding. Niet de beste verificatie...
Ik beschouw dit toch een beetje als een symptoom van de lakse houding van app provider, google en apple ten opzichte van de privacy van de gebruiker. Natuurlijk is deze 'loophole' nooit de bedoeling geweest van de makers van Whatsapp (hoewel ze wel heel erg langzaam zijn met het onderkennen van het probleem).

Ik vind dat er per app info moet worden gegeven over de data die wordt verzonden en ook dat apple en google via de officiële wegen daar richtlijnen over moeten neerzetten. Gezien het business-model van google, verwacht ik toch dat ze van buitenaf moeten worden aangespoord.
Ik zie niet in wat Apple en Google te maken hebben met beveiligings problemen bij derde partijen.
Anoniem: 80466 21 mei 2011 09:42
Eerder al meldde beveiligingsonderzoeker ObAt aan Tweakers.net dat door op een netwerk het nerwerkverkeer mee te lezen de berichten van Whatsapp onderschept kunnen worden en dat hierbij ook de gebruikersnaam en het wachtwoord te zien zijn
Dat verhaal stond dan ook al een paar dagen geleden op WebWereld
http://webwereld.nl/nieuw...rs-en-chatberichten.html#
Verder vind ik het schadelijk dat een populaire dienst als Whatsapp niet meteen maatregelen neemt tegen deze fout.
Lijkt op IP verificatie: een praktijk die in de IT veel acceptatie vind: te makkelijk te spoofen.

Verder beetje storm in glas water. Een specifiek persoon (die je tel weet) ZOU eventueel je berichten kunnen onderscheppen, nou nou. Het wordt tijd dat mensen realiseren dat digitale communicatie in de regel niet discreet is. Je moet eens weten door hoeveel proxies je "vertrouwelijke" emailtje gaat. Daar zou ik me meer zorgen om maken dan de inhoud van mijn "ja ik ben er bijna" pingetje.

Op dit item kan niet meer gereageerd worden.