Guido Vranken z ForAllSecure představil technické detaily a proof-of-concept již dříve odhalené kritické chyby umožňující vzdálené spouštění kódu na strojích s OpenWRT. To znamená v miliónech zařízení po celém světě.
Chyba dostala kód CVE-2020–7982 a sedí ve správci balíčků OPKG a způsobu, jakým OpenWRT ověřuje jejich integritu za pomoci kontrolních součtů SHA-256, dlících v podepsaném indexu repozitáře. Pokud kontrolní součet obsahuje mezery, OpenWRT přeskočí kontrolu integrity a přikročí rovnou k instalaci.
Při použití příkazu opkg install
je možné provést vzdáleně útok typu man-in-the-middle na komunikaci cílového zařízení a na tomto cílovém zařízení přimět balíčkovač k instalaci upraveného balíčku či aktualizaci bez verifikace. V případě úspěšného útoku může útočník získat kompletní kontrolu tohoto zařízení a ve svém důsledku i sítové komunikace, kterou obsluhuje.
Chyba je v systém OpenWRT už tři roky, Guido Vranken ji pak odhalil dříve v tomto roce. Postiženy jsou verze OpenWrt 18.06.0 až 18.06.6 a 19.07.0, dále pak LEDE 17.01.0 až 17.01.7. Řešením je aktualizace na novější verze OpenWrt 18.06.7, resp. 19.07.1, které byly vydány minulý měsíc.
Podrobnosti shrnuje Guido v blogpostu na domovském webu.