Le 10 septembre 2026, la CISA a ajouté deux vulnérabilités MikroTik RouterOS à son catalogue KEV, avec une échéance de remédiation à trois jours. L'une permet une fuite de mémoire noyau sans authentification, l'autre une escalade de privilèges.
Versions corrigées : 6.49.21 (Long-term), 7.23.4 (Long-term) et 7.24.2 (Stable).
MikroTik occupe une position particulière : matériel peu coûteux, très capable, massivement déployé chez les fournisseurs d'accès régionaux, les hébergeurs, les installateurs et les PME techniques. C'est aussi historiquement l'une des plateformes les plus enrôlées dans des botnets — le réseau Mēris, qui a établi des records de DDoS, reposait principalement sur des équipements MikroTik non patchés.
CVE-2026-67277 — fuite de mémoire noyau via le service btest
| Champ | Valeur |
|---|---|
| CVSS 3.1 | 8.2 (HIGH) |
| Vecteur | AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H |
| Ajout KEV | 2026-09-10 |
| Échéance CISA | 2026-09-13 |
| Publication NVD | 2026-09-05 |
La description de l'éditeur est inhabituellement précise, et elle décrit en réalité deux bugs distincts dans le même service :
RouterOS accepts a "related" btest connection before the corresponding primary session has completed authentication. An unauthenticated client can use this state to start an IPv4 UDP test. With
random-data=false, the sender transmits an uninitialized tail from a kernel packet buffer. A separate unchecked, inverted packet-size interval causes unsigned integer underflow, anomalously large fragmented output, and can restart the RouterOS kernel.
Bug 1 — la fuite de mémoire. Le service btest (Bandwidth Test) génère du trafic pour mesurer un débit. Avec random-data=false, il remplit les paquets avec le contenu d'un tampon noyau sans l'initialiser. Le contenu résiduel de ce tampon part donc sur le réseau, vers l'attaquant. C'est une fuite de mémoire noyau arbitraire : identifiants en transit, fragments de configuration, éléments de session — ce qui se trouvait là avant.
C'est ce qui explique le C:L (confidentialité faible) : l'attaquant ne choisit pas ce qu'il lit, il récupère ce qui passe. Mais en répétant l'opération, il collecte.
Bug 2 — le redémarrage du noyau. Un intervalle de taille de paquet inversé et non contrôlé provoque un dépassement par le bas sur un entier non signé — une valeur négative devient un très grand nombre positif — d'où une sortie fragmentée anormalement volumineuse, et potentiellement le redémarrage du noyau RouterOS. D'où le A:H : un déni de service sur un routeur, c'est la coupure du lien.
Le motif de séquencement
Le point de départ mérite d'être isolé : accepts a related connection before the primary session has completed authentication.
C'est exactement le même motif que celui de la chaîne PaperCut publiée il y a dix jours, où une action métier s'exécutait avant la fin de la validation d'accès. Deux éditeurs sans rapport, deux semaines d'écart, la même classe de défaut : le contrôle existe, mais l'opération le double.
Ce sont des bugs difficiles à trouver en revue de code, parce que la lecture du code montre un contrôle présent. Ils n'apparaissent qu'en raisonnant sur l'ordre d'exécution — et c'est pour cette raison qu'ils survivent longtemps.
CVE-2026-86060 — escalade de privilèges
Description CISA :
MikroTik RouterOS contains an improper neutralization of argument delimiters in a command vulnerability which allows an attacker to change the trusted RouterOS policy mask, leading to privilege escalation.
NVD n'a publié ni score, ni vecteur, ni liste de versions au moment de la rédaction — je ne vais pas les inventer. Ce que dit la description CISA est néanmoins clair sur le mécanisme : une injection de délimiteurs d'arguments permet de modifier le masque de politique de RouterOS, c'est-à-dire l'ensemble des permissions accordées à un utilisateur (read, write, policy, ftp, ssh…).
Modifier ce masque revient à s'attribuer soi-même les droits manquants. C'est le complément naturel de la première CVE : l'une donne de la matière sans authentification, l'autre permet de monter en privilèges une fois entré.
Les deux ont été ajoutées au KEV le même jour, ce qui suggère une observation conjointe.
Versions
| Branche | Version corrigée |
|---|---|
| 6.x | 6.49.21 (Long-term) |
| 7.x Long-term | 7.23.4 |
| 7.x Stable | 7.24.2 |
Vérifier ta version :
/system resource print
Ou en une ligne depuis un script :
ssh admin@routeur "/system resource print" | grep version
La présence d'une branche 6.49 encore maintenue en 2026 est révélatrice du parc réel : beaucoup d'équipements MikroTik en production tournent sur du RouterOS 6, parfois depuis dix ans, parce qu'ils fonctionnent et que personne n'a de raison d'y toucher.
Ce qui est réellement exposé
Le service btest ne devrait pas être joignable
C'est le point le plus actionnable de cet article. Le Bandwidth Test Server est un outil de diagnostic, utilisé ponctuellement pour qualifier un lien. Il n'a aucune raison d'être accessible en permanence, et encore moins depuis Internet.
Il est pourtant activé par défaut sur de nombreuses configurations, et reste ouvert parce que personne ne l'a désactivé après l'installation.
/tool bandwidth-server print
S'il est activé et non filtré, la première CVE est exploitable contre toi depuis n'importe où.
Ce qu'un routeur compromis donne
- Interception du trafic — le routeur voit tout ce qui transite
- Modification du DNS, pour rediriger les utilisateurs sans toucher à leurs postes
- Pivot vers le réseau interne
- Enrôlement en botnet : c'est le débouché historique sur MikroTik, et la raison pour laquelle ces équipements sont scannés en permanence
- Point d'observation durable : sans agent, sans journal exporté, un routeur compromis fonctionne normalement pendant des années
Détection
Service btest
/tool bandwidth-server print
/log print where topics~"system"
Un usage du serveur de test de bande passante que tu n'as pas initié est un signal direct.
Utilisateurs et politiques
C'est le contrôle qui vise la seconde CVE — l'escalade passe par une modification du masque de politique :
/user print detail
/user group print detail
Compare les politiques des groupes à ce que tu as défini. Toute permission ajoutée (policy, write, ftp) sur un groupe qui n'en avait pas est un indicateur non ambigu.
Configuration
/export compact
Exporte et compare à une référence connue. Les points à examiner en priorité :
- Serveurs DNS modifiés
- Règles NAT et de pare-feu ajoutées
- Scripts et planificateurs (
/system script print,/system scheduler print) — c'est l'emplacement de persistance favori sur RouterOS - Tunnels (L2TP, PPTP, WireGuard) non documentés
- Utilisateurs SSH/API inconnus
Persistance par script planifié
/system scheduler print detail
/system script print detail
Un script planifié qui télécharge et exécute du contenu est le motif de persistance classique sur cette plateforme. Sur un routeur sain, cette liste est courte et connue.
Mitigation
1. Mettre à jour vers la version de ta branche
/system package update check-for-updates
/system package update install
Vérifie la version après redémarrage — une mise à jour RouterOS interrompue laisse l'équipement sur l'ancienne version sans le signaler clairement.
2. Désactiver le serveur btest
Applicable immédiatement, sans interruption, et cela neutralise CVE-2026-67277 indépendamment de la version :
/tool bandwidth-server set enabled=no
Si tu en as un usage légitime occasionnel, active-le au besoin et referme-le après. Ce n'est pas un service qui doit rester ouvert.
3. Restreindre les services d'administration
/ip service print
/ip service set winbox address=10.0.0.0/8
/ip service set ssh address=10.0.0.0/8
/ip service set api disabled=yes
/ip service set telnet disabled=yes
/ip service set ftp disabled=yes
Désactive tout ce dont tu ne te sers pas, et restreins le reste à ton réseau d'administration. C'est la mesure qui protège aussi contre les prochaines CVE.
4. Vérifier l'absence d'exposition Internet
# Depuis l'extérieur
nmap -Pn -p 21,22,23,80,443,2000,8291,8728,8729 <ip-publique>
Le port 8291 (Winbox) et le 2000 (btest) ne devraient jamais répondre depuis Internet.
5. Si tu suspectes une compromission
Sur un équipement réseau compromis, le nettoyage à chaud n'est pas fiable :
- Exporte la configuration pour analyse, mais ne la réimporte pas telle quelle
- Réinitialisation sans configuration par défaut :
/system reset-configuration no-defaults=yes - Reconfigure à la main à partir de ta documentation, pas à partir d'une sauvegarde potentiellement altérée
- Change tous les mots de passe et régénère les clés SSH
- Audite les scripts et planificateurs avant toute réutilisation de configuration
Pourquoi surveiller en continu vos équipements réseau
Un routeur MikroTik a une durée de vie de dix ans et aucun mécanisme de mise à jour automatique. Il ne figure dans aucun inventaire logiciel, ne remonte dans aucun scan d'OS, et son propriétaire déclaré est souvent l'installateur qui l'a posé. Résultat : deux CVE au KEV avec une échéance à trois jours peuvent passer complètement inaperçues — d'autant que l'équipement continue de router parfaitement pendant ce temps.
Avec cveo.tech, inventorie tes routeurs, pare-feu et équipements réseau avec leur version de firmware exacte, et reçois une alerte automatique dès qu'une CVE critique cible une de tes versions — pour que la question « suis-je concerné ? » ait une réponse immédiate.