MikroTik repareert privilege-escalationbug die 900.000 routers treft

MikroTik heeft vorige week stilzwijgend een patch uitgebracht voor zijn RouterOS-firmware waarmee een ernstige kwetsbaarheid werd gerepareerd. De privilege-escalationbug trof zo'n 900.000 routers.

De kwetsbaarheid wordt getrackt als CVE-2023-30799 en krijgt een CVSS-score van 9,1. Die is inmiddels gerepareerd in MikroTiks RouterOS Stable-versie 6.49.7 en hoger en lts-release 6.48.6 en hoger. De patch is geruisloos doorgevoerd zonder dat MikroTik daar aandacht aan heeft besteed. Securitybedrijf VulnCheck heeft details opgeschreven over de bug. De VulnCheck-onderzoekers zeggen dat via zoekmachine Shodan meer dan 474.000 apparaten benaderbaar zijn die kwetsbaar zijn, maar routers kunnen ook via MikroTiks Winbox-client worden beheerd en op die manier zijn in totaal 926.000 apparaten kwetsbaar.

De kwetsbaarheid is een privilege-escalationbug. Daarmee kunnen gebruikers zichzelf van een normaal adminaccount verheffen tot een Super Admin-niveau. Daarmee kan een aanvaller volledige toegang krijgen tot het besturingssysteem van RouterOS. De onderzoekers hebben inmiddels ook een proof-of-concept uitgebracht waarin ze aantonen hoe het lek kan worden misbruikt.

Om de bug uit te buiten, is het wel nodig dat aanvallers al toegang hebben tot een normaal adminniveau. VulnCheck zegt dat dat echter niet moeilijk is; RouterOS heeft standaard een adminaccount ingeschakeld en tot oktober 2021 was het standaardwachtwoord daarvoor een lege string.

Door Tijs Hofmans

Nieuwscoördinator

27-07-2023 • 09:26

48

Submitter: The Ghost

Reacties (48)

48
48
26
1
0
14
Wijzig sortering

Sorteer op:

Weergave:

Misschien interessant om ook de informatie van MikroTik zelf er bij te zetten: https://blog.mikrotik.com/security/cve-2023-30799.html

Het is een bug terwijl je al admin rechten hebt.
Dus ook al patch je de bug, dan heb je nog genoeg rechten om een herinstallatie te doen met oudere versie die nog kwetsbaar is.
De opmerking dat het makkelijk is om admin toegang te krijgen gaat me wat ver. Oke dus het wachtwoord was standaard leeg. Maar dat is toch common sense om er een op te zetten. Het is een beetje alsof je zegt dat een Gazelle fiets makkelijk te stelen is omdat hij standaard niet op slot staat.
Mensen zijn lui, even default/leeg laten zodat we dit kunnen opzetten is makkelijker; maar daarna vergeten toch je wachtwoord resetten en zo snel gemaakt ;)

Toch maar een default randomiseerde wachtwoord, dus.

[Reactie gewijzigd door ilaurensnl op 23 juli 2024 10:48]

Een mikrotik router is nou niet echt iets voor de luie mens.
Als door vreemde omstandigheden het ding op fabrieksinstellingen komt, heb je een lek.
Ook bij het installeren, ben je ook even lek.
Las elders, dat ook NASA een klant is van dit merk.
Nieuwere producten hebben tegenwoordig een random password op de sticker. Want dit is verplicht in de EU via een nieuwe wet.
Ik vind het bloedirritant. Als je die sticker kwijtraakt of beschadigd raakt om wat voor reden kun je je router niet meer in zelfs niet na een reset. Plus iedereen met fysieke toegang tot de router kan er vervolgens ook op inloggen. Probleem is namelijk dat wanneer een router een random pass heeft dat veel mensen denken dat ze die niet meer hoeven aan te passen. Eigenlijk is dat nog niet echt veilig. Beter is het om geen wachtwoord te hebben na reset en dat het apparaat verder dienst weigert tot het wachtwoord is aangepast.
Volgens mij kun je via netinstall nog steeds om dit wachtwoord heen.
met andere woorden: fysiek toegang nodig tot de router te herstarten voordat netinstall uitgevoerd kan worden?
Dat is sowieso al wenselijk lijkt me. Tenzij je remote serial console hebt.
De opmerking dat het makkelijk is om admin toegang te krijgen gaat me wat ver. Oke dus het wachtwoord was standaard leeg. Maar dat is toch common sense om er een op te zetten.
Ja. Je zal alleen de beheerders de kost moeten geven die 'gewoon' met het standaard wachtwoord blijven werken. Want dat is zo makkelijk.

