Perché un solo articolo per 35 CVE?

Perché raccontano la stessa storia 35 volte. Sono il risultato di una campagna di fuzzing sui processi interni di RouterOS 6: per ognuno è stato trovato un modo di farlo crashare (accesso a memoria non valido, puntatore nullo, divisione per zero, assertion fallita, consumo di CPU) e a ognuno è stato assegnato un codice CVE. Scriverne 35 articoli separati non aiuterebbe nessuno: qui trovi la tabella completa e cosa fare, una volta sola.

Chi è a rischio?

Il punto chiave è nella descrizione ufficiale di quasi tutte: “an authenticated remote attacker”. Per sfruttarle bisogna aver già fatto login sul router. In pratica sono pericolose solo se:

  • qualcuno che non dovrebbe ha un utente sul router (un ex collaboratore, un cliente con accesso in lettura, una password condivisa);
  • le credenziali sono deboli o di default, o esposte su internet tramite WinBox, SSH, API o WebFig;
  • il router fa da piattaforma condivisa (per esempio accessi in sola lettura dati a terzi per il monitoraggio).

Un attaccante esterno senza credenziali non può usarle. E il danno è un disservizio, non un furto di dati né il controllo del router: il processo si blocca, RouterOS lo riavvia o, nei casi peggiori, il router si riavvia.

Quali processi e quali versioni?

La versione indicata è quella riportata nella CVE: per alcune è “la 6.44.6 è vulnerabile”, per altre “prima della 6.47”.

Processo Cosa fa CVE Versione segnalata
console terminale di RouterOS CVE-2020-20211, CVE-2020-20212 6.44.5 long-term
net rete di base CVE-2020-20213 6.44.5 long-term
btest Bandwidth Test CVE-2020-20214 6.44.6 long-term
diskd gestione dei dischi CVE-2020-20215, CVE-2020-20227 6.44.6 long-term, 6.47 stable
graphing grafici di traffico e risorse CVE-2020-20216 6.44.6 long-term
route tabella di routing CVE-2020-20217 prima della 6.47
traceroute traceroute CVE-2020-20218, CVE-2020-20247 6.44.6 long-term, prima della 6.46.5
igmp-proxy proxy IGMP (multicast) CVE-2020-20219 6.44.6 long-term
bfd BFD (rilevamento guasti dei link) CVE-2020-20220 prima della 6.47
cerm certificati CVE-2020-20221 prima della 6.44.6
sniffer packet sniffer CVE-2020-20222, CVE-2020-20236, CVE-2020-20237 6.44.6 long-term, 6.46.3
user gestione utenti CVE-2020-20225 prima della 6.47
sshd server SSH CVE-2020-20230 prima della 6.47
detnet rilevamento della rete Internet CVE-2020-20231 fino alla 6.48.3
log registro di sistema CVE-2020-20245 6.46.3
mactel MAC Telnet CVE-2020-20246 6.46.3
memtest test della memoria CVE-2020-20248 prima della 6.47
resolver DNS CVE-2020-20249, CVE-2020-20267 prima della 6.47
lcdstat display LCD CVE-2020-20250, CVE-2020-20252, CVE-2020-20253, CVE-2020-20254 prima della 6.47
ipsec IPsec CVE-2020-20262 prima della 6.47
netwatch Netwatch CVE-2020-20264, CVE-2022-36522 prima della 6.47, fino alla 6.48.3
wireless wireless (pacchetto legacy) CVE-2020-20265 prima della 6.47
dot1x 802.1X CVE-2020-20266 prima della 6.47
ptp Precision Time Protocol CVE-2021-36613 prima della 6.48.2
tr069-client client TR-069 CVE-2021-36614 prima della 6.48.2

Che cosa devo fare?

Tre cose, in ordine di importanza.

Passo 1: aggiornare

Le CVE indicano come vulnerabili versioni fino alla 6.48.3. Se il router è ancora su RouterOS 6, porta l’apparato all’ultima 6.49 long-term; se l’hardware lo permette, valuta il passaggio a RouterOS 7. Controlla la versione con:

/system resource print
/system package update print

Se il router è in rete:

/system package update set channel=long-term
/system package update check-for-updates
/system package update install

Se non raggiunge internet, o vuoi una versione precisa, trovi tutti i pacchetti nell’Archivio RouterOS: scegli architettura e versione e hai i link diretti a download.mikrotik.com, con la procedura di aggiornamento a mano spiegata in I canali di RouterOS.

Passo 2: controllare chi può entrare

Visto che serve un login, la difesa più efficace è ridurre gli utenti e le porte d’accesso:

/user print
/user active print
/ip service print

Togli gli utenti che non servono più, cambia le password condivise e limita i servizi di gestione con Available From alle sole reti di amministrazione. Tutta la procedura è nell’Hardening di base di un router MikroTik.

Passo 3: spegnere quello che non usi

Molti dei processi della tabella girano solo se la funzione è attiva o il pacchetto è installato (sniffer, btest, IGMP proxy, TR-069, PTP, lcdstat sugli apparati con display). Meno servizi accesi significa meno superficie d’attacco, per queste CVE e per le prossime. Per esempio, il server del Bandwidth Test:

/tool bandwidth-server set enabled=no

Domande frequenti

Queste 35 CVE di RouterOS sono pericolose?

Hanno gravità media (CVSS 6.5): permettono solo di bloccare un processo o riavviare il router, e solo a chi ha già credenziali valide. Non permettono di rubare dati né di prendere il controllo del dispositivo.

Quali versioni di RouterOS sono colpite?

Le CVE indicano versioni di RouterOS 6 dalla 6.44 alla 6.48.3. La soluzione è aggiornare all’ultima versione 6.49 long-term oppure passare a RouterOS 7.

Serve essere autenticati per sfruttarle?

Sì. Le descrizioni ufficiali parlano di un attaccante remoto autenticato: senza un utente valido sul router queste vulnerabilità non si possono sfruttare.

Come mi proteggo se non posso aggiornare subito?

Riducendo chi può accedere al router: eliminare gli utenti non necessari, usare password robuste e limitare i servizi di gestione con Available From alle sole reti di amministrazione.