Hoofdcategorieën
Device Settings

Exploit in router-software DD-WRT gevonden

Door Willem de Moor, dinsdag 21 juli 2009 19:31
Submitter: Xblast, views: 21.848

De alternatieve, op Linux gebaseerde DD-WRT-firmware, die voor draadloze routers van onder andere Linksys beschikbaar is, blijkt een ernstig lek te bevatten. Een aanvaller kan de kwetsbaarheid misbruiken om root-rechten te verkrijgen.

De DD-WRT-firmware was tot voor kort gebaseerd op de firmware die Linksys met zijn routers meeleverde. Aangezien deze firmware op Linux gebaseerd was, moest Linksys de broncode ervan vrijgeven, die vervolgens door een levendige community werd aangepast tot DD-WRT. Met de goeddeels herschreven firmwareversie v23 is echter grotendeels van de Linksys-erfenis afgestapt. In v24 sp1 van de firmware blijkt echter een kwetsbaarheid schuil te gaan die eenvoudig misbruikt kan worden.

Het belangrijkste probleem met de nieuwste firmwareversie is dat de httpd geen metakarakters onderscheidt, waardoor commando's aan de daemon doorgegeven kunnen worden, en dat die commando's ook zonder fatsoenlijke gebruikersauthenticatie worden uitgevoerd. Die worden verergerd door het feit dat de httpd als root wordt gedraaid: middels een simpel commando in de webinterface kan zelfs een niet-ingelogde gebruiker zo root-rechten krijgen. Overigens dient de router wel naar externe commando's te luisteren. Standaard is dat niet het geval, maar dat kan met een tweede hack alsnog worden afgedwongen.

Hier had een filmpje kunnen staan maar je browser heeft blijkbaar geen flash-support of javascript is uitgeschakeld...
Volgende 20:41 Nieuwe defecten in Large Hadron Collider ontdekt
Vorige 18:36 Mushkin kondigt HD 4850-videokaarten aan
Advertentie

Reacties

«  1  2  »

Zal dit ook het geval zijn met de nieuwe v24 sp2 (beta), of alleen de sp1 versie? :?

Als sp2 al uitgebracht is: geen idee, maar waarschijnlijk wel.
Als sp2 nog uitgebracht moet worden: waarschijnlijk brengen ze die pas uit nadat dit gefixt is.

Vraag is of dit dan ook van toepassing is op Tomato bijvoorbeeld !

Met de goeddeels herschreven firmwareversie v23 is echter grotendeels van de Linksys-erfenis afgestapt. In v24 sp1 van de firmware blijkt echter een kwetsbaarheid schuil te gaan die eenvoudig misbruikt kan worden.
Lijkt me dus niet.

Tomato is een andere firmware voor dit soort routers, gebaseerd op HyperWRT. Het heeft dus eigenlijk weinig met dit geval te maken en je kan dan ook weinig zeggen hierover. Maar waarschijnlijk is deze kwetsbaarheid niet in Tomato aanwezig.

Dit zou volgens het dd-wrt forum gefixed zijn in svn.

http://svn.dd-wrt.com:8000/dd-wrt/changeset/12532

Al een geluk dat de exploit niet in de originele Linksys firmware zit.
De tweakers die DD-WRT draaien zullen wel snel patchen.

Best wel grappig dat net wat veel Linux gebruikers net een voordeel vinden hier als een nadeel uitkomt.

"Het is open-source dus het is veiliger want hierdoor worden fouten rapper opgespoord en iedereen kan het aanpassen." Idd, maar hier zie je dus dat als het open-source is en er een hoop mensen aan werken het niet altijd veiliger is, en door het open-source karakter kunnen er net rapper fouten misbruikt worden...

Best wel een slechte ontwikkeling... kan je opeens niet meer op internet... wie zou nu verwachten dat de oorzaak bij een router zou kunnen liggen..

Waarom zou het niet bij een router kunnen liggen? Daar is goede troubleshooting de uitkomst, kom je er snel achter dat het wel je router moet zijn.