Ik heb in het verleden vaker apparatuur van klanten overgenomen van andere beherende partijen, en als ik voor elke keer dat daar een standaard wachtwoord op stond ingesteld een euro zou krijgen zou ik daar onderhand een leuke auto voor kunnen kopen.

Bizar ja, mee eens. Maar op het geval van security kijk ik na bijna 25 jaar in de IT nergens meer van op. Zelfs anno 2023 zie je nog altijd dingen op dat vlak die in 2000 al niet meer konden, laat staan nu.
Het is meer te vergelijken met een fiets waar je wel een slot voor krijgt, maar je dan eerst zelf een sleutel voor moet laten maken. Dan zullen er ook veel meer mensen zijn die de fiets dan maar even van het slot laten staan als ze naar de winkel gaan.
Een betere vergelijking: Een Gazelle fiets is makkelijk te stelen, omdat hij standaard met een blanco sleuteltje open gaat.
Ja, dit argument heb ik eerder gehoord.

Standaard geen wachtwoorden of standaardwachtwoorden is een fenomeen dat je in IRIX veel tegenkwam... in de jaren 90... het is inmiddels 2023 en Linux doet dit soort onzin al niet meer sinds eind jaren 90 (voor zover ze dit ook deden).
De patch is geruisloos doorgevoerd zonder dat MikroTik daar aandacht aan heeft besteed.
Wellicht begrijp ik het verkeerd, maar moet ik hieruit opmaken dat MikroTik dus de upgrade op alle routers uitvoert, en dat dat dus niet door de beheerder van de router gebeurt? Dat kan toch haast niet kloppen, dan zou je als beheerder er geen controle over hebben qua tijdstip enzo?

Of, en dat hoop ik dan maar, wordt hier bedoeld dat MikroTik deze in een reguliere patch heeft gestopt zonder hier ruchtbaarheid aan te geven, maar moet de patch wel door de lokale beheerder uitgevoerd worden?

Maar waarom de release van die patch stilhouden? Het lek was immers al bekend sinds juni vorig jaar:
CVE-2023-30799 was first disclosed, without a CVE, in June 2022 at REcon by Margin Research employees, Ian Dupont and Harrison Green.
Dan wil je als leverancier toch juist wél bekend maken dat je een lek gedicht hebt, door het op zijn minst in de release notes op te nemen?

[Reactie gewijzigd door wildhagen op 23 juli 2024 10:48]

Dat is niet perse waar. Als de onderzoekers hun exploit geheim houden kun je aan de hand van de verschillen vaak alsnog ontdekken wat de kwetsbaarheid was. Bugfixes & improvements kan dus best wel wat tijd schelen ten op zichtte van "Patch for 9.1 critical RCE"
Met geruisloos bedoeld men dat men updates uitbrengt zonder te vermelden wat men precies aangepast heeft, er staat dan bijvoorbeeld iets vaag in als "various security fixes" maar dit gaat niet over hoe die updates uitgerold worden.

Het tegenovergestelde is dat je in de patchnotes expliciet vermeld wat je juist aangepast hebt, mails naar alle klanten stuurt met de vraag zo snel mogelijk up te daten en nog een persbericht de wereld instuurt ook.

Het probleem bij zeer ernstige lekken is dat het moment de wereld weet dat het lek bestaat de wereld begint te zoeken naar exploits. En eenmaal de update uitgebracht is, wees maar zeker dat die update een reverse engineering krijgt om te achterhalen hoe je het juist kan misbruiken terwijl het tijd kost voor de update overal geinstalleerd geraakt.

