Chyba zabezpečení v pppd a lwIP, která umožňuje vzdálené spuštění kódu s právy root

V balíčku pppd identifikované zranitelnost (CVE-2020-8597), což vám umožní spustit váš kód odesláním speciálně navržených požadavků na ověření do systémů používajících protokol PPP (Point-to-Point Protocol) nebo PPPoE (PPP over Ethernet). Tyto protokoly obvykle používají poskytovatelé k organizaci připojení přes Ethernet nebo DSL a používají se také v některých sítích VPN (například pptpd a openfortivpn). Chcete-li zkontrolovat, zda se problém týká vašich systémů připravený využívat prototyp.

Tato chyba zabezpečení je způsobena přetečením vyrovnávací paměti při implementaci ověřovacího protokolu EAP (Extensible Authentication Protocol). Útok lze provést ve fázi před autentizací odesláním paketu typu EAPT_MD5CHAP, včetně velmi dlouhého názvu hostitele, který se nevejde do přidělené vyrovnávací paměti. Kvůli chybě v kódu pro kontrolu velikosti pole rhostname by útočník mohl přepsat data mimo vyrovnávací paměť v zásobníku a dosáhnout vzdáleného spuštění svého kódu s právy root. Zranitelnost se projevuje na straně serveru i klienta, tzn. Může být napaden nejen server, ale také klient, který se pokouší připojit k serveru ovládanému útočníkem (útočník může například nejprve hacknout server prostřednictvím zranitelnosti a poté začít útočit na připojující se klienty).

Problém se týká verzí pppd od 2.4.2 do 2.4.8 včetně a vyřazeny ve formuláři náplast. Zranitelnost také ovlivňuje stack lwIP, ale výchozí konfigurace v lwIP nepovoluje podporu EAP.

Stav řešení problému v distribučních sadách lze zobrazit na těchto stránkách: Debian, ubuntu, RHEL, Fedora, SUSE, OpenWRT, Oblouk, NetBSD. Na RHEL, OpenWRT a SUSE je balíček pppd vytvořen s povolenou ochranou "Stack Smashing Protection" (režim "-fstack-protector" v gcc), což omezuje zneužití na selhání. Kromě distribucí byla zranitelnost potvrzena také u některých produktů Cisco (Správce hovorů) TP-LINK a Synology (DiskStation Manager, VisualStation VS960HD a Router Manager) pomocí kódu pppd nebo lwIP.

Zdroj: opennet.ru

Přidat komentář