Het voordeel is dat het nu wel snel kan gefixed worden (nog beter, er is al een fix).

Was het van MS dan zouden ze het ontkennen omdat er maar één youtube fimpje van bestaat en bij Apple zouden ze beweren dat het een feature is.

Persoonlijk gebruik ik linux omdat het verdomd stabiel is ;-)

Uhm, in een reactie van Tomsworld staat dat dit probleem al is gefixed in svn, het probleem is dus zeker snel opgelost, en software zonder bugs en beveiligingslekken bestaat niet, dit probleem is nu meteen gefixed toen het naar buiten is gekomen, dus ja, zeker een voordeel van open source. Als dit in software van bijv. MS had gezeten, werd deze exploit geheim gehouden en zou er misschien na een paar weken een security update komen, als ze de exploit al serieus genoeg nemen.

Even terug naar het artikel van gisteren over de exploit in de linux kernel. Linus Torvalds zegt, onzin, niet mijn probleem, maar toch zijn er anderen die het fixen, als je binnen een groot bedrijf werkt, en je manager zegt, onzin, niet mijn probleem, word de bug nooit opgelost (of heeft een veel lagere prioriteit waardoor het oplossen langer duurt)

De grootste vraag is nu wanneer ze een globale new release doen. Want zelfs mag dd-wrt meer iets voor de tweakers zijn. De meesten nemen een stable versie die zijn altijd ok.

De enige reden waarom ik een svn versie draai is omdat ze volop bezig zijn mijn router wrt610n te gaan ondersteunen en er nog veel stabiliteitsproblemen zijn.

Misschien releasen ze een SP2 als ze het ernstig genoeg vinden.

Als dit in software van bijv. MS had gezeten, werd deze exploit geheim gehouden en zou er misschien na een paar weken een security update komen, als ze de exploit al serieus genoeg nemen.
En als Microsoft het niet serieus genoeg neemt (of denken dat andere het niet gaan misbruiken) dan kunnen ze goed maanden niet patchen. Terwijl dit lek wel bekend is gemaakt aan Microsoft door de vinder van het lek. Microsoft had een paar jaar geleden een "gemiddelde patchsnelheid" van 134.5 dagen, hoe dat de dag van vandaag is durf ik niet te zeggen.


Uhm ?

Routing and Remote Access? ISA Server?

Staat ook vaak genoeg gewoon open met een publiek IP? Zou gewoon genoeg moeten zijn maar als er een lek inzit..

De doelgroep die een alternatieve firmware op zijn/haar router zet, weet in de regel iets meer van hun netwerkje af dan een "normale gebruiker" en zal na een tijdje troubleshooten de router wel als schuldige aan kunnen wijzen.

Deze exploit bewijst inderdaad wel dat open source niet gegarandeerd veiliger is dan closed source sofware.

[Reactie gewijzigd door Smiley op dinsdag 21 juli 2009 19:55]


Er wordt op veiligheidsgebied in de zin van meer/minder veilig weinig tot niets bewezen. In dit geval wordt er juist aangetoond dat bij het ontdekken van zo'n exploit er in no time een fix is. Sja, closed source kan dit ook wel. Het punt is alleen dat de kans hierop bij open source wat groter is gezien het open karakter. Datzelfde open karakter zie je ook weer terug wanneer men zo'n exploit ontdekt: de communicatie en alles er omheen is ook heel erg open. Bij closed source is dit laatste vaker ook een stuk geslotener omdat het dan ook eerder gaat om commerciële partijen die commerciële belangen hebben. In de open source wereld gelden die commerciële belangen niet zo (ze zijn er wel maar in de minderheid en veelal op andere gebieden, bijv. de support om de software heen). Commerciële partijen hebben meer belang bij een geslotener discussie wegens de commerciële belangen: simpelweg vertaald houdt dit in dat ze bang zijn dat klanten bij een te open discussie massaal afhaken en de verkopen inzakken. Als je voortbestaan daar van afhangt is dat een erg grote angst die dan de overhand neemt.

