MikroTik zveřejnil první obecné informace o chybě, která dovoluje na dálku shodit router pomocí upravených IPv6 paketů. O problému jsme vás už informovali ve zprávičce. V úterý 9. dubna mají být podrobnosti zveřejněny na konferenci UKNOF, MikroTik proto zareagoval na poslední chvíli.
Kromě obecného popisu problému byly zveřejněny také opravené verze systému RouterOS, nejsou ale zatím účinné na všech zařízeních. Některé routery tedy zůstávají zranitelné.
Vyčerpání výkonu a paměti
Ve skutečnosti se jedná o dvě chyby, které ale obě způsobují restartování routeru pomocí watchdogu. Po tu dobu je síť nedostupná a útočník může kdykoliv svou akci zopakovat a udržovat tak router nefunkční. Výrobce se k problémům vyjádřil na svém blogu.
První chyba nese označení CVE-2018–19298 a útočník ji zneužije tak, že začne přes router posílat provoz s mnoha různými cílovými IP adresami. Zařízení je pak přetíženo a přestane odpovídat watchdogu. Ten splní svou úlohu a MikroTik restartuje.
Druhá chyba je označena jako CVE-2018–19299 a umožňuje vyčerpat paměť routeru. Systém totiž pro IPv6 route cache vyhradí více paměti, než kolik má skutečně k dispozici. Výrobce to opravil tím, že počítá automaticky hraniční velikost této cache podle skutečné velikosti RAM.
Obě chyby jsou zneužitelné na routerech, které mají zapnutou podporu IPv6. Ta je ve výchozím stavu vypnutá a uživatel musí aktivně podporu nainstalovat a nakonfigurovat. Pokud je ale pak router dostupný z nedůvěryhodných sítí (čti: internet), pak na něj může být takto zaútočeno.
Oprava jen pro někoho
MikroTik vydal nové verze RouterOS, které oba problémy opravují. Na výtky týkající se dlouhé reakční doby odpovídali vývojáři, že problém je v linuxovém jádře, které je navíc starší a není možné ho aktualizovat.
Opravy jsou součástí nejnovějších vydání: stable 6.44.2 a long term 6.43.14. Pokud spravujete routery MikroTik, doporučujeme je co nejdříve aplikovat. Brzy by měly být k dispozici kompletní informace o zranitelnostech a pravděpodobně také začnou být rychle zneužívány.
Opravy jsou ale efektivní jen v routerech, které mají více než 64 MB RAM. Informaci zveřejnil Marek Isalski, jeden z objevitelů zranitelností a zároveň technický šéf britského poskytovatele připojení Faelix. Aby byla oprava účinná, musí mít router k dispozici dostatek paměti, jinak ji opět může útočník vyčerpat.
UPDATE: this is *NOT* a fix on devices with 64Mb RAM (not tested on less, but suspect it is the same). https://t.co/EmNEObf8ZX
— Marek Isalski (@maznu) April 4, 2019
Javier Prieto prováděl vlastní testy ve virtuálním prostředí a potvrzuje situaci na fóru MikroTiku. Útok nyní ukousne z paměti routeru 20 MB a někdy jen 13 MB. Dobrou zprávou je, že se situace nezhorší, když probíhá útok z více zdrojů najednou.
Oprava po roce
Chyba byla reportována několika lidmi v loňském roce, zmíněný Marek Isalski o ní MikroTiku napsal 16. dubna. Firma prý hlášení vyhodnotila a původně oznámila, že nejde o bezpečnostní chybu. Později ovšem bylo ukázáno, že problém je v praxi zneužitelný. Trvalo ovšem téměř rok, než vyšla čerstvá oprava. Mezi tím bylo vydáno 20 dalších verzí, které byly stále zranitelné.
Ochrana proti zneužití na úrovni firewallu je neúčinná, neboť zaplňování paměti může zahájit libovolný IPv6 paket. Problém navíc postihuje prakticky všechna zařízení od MikroTiku, včetně velkých síťových prvků. Další podrobnosti budou k dispozici v úterý po zmíněné přednášce, kterou přednese Marek Isalski. Právě díky konferenci UKNOF začalo být téma široce známé a vývojáři začali usilovně pracovat na opravě RouterOS.
Zařízením s menším množstvím paměti by měly pomoci optimalizace, které se prý objeví v příští betaverzi. Konkrétní termín ovšem zatím nebyl stanoven a menší routery proto zůstávají vůči útoku nezáplatované.
(Zdroj: Bleeping computer)