Dus indien je met een ernstig lek zit maar enkel jij weet ervan en je bent vrij zeker dat het niet actief misbruikt word is de strategie vaak geruisloos updates uitbrengen en pas op een later tijdstip communiceren. Waarom later nog communiceren? Om zeker te zijn dat alle security teams dubbel checken dat die update overal geinstalleerd is.

Overigens zijn de eerste updates voor dit issue al in 2022 uitgerold.
Of, en dat hoop ik dan maar, wordt hier bedoeld dat MikroTik deze in een reguliere patch heeft gestopt zonder hier ruchtbaarheid aan te geven, maar moet de patch wel door de lokale beheerder uitgevoerd worden?

Maar waarom de release van die patch stilhouden? Het lek was immers al bekend sinds juni vorig jaar:
Zie mijn andere reactie. Het is (ook) een patch voor de beveiliging van MicroTik's ecosysteem tegen de gebruiker. Door dat stilletjes door te voeren hopen ze jailbreaking op zoveel mogelijk routers te voorkomen.

[Reactie gewijzigd door The Zep Man op 23 juli 2024 10:48]

Ja maar kunnen hun op afstand. Dus alle routers patchen? En dan ook nog zonder melding? :'(
Nee, je moet een update wel zelf installeren.
Maargoed zoals gewoonlijk is er eigenlijk in heel veel gevallen dus helemaal niks aan de hand. Je moet al toegang hebben tot het systeem in de vorm van adminrechten anders is er dus helemaal niks aan de hand. Dit is wel anders bij grote ict bedrijven waar meerdere mensen op verschillende niveaus in routers kunnen komen. Het is goed dat ze het patchen maar voor de normale eind gebruiker is er dus weinig aan de hand als je iig wel je password hebt aangepast bij de eerste setup
Maar dit is dan toch te brute force.
Ik snap de hoge score niet?
Je moet al toegang hebben tot de router zelf (hebben vele echt de toegang tot zijn routers wagenwijd open staan zonder firewalls?) en je moet het admin wachtwoord weten (wat blijkbaar standaard leeg is, waarom zou je dat niet aanpassen?)

pas dan kun je in de routers komen en er in de firmware mee gaan rommelen? Als je aan beide voorwaarde voldoet (toegang+bekend admin wachtwoord) is dat niet al kwalijk genoeg?

[Reactie gewijzigd door ETH0.1 op 23 juli 2024 10:48]

Bor Coördinator Frontpage Admins / FP Powermod @ETH0.127 juli 2023 10:21
Als je op een router 'binnen' bent heb je een makkelijke manier om netwerk configuratie aan te passen, andere device aan te vallen, een mogelijkheid te creëren om toegang te houden etc.
Maar dat is altijd al het geval. Als je mikrotik zonder firewall rechtstreeks aan het internet hangt en je admin wachtwoord is leeg. Dan kunnen ze altijd al het verkeer sniffen, scripts draaien en firewall rules aanpassen om verkeer te herrouteren, of de router als jumpbox gebruiken om verder in het netwerk te komen.

Dit lek zorgt er alleen voor dat ze verder in de router kunnen komen en daar wijzigingen aanbrengen in de firmware, een soort van rooten van je telefoon
Waarschijnlijk omdat het aantal kwetsbare apparaten zo hoog is?
Ik kan mij niet voorstellen dat er 900.000 mikrotiks aan het internet hangen zonder firewall en zonder wachtwoord
Ik vind dat mikrotik het best netjes doet ook. Gewoon geen wachtwoord bij setup maar wel het eerste scherm wat je ziet voordat je kunt configureren is aangeven om een wachtwoord in te stellen. Als je dan dit venster gewoon wegklikt... Ja dan is het je eigen schuld ook. Hij blijft volgens mij ook de melding geven iedere keer als je inlogt tot je het ww veranderd hebt
Nee zo werkt CVSS niet. Je kunt hier de uitleg van de score zien.

https://www.first.org/cvs...PR:H/UI:N/S:C/C:H/I:H/A:H