Uiteraard zijn er aan beide kanten (open/closed source, commercieel/niet-commercieel) natuurlijk uitzonderingsgevallen.

Overigens kan men de fix verkrijgen door de svn versie te pakken indien men hier erg veel belang aan hecht. Als er andere belangen spelen kan men er voor kiezen om op de stable release met het risico van een uitbuiting van de exploit te blijven zitten. Die keuze is nu aan de beheerder van het apparaat wat dd-wrt draait (zoals dat eigenlijk altijd het geval is) :)
Wat echter wel beschamend is, is het feit dat het httpd proces als root wordt gedraaid. Dat druist tegen iedere security guide van wie dan ook in, die raden deze manier van werken juist af. Dat is echter geen open source probleem maar een design flaw van dd-wrt zelf.

[Reactie gewijzigd door ppl op dinsdag 21 juli 2009 21:26]


daarom ook denk ik dat dit een ddwrt probleem is...

Open WRT draait iig onder een eigen HTTPd user... en de lua scripts draaien mogelijk wel onder de rootuser... - maar pas nadat je zelf bent ingelogt, en alleen zolang je sessie niet verloopt..

In dit geval wordt er juist aangetoond dat bij het ontdekken van zo'n exploit er in no time een fix is
En hoeveel nieuwe problemen introduceert die fix?
Welke tests zijn er allemaal uitgevoerd?

Dat is het punt waar altijd aan voorbij gelopen word.

Microsoft maakt ook heel snel fixes. (heb bij hun ook binnen een dag een fix gehad voor een probleem) maar die maken ze dan nog niet publiek beschikbaar omdat het eerst verrekte goed getest moet worden. (vooral in zoiets groots als een OS)

Eerst wordt het dus intern getest.
Dan krijg de klant waarvoor de fix gemaakt is 'm.
Dan gaat het door een nog veel groter testtraject.
Klanten met een duur support contract 'm krijgen 'm dan als ze exact hetzelfde probleem hebben, en ze het echt hard nodig hebben. Uiteraard in zeer nauwe samenwerking met MS voor het geval de fix problemen veroorzaakt.
Als dan alle testtrajecten doorlopen zijn, dan wordt de fix pas publiek beschikbaar gesteld.

Vanzelfsprekend kan je dat traject niet in 1 dag doorlopen.
Dat is allemaal geen rocket science en behoorlijk logisch!

en dit zie je dan ook direct terug in de stabiliteit van Microsoft systemen..... :P

Ik zeg, doe mij maar geen test-cyclus... mijn Debian Sid/Unstable werkt beduidend stabieler dan alle Windows versies die ik tot nog toe gebruikt heb....

Alsof dit de eerste keer is dat huis-tuin-en-keuken-routers het doelwit zijn van aanvallen? Zie bijvoorbeeld ook: nieuws: Botnetworm infecteert modems en routers
En dat was echt niet alleen gericht op alternatieve firmware die door een of andere community ontwikkeld is, maar ook de af-fabriek firmware. Weliswaar ook Linux en het open source karakter maakt het vinden van zwakheden misschien wat makkelijker, maar ook met een beperkt ontwikkelteam van de fabrikant zelf ben je niet zeker van je zaak.

En wat betreft je laatste opmerking: de kans dat de aanvaller jouw verbinding om zeep helpt is denk ik niet bijster groot, dat is namelijk wel zo'n beetje het meest opvallende (en dus stomme) wat hij kan doen. De kans dat jij namelijk de router reboot (en daarmee al dan niet tijdelijk het probleem oplost) is dan toch best wel groot. Want zeg nou zelf, als al je machines niet meer online kunnen is je router toch de eerste plek waar je gaat kijken? De mensen die DD-WRT draaien zijn over het algemeen waarschijnlijk ook niet de minst ervaren gebruikers.

Hoe dan ook, wel een ontzettend kwalijke en slordige fout. Op zo'n manier untrusted input klakkeloos uit laten voeren door een proces dat onder root draait is niet iets waar je als programmeur trots op kan zijn :X :X

