Begin september 2026 maakte CERT Polska een keten van RouterOS-kwetsbaarheden bekend onder de naam MikroTrick. Twee van de zes gevonden kwetsbaarheden zijn kritiek: in combinatie geven ze een aanvaller zonder inloggegevens volledige controle over een MikroTik-router, mits SSH vanaf het internet bereikbaar is. MikroTik bracht al voor de publicatie van de technische details een patch uit, maar actief misbruik liep op dat moment al.
De meeste beheerders weten inmiddels dat ze moeten updaten. Wat minder bekend is: RouterOS heeft een ingebouwde detectie die kan aangeven of jouw specifieke router al slachtoffer is geweest voordat je patchte. Die status heet flagged, en je vindt hem met een enkel commando.
Dit artikel gaat niet over de kwetsbaarheden zelf. Het gaat over wat je na de update moet doen: controleren of je router al gecompromitteerd is geweest, en wat je vervolgens moet doen als dat zo is.
Snel controleren of je MikroTik flagged is
Log in op je router via SSH, Winbox terminal of console, en voer uit:
/system/device-mode/print
Voorbeeldoutput van een router die geen sporen van misbruik vertoont:
mode: advanced
allowed-versions: 7.13+,6.49.8+
flagged: no
flagging-enabled: yes
De regel die je zoekt is flagged. Twee mogelijke waarden:
flagged: no- RouterOS heeft geen van de bekende sporen van ongeautoriseerde wijzigingen aangetroffen.flagged: yes- RouterOS heeft bij het opstarten wel zulke sporen gevonden.
flagged: no is een goed teken, maar geen absolute garantie dat het apparaat nooit gecompromitteerd is geweest. De detectie herkent bekende patronen, geen onbekende. Verderop in dit artikel leg ik uit waarom je ook dan nog een korte controle doet.
Wat betekent flagged: yes op een MikroTik?
RouterOS scant bij het opstarten de configuratie op bekende sporen van ongeautoriseerde wijzigingen. Vindt het systeem zo'n spoor, dan gebeurt er drie dingen: de herkende verdachte configuratie wordt uitgeschakeld, er komt een kritiek bericht in de log, en de flagged-status wordt op yes gezet.
Een flagged: yes moet worden behandeld als een mogelijke compromise totdat het tegendeel is vastgesteld.
Belangrijk om te begrijpen: de flag zelf is niet het probleem. De flag is het alarm dat afgaat omdat er iets is gevonden. Het onderliggende probleem, hoe een aanvaller precies binnenkwam en wat hij heeft gedaan, moet je zelf uitzoeken.
Wat kan niet meer wanneer RouterOS flagged is?
Zodra een router flagged staat, blokkeert RouterOS bewust een aantal functies om verdere misbruikmogelijkheden te beperken. Het gaat onder meer om:
- bandwidth-test
- traffic-generator
- packet sniffer
- nieuwe of extra scheduler-configuratie
- SOCKS
- PPTP
- L2TP
- IPsec
- proxy
- SMB
De nuance hierbij: bestaande, niet-verdachte configuratie blijft grotendeels gewoon draaien. De router gaat niet automatisch offline en klanten achter de router merken in de meeste gevallen niets. Verdachte configuratie die al is gevonden, is al uitgeschakeld of verwijderd door RouterOS zelf. De blokkade zit vooral op het aanmaken van nieuwe risicovolle configuratie, niet op het runnen van je bestaande, schone setup.
Wat moet je doen bij flagged: yes?
Ga systematisch te werk. Wis de flag niet als eerste stap.
- Wis de flag niet direct.
- Controleer gebruikers.
- Controleer scripts.
- Controleer scheduler-entries.
- Controleer services.
- Controleer de input-firewall.
- Controleer NAT-regels.
- Controleer logs.
- Verwijder of schakel onbekende configuratie uit.
- Update RouterOS naar een gepatchte release.
- Wijzig relevante credentials en secrets.
- Hef pas daarna de flagged-status op.
Gebruik hiervoor de volgende commando's.
/user/print detail
Kijk naar accounts die je niet herkent, ongebruikelijke namen, of gebruikers met meer rechten dan je verwacht. In eerdere MikroTik-compromises zijn onder andere accounts met korte, generieke namen aangetroffen, aangemaakt via een gemanipuleerde SSH-sessie. Eén specifieke gebruikersnaam is geen universele indicator, dus richt je op wat je zelf niet herkent, niet op één bekende naam uit een nieuwsbericht.
/system/script/print detail
Zoek naar scripts die je niet zelf hebt geschreven, vooral scripts die verbinding maken naar buiten, gebruikers aanmaken of firewallregels aanpassen.
/system/scheduler/print detail
Scheduler-jobs draaien op de achtergrond zonder dat je er telkens aan denkt. Een job die je niet herkent en die een script aanroept, is een sterk signaal.
/ip/service/print
Controleer welke managementservices actief zijn en vanaf waar ze bereikbaar zijn. Is SSH, Winbox of WebFig breder opengezet dan je bedoeld had?
/ip/firewall/filter/print detail
Zoek naar regels die je niet hebt toegevoegd, vooral regels die verkeer op managementpoorten toestaan vanaf 0.0.0.0/0.
/ip/firewall/nat/print detail
Controleer op onverwachte port forwards, met name naar interne management-interfaces.
/log/print where topics~"critical"
Kritieke logberichten geven vaak het exacte moment en de aard van de gevonden wijziging weer.
/log/print where message~"flagged"
Filtert direct op het logbericht dat hoort bij het moment waarop RouterOS de flag heeft gezet.
Loop deze lijst na voordat je verder gaat. Vind je iets onbekends, verwijder of schakel het uit, en noteer wat je hebt gevonden voor het geval je later toch forensisch onderzoek nodig hebt.
Waarom moet je niet meteen flagged=no uitvoeren?
Dit is de kern van dit artikel. De flag verwijderen zonder eerst onderzoek te doen is hetzelfde als het alarm uitzetten zonder te kijken waarom het afging.
flagged: yes is niet de foutmelding die je moet oplossen. Het is de waarschuwing dat je iets moet onderzoeken.
Zolang je de flag laat staan, weet je: hier is ooit iets gevonden, en tot ik het tegendeel heb bewezen, behandel ik dit apparaat als potentieel onder controle van iemand anders geweest. Zodra je de flag wist zonder onderzoek, verlies je dat signaal en ga je verder alsof er niets is gebeurd, terwijl je dat niet zeker weet.
Hoe hef je flagged: yes op?
Als je onderzoek is afgerond en je bent tevreden met wat je hebt gevonden en opgeschoond, hef je de flag op met:
/system/device-mode/update flagged=no
Dit kan niet volledig remote worden afgerond. RouterOS vraagt om fysieke bevestiging, afhankelijk van het model:
- een fysieke knopdruk op de router, of
- een echte powercycle: stroom eraf en weer erop, dan wel een harde reboot van de virtuele machine bij CHR.
/system/reboot
is hier nadrukkelijk niet hetzelfde. Een gewone reboot via dit commando doet geen fysieke bevestiging teweeg wanneer RouterOS die specifiek vereist.
Dit is bewust zo ontworpen. Een aanvaller die alleen remote toegang heeft, mag de compromise-waarschuwing niet zelf simpelweg kunnen wegklikken. Zonder fysieke handeling blijft de flag staan, ook als de aanvaller de volledige RouterOS-configuratie in handen heeft.
Let op bij routers op remote locaties
Dit is waar het praktisch lastig wordt voor MSP's en beheerders van meerdere sites. Audit en cleanup kunnen grotendeels remote: users controleren, scripts nalopen, scheduler-jobs checken, RouterOS updaten, credentials wijzigen, dat gaat allemaal via SSH of Winbox op afstand.
De laatste stap, de daadwerkelijke bevestiging van flagged=no, kan fysieke toegang vereisen. Dat is vooral relevant voor:
- datacenters
- POP-locaties
- klantlocaties zonder eigen technisch personeel
- remote sites zonder vaste beheerder ter plaatse
- MSP-omgevingen met veel verspreide apparatuur
Plan dit in. Als je meerdere flagged routers op afstand hebt, weet je na de eerste dat je iemand ter plaatse nodig hebt, of dat je moet wachten tot een geplande onderhoudsvisite.
Wat betekent flagged: no?
Een positief resultaat, maar geen vervanging voor een security-audit. De detectie herkent bekende patronen uit bekende aanvallen. Een nieuwe of afwijkende methode kan theoretisch onder de radar blijven.
Loop daarom ook bij flagged: no de basiscontrole na:
/user/print detail
/system/script/print detail
/system/scheduler/print detail
/ip/service/print
Dit kost een paar minuten en geeft je zekerheid die de flag alleen niet biedt.
Controleer SSH, Winbox en managementtoegang
De MikroTrick-keten draaide om SSH dat rechtstreeks vanaf het internet bereikbaar was. Managementservices als SSH, Winbox, WebFig en de API horen bij voorkeur niet rechtstreeks op het publieke internet te staan. De veiligste opzet is toegang via een vertrouwd managementnetwerk of via VPN, bijvoorbeeld WireGuard [interne link: WireGuard].
Controleer welke services actief zijn:
/ip/service/print
Let op: de kolom available-from in deze output vertelt niet het hele verhaal. Een service kan daar beperkt lijken terwijl de firewall het verkeer alsnog doorlaat, of andersom. Controleer daarom ook de input-firewall zelf:
/ip/firewall/filter/print detail where chain=input
De input-firewall bepaalt uiteindelijk mede welke services daadwerkelijk vanaf internet bereikbaar zijn, ongeacht wat /ip/service/print suggereert. Voor een bredere aanpak van je firewallregels, zie [interne link: firewalling] en, als je met meerdere routers en routing-domeinen werkt, [interne link: BGP]. Wil je vanaf hier direct nieuwe VLAN-, firewall- of WireGuard-configuratie opzetten, gebruik dan de MikroTik Config Generator voor kant en klare RouterOS-commando's.
Welke RouterOS-versies bevatten de fix?
MikroTik bracht de fix uit in de volgende releases:
- 7.25 beta 3
- 7.24.2
- 7.23.4
- 6.49.21
Controleer bij publicatie van dit artikel en bij het lezen ervan altijd de actuele stand via de officiële MikroTik-advisory, releasenotes veranderen en er kunnen na deze releases verdere patches volgen.
Praktische vijf-minuten-check
Compact overzicht om nu direct uit te voeren:
/system/device-mode/print
/user/print detail
/system/script/print detail
/system/scheduler/print detail
/ip/service/print
/ip/firewall/filter/print detail where chain=input
flagged: no
Goed teken. Loop de rest van de output alsnog kort na op iets wat je niet herkent.
flagged: yes
Niet direct unflaggen. Behandel het apparaat als mogelijke compromise, onderzoek de configuratie, schoon op wat niet hoort, update naar een gepatchte release, wijzig credentials, en hef daarna pas de flag op met fysieke bevestiging.
Conclusie
Updaten is niet het eindpunt, het is de eerste stap. De volgorde die telt:
Updaten, flagged controleren, configuratie auditen, managementtoegang controleren.
En de kern van dit artikel in één zin: flagged: yes is niet het probleem dat je moet verbergen, maar het signaal dat je moet onderzoeken.
Voor meer achtergrond over het beveiligen van MikroTik-apparatuur en RouterOS in het algemeen, zie [interne link: MikroTik beveiliging] en [interne link: RouterOS]. Beheer je meerdere routers of een breder netwerk met Linux-apparatuur ertussen, kijk dan ook naar [interne link: Linux netwerkbeheer] en [interne link: netwerkbeveiliging]. Zoek je persoonlijke hulp bij het inrichten of auditen van je MikroTik-omgeving, kijk dan bij MikroTik Netwerk Advies.
Externe bronnen
Wat betekent flagged: yes op een MikroTik-router?
RouterOS heeft bij het opstarten bekende sporen van een ongeautoriseerde configuratiewijziging gevonden, de herkende malafide regels automatisch uitgeschakeld en een kritiek logbericht weggeschreven. Behandel het apparaat als mogelijk gecompromitteerd totdat je zelf het tegendeel hebt vastgesteld.
Wat betekent flagged: no op een MikroTik-router?
RouterOS heeft geen van de bekende sporen van misbruik aangetroffen. Dat is een goed teken, maar geen garantie: het is geen vervanging voor een eigen controle van users, scripts, scheduler en firewallregels.
Hoe controleer ik of mijn MikroTik flagged is?
Log in via SSH of terminal en voer /system/device-mode/print uit. Kijk naar de regel flagged: als daar yes staat, is er een signaal van misbruik gevonden.
Hoe controleer ik of mijn MikroTik mogelijk gehackt is?
Controleer naast de flagged-status ook /user/print detail, /system/script/print detail, /system/scheduler/print detail, /ip/service/print en de firewall- en NAT-regels op onbekende entries. Bekijk ook de logs met /log/print op kritieke meldingen.
Kan ik een flagged MikroTik remote unflaggen?
Het commando kan remote worden gegeven, maar RouterOS vraagt daarna om een fysieke bevestiging: een knopdruk op het apparaat of een echte powercycle. Zonder die fysieke stap blijft de router in flagged-status staan.
Wat kan ik niet gebruiken wanneer een MikroTik flagged is?
RouterOS blokkeert onder meer bandwidth-test, traffic-generator, packet sniffer, nieuwe scheduler-entries en het aanmaken of activeren van SOCKS, PPTP, L2TP, IPsec, proxy en SMB. Bestaande, niet-verdachte configuratie blijft grotendeels werken.
Moet ik mijn MikroTik controleren als flagged: no staat?
Ja. De flag herkent alleen bekende patronen van misbruik. Een korte controle van gebruikers, scripts, scheduler en open managementpoorten kost weinig tijd en sluit uit dat je iets over het hoofd ziet.
Hoe hef ik flagged: yes op?
Eerst onderzoeken en opschonen, dan pas /system/device-mode/update flagged=no uitvoeren en bevestigen met een fysieke knopdruk of een cold reboot. Nooit direct unflaggen zonder onderzoek.
Is Winbox vanaf internet veilig?
Nee, niet aan te raden. Winbox rechtstreeks vanaf het internet bereikbaar maken vergroot het aanvalsoppervlak onnodig. Gebruik een VPN zoals WireGuard of beperk toegang tot een vertrouwd managementnetwerk.
Is SSH vanaf internet veilig op MikroTik?
Alleen met de laatste RouterOS-versie, sterke authenticatie en bij voorkeur een IP-whitelist of VPN ervoor. De MikroTrick-kwetsbaarheden lieten zien dat SSH dat rechtstreeks vanaf het internet bereikbaar was, zonder authenticatie kon worden overgenomen.
Dit artikel lezen in het Engels?
Read in English →