Ve FreeBSD Pět zranitelností, mezi kterými jsou i problémy, které mohou potenciálně vést k přepsání dat na úrovni jádra při odesílání určitých síťových paketů, nebo umožňují lokálnímu uživateli zvýšit své oprávnění. Zranitelnosti byly opraveny ve verzích 12.1-RELEASE-p5 a 11.3-RELEASE-p9.
Nejnebezpečnější zranitelnost () je způsobena nedostatečnou kontrolou velikosti paketu v knihovně libalias při analýze specifických pro protokol hlaviček. Knihovna libalias se používá v paketovém filtru ipfw pro překlad adres a zahrnuje standardní funkce nahrazování adres v IP paketech a analýzu protokolů. Zranitelnost umožňuje prostřednictvím odesílání speciálně formátovaného síťového paketu dosáhnout čtení nebo zápisu dat v oblasti paměti jádra (při použití implementace NAT v jádře) nebo procesu
natd (při použití implementace NAT ve uživatelském prostoru). Problém se netýká konfigurací NAT vytvořených pomocí paketových filtrů pf a ipf, ani konfigurací ipfw, v nichž se NAT nepoužívá.
Další zranitelnosti:
- — další vzdáleně zneužitelná zranitelnost v libalias, spojená s nesprávným výpočtem délky paketů v obslužném programu FTP. Problém je omezen na únik obsahu několika bajtů dat z oblasti paměti jádra nebo procesu natd.
- — zranitelnost v modulu cryptodev, způsobená přístupem k již uvolněné oblasti paměti (use-after-free), která umožňuje neprivilegovanému procesu přepsat libovolné části paměti jádra. Jako obrané opatření proti zneužití zranitelnosti se doporučuje odložit modul cryptodev příkazem „kldunload cryptodev“, pokud byl nahrán (podle defaultu cryptodev není nahrán). Modul cryptodev poskytuje aplikacím z uživatelského prostoru přístup k rozhraní /dev/crypto pro volání mechanismů hardwarového urychlení kryptografických operací (v AES-NI a OpenSSL /dev/crypto se nepoužívá).
- — druhá zranitelnost v cryptodev, umožňující nepřihlašovanému uživateli iniciovat pád jádra prostřednictvím odeslání žádosti o provedení kryptografické operace s neplatným MAC. Problém je způsoben absencí kontroly velikosti MAC klíče při vyhrazení bufferu pro jeho uložení (buffer byl vytvářen na základě uživatelských dat o velikosti, bez kontroly skutečné velikosti).
- — zranitelnost v implementaci protokolu SCTP (Stream Control Transmission Protocol), způsobená nesprávnou kontrolou sdíleného klíče používaného rozšířením SCTP-AUTH pro autentizaci sekvencí SCTP. Místní aplikace může prostřednictvím Socket API aktualizovat klíč, současně přerušit spojení SCTP, což povede k přístupu k již uvolněné části paměti (use-after-free).
Zdroj: opennet.ru