cyf3r, het is me dan ook direct duidelijk dat jij nog nooit met linux hebt gewerkt. Je hebt echt geen idee wat je schrijft. ;)

Sowieso wordt dit nog niet eens op grote schaal misbruikt, en de mensen welke graag DD-WRT gebruiken die weten wss wel dat ze moeten patchen.
offtopic:
Ik gebruik zelf liever OpenWRT voor de hacks/mods. En Tomato op mijn routers.

[Reactie gewijzigd door KingOfDos op dinsdag 21 juli 2009 20:33]


cyf3r probeert duidelijk te maken dat in dit geval deze exploit is ontdekt omdat de source code publiekelijk beschikbaar is. Een hoop open source aanhangers claimen dat dit juist goed is, omdat op deze manier ook de good guys deze exploits kunnen ontdekken en fixen. Maar ook de bad guys kunnen dit, en omdat ze de source code hebben gaat dit vele malen sneller. Dat is best wel een risico.

Vergeet niet dat de bad guy niemand zal inlichten van zijn ontdekking, of uberhaupt een fix er voor te maken.. Leuk dat mensen die deze software gebruiken weten hoe ze kunnen updaten, maar wat heb je daaraan als je niet eens weet dat er wat aan de hand is? Sterker nog, hou jij elke bugtraq in de gaten om te kijken over exlpoits zijn ontdekt of gefixed?
Tegen die tijd is het misschien al te laat.

Natuurlijk zitten er in closed source applicaties ook bugs en exploits, maar die zijn wel een stuk moeilijker te vinden. Dus feitelijk maakt het allemaal niets uit.

Dat risico is echter niet veel anders als bij closed source. Het punt zit hem namelijk in het feit dat software altijd wel bugs bevat. Iedereen die er ook maar iets van af weet (zelfs gebruikers!) weten dat ook. Dat hele closed of open source gebeuren maakt daarom ook bar weinig uit, men weet dat er bugs zijn en gaan er dan ook actief naar op zoek. Kijk maar eens naar de trackrecords van Windows en Internet Explorer. Op OS en browser gebied zijn dit volgens mij de 2 systemen met zo'n beetje de meeste security bugs t.o.v. de concurrentie en beiden zijn closed source.

Bugs vinden in source code gaat niet zo heel erg makkelijk. Het is niet een kwestie van ff de source lezen en daarna direct aanwijzen waar de bug zit. Als dat zo was dan zouden er niet bugs worden ontdekt die soms wel jaren ongemerkt voorbij zijn gegaan. Op UNIX gebied (daar bedoel ik overigens niet alleen UNIX mee, ook de UNIX gerelateerde systemen) zijn er hier toch een aantal van geweest. Bughunten is iets wat je doet door de dingen aan tests te onderwerpen en te kijken wat eruit komt. Die source code is dan misschien iets wat je wat verder kan helpen maar het maakt het niet meteen een peuleschilletje van zoals het een beetje uit jouw reactie blijkt. Bugs opsnorren is nog best een lastige taak. Er zijn niet voor niets diverse tests die men op een stuk software afvuurt en wat inmiddels een heel eigen beroep is geworden (kijk maar eens naar de eisen om als tester aan het werk te mogen gaan of welke cursussen je bij de belastingdienst nog moet volgen om daar als junior tester aan de slag te mogen gaan).

Overigens kan een bad guy ook prima anderen in zijn scene inlichten over die bug. Soms kan een collectieve aanval leuker zijn dan eentje in je uppie. Natuurlijk ligt het e.e.a. ook aan de doelen je die je voor ogen hebt als bad guy zijnde (1 usertje jennen of botnets maken of iets anders).

Ach, smaken verschillen.

Zelf heb ik een voorkeur voor Linux-routers vanwege de ip-filters. Ook het open source vind ik een voordeel, omdat de firmware aan te passen is. Voor mijn smaak heeft een router waarvoor DD-WRT geschreven is te weinig geheugen om lekker te kunnen werken. Meer geheugen betekent ook meer ruimte voor een goede webserver of gewoon ssh en een fatsoenlijke security structuur.