Ze hebben aangegeven dat je met het misbruiken van deze kwetsbaarheid alles kan met de router. Maar met dezelfde credentials kun je in praktische zin hetzelfde. Scripts toevoegen, gebruikers toevoegen, verkeer herrouteren etc.
Ik vind het artikel een beetje moddergooien naar Mikrotik. Als je een apparaat van ze koopt dan moet je er al een keer op inloggen tenzij je tevreden bent met de default config (en de handleiding negeert)
De eerste keer inloggen wordt meteen gevraagd om het wachtwoord te wijzigen.
Verder is deze exploit dus alleen mogelijk als je al admin bent. Waarom deze gevaarlijk is, is omdat men dan op kernel niveau code kan draaien, zelfs als admin kun je dan niet zien wat er gebeurt. Denk aan calls naar een command & control server e.d.
Ik vermoed dat jailbreaken niet echt een factor is in dit verhaal, want je verliest eerder aan functie dan dat je die erbij krijgt als je een ander OS draait op hun routers. Daarbij komt dat je op de nieuwe modellen zelfs Docker containers kunt draaien
eens, wordt wat zwaar aangezet, als HP & Cisco zoiets hebben dan hebben ze ook als antwoord dat het 1st wat je bij een installatie doet, is de defaults overschrijven
RouterOS heeft standaard een adminaccount ingeschakeld en tot oktober 2021 was het standaardwachtwoord daarvoor een lege string. :(

Gepruts....
Mwa, heel handig is het niet, maar 'gepruts :( ' gaat me wat ver. Bij de eerste inlog word je gevraagd om een wachtwoord voor het admin account in te stellen, dus uiteindelijk heb je als gebruiker ook zitten slapen als je dacht dat het een goed idee was om die leeg te laten.
Veel van deze kastjes worden gewoon automatisch voorzien van een config. Voor wie hem ambachtelijk inricht is een zeer heldere setup beschikbaar die uitlegt dat je wel degelijk een admin wachtwoord in moet stellen.

Je kunt altijd Welkom01 instellen en je moet altijd je vooringestelde wachtwoord aanpassen. Mikrotik routers doen 9/10 keer toch niet wat je wil als je ze uit het doosje aansluit. In tegenstelling tot veel IOT devices bijvoorbeeld.
Bor Coördinator Frontpage Admins / FP Powermod @MiesvanderLippe27 juli 2023 13:10
Een groot deel van het punt is dat het admin wachtwoord tot oktober 2021, nog niet zo heel lang geleden dus, standaard leeg was en dat het standaard admin account by default ingeschakeld was en bleef tenzij je hier zelf actie ondernam. Dat is zeer kwalijk en worst practice op het gebied van security. Mensen die de router hebben geplaatst voor okt 2021 lopen het risico dat ze alsnog een kwetsbare setup hebben.

Die situatie die jij beschrijft is van na okt 2021.

[Reactie gewijzigd door Bor op 23 juli 2024 10:48]

Beetje raar bericht.
Ze zitten al op versie 7.10, dus 6.x is vrij oud.
Daarnaast, als je Mikrotik koopt, weet je wat je doet, toch?
Dit is niet echt consumenten spul meer.
En in de "First Time Configuration" handleiding:
https://help.mikrotik.com.../First+Time+Configuration
Adviseren ze HEEL sterk de standaard config te verwijderen en admin account te verwijderen.
Versie 6 is de long term release, dus genoeg routers zullen daar gewoon nog op draaien. Daar is niets mis mee.
De VulnCheck-onderzoekers zeggen dat via zoekmachine Shodan meer dan 474.000 apparaten benaderbaar zijn die kwetsbaar zijn, maar routers kunnen ook via MikroTiks Winbox-client worden beheerd en op die manier zijn in totaal 926.000 apparaten kwetsbaar.
Dat is waarschijnlijk nog exclusief alle devices waar de standaard Winbox port is aangepast. Op z'n minste zou je iets van port knocking moeten doen, maar beter nog sta je router beheer alleen toe op het interne IP van de router (remote dmv VPN).
Voor de tech specialisten : Het staat uiteraard buiten kijf dat zo’n bug gerepareerd moet worden.
Maar hoe gevaarlijk is dit? Ik bedoel je computer praat doorgaans met het internet via een TLS verbinding. Waarbij de data versleuteld is en door middel van de public key infrastructure je computer weet met wie hij praat.
Je hebt opeens een extra gebruiker in je netwerk die kwaad in de zin heeft. De router kan als opstappunt gebruikt worden om vervolgens andere machines aan te vallen en te besmetten met malware/keylogger/kiesiets.
Een computer praat doorgaans niet direct via het internet (heeft dan alleen een lokaal IP-adres, zoals 10.x.y.z of 192.168.x.y bijvoorbeeld, die zelf niet naar het internet kunnen), tenzij het een publiek IP-adres heeft. Om een PC met een lokaal IP-adres dan toch toegang te kunnen geven tot het internet (omdat het een fysiek ander netwerk is meestal) kan dat o.a. met een router.

Een router zit dus op de verbindingsketen tussen de computer (het lokale netwerk) en het grote boze internet (het "publieke" netwerk), je kunt het enigszins vergelijken met een sluis. Nu is hier al wel meer voor nodig om dit überhaupt te kunnen doen, maar ook een router kan best eea afkijken natuurlijk en doordat het tussen de PC en het internet in zit, kan dat op zich relatief simpel. Als je als kwaadwillende dus toegang hebt, kun je vervolgens van alles doen en informatie stelen of aanpassen bijvoorbeeld.

Bij een privilege escalation bug, verkrijg je dus uiteindelijk meer rechten dan dat je aanvankelijk (al) had en kun je dus uiteindelijk meer. https://en.wikipedia.org/wiki/Privilege_escalation

[Reactie gewijzigd door CH4OS op 23 juli 2024 10:48]

De kwetsbaarheid was al bekend in juni 2022. Een proof of concept is hier te vinden.

Het lijkt erop dat MicroTik deze patch uitbrengt vanwege dat je een eigen router hiermee kan jailbreaken. Het betreft dus een kwetsbaarheid voor de fabrikant, niet de gebruiker. Immers moet je al admintoegang hebben op de router, en bij een succesvolle aanval op een dergelijk niveau zit je met grotere problemen dan dat deze gejailbreakt kan worden.

[Reactie gewijzigd door The Zep Man op 23 juli 2024 10:48]

Als dat de reden zou zijn, wat zou men weerhouden om dan een downgrade uit te voeren tot de versie waar het nog wel werkt. Tenminste het lijkt er op dat je kan downgraden tot de versie van de fabrieksinstellingen.
En wat is precies het probleem met jailbreak en? Volgens mij is de software toch al best open wat betreft dingen die je kunt installeren en alles wat je kunt instellen. Er zit volgens mij niet echt een verdienmodel aan router os voor de eindgebruiker. Dus als die er iets anders opzetten... Wat maakt dat dan uit vraag ik me af. De veiligheid zal vast in het geding komen. Maar uiteindelijk is dat het probleem van de gene die er customfirmware op zet

[Reactie gewijzigd door sygys op 23 juli 2024 10:48]

En wat is precies het probleem met jailbreak en?
Als ik een apparaat niet kan "jailbreaken"* dan wil ik het niet kopen want het zal nooit mijn eigendom zijn maar altijd blijven werken voor de fabrikant.

Steeds meer fabrikanten behandelen de gebruiker als een vijand die zo kort mogelijk gehouden moet worden. Daar zijn verschillende redenen voor. De beste reden is nog wel dat ze zich schamen voor hoe rot hun software van binnen is en dat niet aan de gebruiker willen laten zien. Slechtere redenen zijn om de gebruiker te bespioneren zodat je de data kan verkopen of om te voorkomen dat gebruikers een ad-blocker installeren.

* wat een afschuwelijk woord is voor "je eigen apparatuur gebruiken zoals je dat zelf wil".
"jailbreaken"*

[...]

* wat een afschuwelijk woord is voor "je eigen apparatuur gebruiken zoals je dat zelf wil".
Het is in dit geval een geuzennaam die voortborduurt op wat een jail in de technische zin is, nl. een vorm van OS-level virtualization en containerization.

Op dit item kan niet meer gereageerd worden.