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 , , 19 reacties

Door een fout in de bta-site van Facebook was het mogelijk een ongelimiteerd aantal keer een resetcode voor wachtwoorden in te voeren. Met simpelweg het telefoonnummer of e-mailadres van een lid van het sociale netwerk kon de zescijferige code via bruteforce achterhaald worden.

Wie zijn wachtwoord op Facebook vergeet kan deze resetten door zijn telefoonnummer of e-mailadres in te vullen. Facebook stuurt dan een zescijferige resetcode ter authenticatie. Na 10 tot 12 keer verkeerd invoeren vervalt die code, om te voorkomen dat een kwaadwillende via bruteforce alle mogelijke codes probeert en onbevoegd het wachtwoord kan veranderen.

Bij beta.facebook.com en mbasic.beta.facebook.com bleek er echter geen limiet te staan op het aantal keer invoeren van die code, ontdekte Anand Prakash, een Indiase 'bugbountyhunter'. Hij slaagde er met behulp van de Burp Repeater-tool na een groot aantal pogingen in om de juiste resetcode te achterhalen om het wachtwoord van zijn eigen account te veranderen. Volgens hem had dit bij elk account gekund.

Facebook erkende de fout, herstelde deze en kende Prakash een bedrag van 15.000 dollar toe voor zijn ontdekking.

Moderatie-faq Wijzig weergave

Reacties (19)

Het is niet voor niets een bta site. Goed dat ze dit wel opgelost hebben :)
Het is niet voor niets een bta site. Goed dat ze dit wel opgelost hebben :)
Als FaceBook test driven development zou doen, zou deze bug niet door de geautomatiseerde tests zijn gekomen.

Beveiligingsfeatutes moeten naar mijn idee altijd geautomatiseerd getest worden, of het een beta betreft of niet.

En zonder het slagen van die tests zou m.i. de site niet gepuliceerd mogen. Zelfs FaceBook medewerkers zouden immers niet bij accounts van anderen hogere privileges moeten hebben, toch?
Ben ik wel met je eens ;) Aangezien het wel een potentieel gevaar is, zeker als je je Facebook inlog voor meerdere services gebruikt.
Wel is het een bta dus dan dien je toch enigzinds rekening te houden met dit soort risico's/fouten?
Je hoeft geen TDD te hanteren om tests te schrijven voor je code.
Helemaal mee eens, regressie testen van je security onderdelen of unit tests voor de security features zou ook kunnen.

Maar eigenlijk vindt ik het vandaag de dag not done om niet TDD te werken. Je wilt toch weten dat de code die je commit leverd wat je afspreekt? En dat je het werk van anderen niet breekt? En anderen jouw code niet buggify-en?

[Reactie gewijzigd door djwice op 8 maart 2016 20:58]

Het punt is dat het niet zomaar een bta site is, het draait tenslotte op de productie omgeving met echte data. Wat gewoon ronduit dom is..
Klopt ook wel, ik verdedig het ook niet.
Leuk verdienen voor zo'n indiase man, 20 bugs int jaar en hij hoeft na 10 jaar nie meer te werken :+
10 jaar? 1 jaar is voldoende ;)
20 bugs in een jaar en hij heeft na een jaar al 300k. Bij een rendement van ca. 4% kan hij 12k per jaar opnemen zonder dat het vermogen slinkt. Volgens mij ben je in India dan redelijk financieel onafhankelijk

[Reactie gewijzigd door NovapaX op 8 maart 2016 10:26]

Met een inflatie van bijna 4% slinkt zijn vermogen.
Met de rentestanden daar valt dat dan wel weer mee...
http://www.tradingeconomics.com/india/interest-rate

Het ging mij meer om het idee dat 10 jaar niet nodig is, maar een jaar al genoeg zou kunnen zijn ;)
(en dat ik dan daarbij een link zou kunnen geven naar een, in mijn ogen, zeer nuttig en leerzaam topic)

[Reactie gewijzigd door NovapaX op 8 maart 2016 12:36]

en het belangrijkste is niet vermeld:
kon je deze bug benutten op de beta website, om in accounts te geraken die geen gebruik maken van de beta website?
maw, zijn de accounts gedeeld over de beta en gewone site of zijn dit aparte accounts voor beide websites?
De BETA maakt gebruik van real-time data. Dus dezelfde data als op facebook.com. M.a.w.: alles is gewoon live en dus op beide websites te gebruiken.
nogsteeds is het mogelijk om accounts te kapen 'cracken' doormiddel van Sentry MBA.
denk niet dat dit zo snel opgelost wordt.
2 stage authentication, of ingewikkelde wachtwoorden.
Beide goede oplossingen tegen brute force aanvallen....
De reden waaorm dat uit staat is wellicht omdat ze tijdens het testen iedere keer die blocks zat worden.

Zal wel direct uit dev komen en niet aangepast zijn bij een commit.
Bam, even 15.000 dollar verdient. Leuk als je hier goed in bent en de bedrijf je erkentelijk zijn als je een bug vindt :)
Facebook erkende de fout, herstelde deze en kende Prakash een bedrag van 15.000 dollar toe voor zijn ontdekking.

KASSA!
Was er niet een meld plicht voor bedrijven in het leven geroepen door de EU ?!
Gezien dit al een dikke maand bekend is..

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