Een router als DD-WRT zou ik overigens van buitenaf dichtzetten. Volgens mij is dat ook standaard. En dat is algemeen toepasbaar voor routers. Daarmee is dit lek (en de eerdere root-inlog-exploit) slechts via een omweg bruikbaar.

Een admin of hardwareleverancier die dat niet weet levert mij geen router.

Om die reden is het verbazend dat tegenwoordig ADSL-modems soms wel van buitenaf geconfigureerd kunnen worden. "Service" heet dat geloof ik...

Best wel een slechte ontwikkeling... kan je opeens niet meer op internet... wie zou nu verwachten dat de oorzaak bij een router zou kunnen liggen..

Zou misschien wel eerste ding zijn waar ik naar kijk moest ik plots geen internet meer hebben.

Hmm welke versie zit die hack niet meer in..

Aangezien alleen sp1 nog op hun site staat.
En om nu een svn release te builden moet ik eerst weer een linux systeem opbouwen voor een buildroot..
Hopelijk releasen ze snel sp2

[Reactie gewijzigd door Tito129 op dinsdag 21 juli 2009 20:06]


Ik draai al enige tijd SP2 beta.
Gaat prima.

Dus dit betekent dat de router vanuit het internet gehackt kan worden, of alleen vanaf binnen een netwerk?

Als ik het artikel lees, zou ik inderdaad zeggen dat deze vanaf het internet gehackt kan worden.

Dat ligt er aan of de externe beheer interface open staat of niet. Als die open staat kan het vanaf buiten, als die niet open staat kan het alleen vanaf binnen. Maar het is natuurlijk niet bijster ingewikkeld om een onwetende gebruiker op een slinkse manier op een linkje te laten klikken wat de aanval van binnenuit uitvoert (want meer dan het juiste linkje openen is het in feite niet).

Zie ook het verhaal over Cross Site Request Forgery waarnaar verwezen word in het artikel en de post op het dd-wrt forum :)

Achja ik wacht wel tot SP2 uit is :P.

Draai nu nog een versie van november 2008 op mijn WRT160N maarja om nou bij elke build te updaten, kheb er geen problemen mee nu.

jij bent maf

Je gaat je router toch updaten met zo'n veiligheidslek? Alsof dat moeilijk is zeg.
Dat jij er geen problemen mee hebt vinden crackers alleen maar leuk...

Voor zover ik uit het bericht kan halen komt het alleen in v24 sp1 voor en niet de voorgaande...

(maar ik kan het natuurlijk fout hebben, misschien dat iemand anders daar uitsluitsel over geven kan..?)

Zo ik heb hem dan maar een keer geupdate, naar build build 12188.


Een keer in het half jaar updaten van mijn Router Firmware kan wel :P.

Heb ik gisteren (21 juli) ook gedaan. Het vreemde is nog, had eerst met firefox geflashed en tijdens het flashen kwam ik er achter dat firefox niet zo goed is met flashen van dd-wrt. En toen er stond unit is rebooting now kreeg ik gewoon te zien dat ik sp1 erop had :? . Bleek ook dat de firmware chip beschadigd was of dat hij niet goed de config kon lezen als ik het zo las bij WallWatcher(syslogd). Alhoewel, gelijk opnieuw geflashed met Internet Explorer en deed hij weer hetzelfde, gaf hij sp1 aan :?. Toen heb ik het stroom even eraf gehaald van de router en ja hoor SP2!

Moet alleen nog even vpn testen want daar heb ik zo mijn twijfels over.
«  1  2  »

Op dit item kan niet meer gereageerd worden.

Volgende 20:41 Nieuwe defecten in Large Hadron Collider ontdekt
Vorige 18:36 Mushkin kondigt HD 4850-videokaarten aan
VNU Media logo Hosted by True

© 1998 - 2012 Tweakers.net B.V. - Alle rechten voorbehouden - Contact - Jouw privacy - Algemene Voorwaarden

Uitgever van:

Website van het jaar 2011