GNU/Linux >> Znalost Linux >  >> Linux

Jak zjistit a zmírnit eskalaci zranitelnosti oprávnění Intel v systému Linux (CVE-2017-5689)?

Nejjasnější příspěvek, který jsem na toto téma viděl, je Matthew Garrett (včetně komentářů).

Matthew nyní vydal nástroj pro kontrolu vašeho systému lokálně:sestavte jej, spusťte jej pomocí

sudo ./mei-amt-check

a bude hlásit, zda je AMT povoleno a zajištěno, a pokud ano, verze firmwaru (viz níže). Soubor README obsahuje další podrobnosti.

Chcete-li v síti prohledat potenciálně zranitelné systémy, prohledejte porty 623, 624 a 16992 až 16993 (jak je popsáno ve vlastním dokumentu společnosti Intel o zmírnění rizik); například

nmap -p16992,16993,16994,16995,623,664 192.168.1.0/24

prohledá síť 192.168.1/24 a ohlásí stav všech hostitelů, kteří odpoví. Možnost připojení k portu 623 může být falešně pozitivní (jiné systémy IPMI používají tento port), ale jakýkoli otevřený port od 16992 do 16995 je velmi dobrým indikátorem povoleného AMT (alespoň pokud správně reagují:s AMT to znamená odpověď HTTP na 16992 a 16993, druhý s TLS).

Pokud vidíte odpovědi na portech 16992 nebo 16993, připojujete se k těmto portům a požadujete / použití HTTP vrátí odpověď s Server řada obsahující „Intel(R) Active Management Technology“ na systémech s povoleným AMT; stejný řádek bude také obsahovat verzi používaného firmwaru AMT, kterou pak lze porovnat se seznamem uvedeným v doporučení Intelu, aby se zjistilo, zda je zranitelný.

Viz odpověď CerberusSec pro odkaz na skript automatizující výše uvedené.

Existují dva způsoby, jak problém „správně“ opravit:

  • upgradujte firmware, jakmile výrobce vašeho systému poskytne aktualizaci (pokud vůbec někdy);
  • nepoužívejte síťový port poskytující AMT, buď pomocí síťového rozhraní, které AMT na vašem systému nepodporuje, nebo pomocí USB adaptéru (mnoho pracovních stanic AMT, jako jsou systémy C226 Xeon E3 se síťovými porty i210, má pouze jedno síťové rozhraní s podporou AMT – ostatní jsou v bezpečí; AMT může fungovat přes wi-fi, alespoň ve Windows, takže použití vestavěného wi-fi může také vést ke kompromitaci).

Pokud není k dispozici žádná z těchto možností, nacházíte se v oblasti zmírňování. Pokud váš systém s podporou AMT nebyl nikdy zřízen pro AMT, pak jste přiměřeně v bezpečí; povolení AMT v takovém případě lze zjevně provést pouze lokálně, a pokud mohu říci, vyžaduje použití firmwaru vašeho systému nebo softwaru Windows. Pokud je AMT povoleno, můžete restartovat a pomocí firmwaru jej deaktivovat (stiskněte Ctrl P když se během spouštění zobrazí zpráva AMT).

V zásadě, i když je zranitelnost privilegií docela ošklivá, zdá se, že většina systémů Intel není ve skutečnosti ovlivněna. U vašich vlastních systémů, na kterých běží Linux nebo jiný unixový operační systém, eskalace pravděpodobně nejprve vyžaduje fyzický přístup k systému, aby bylo umožněno AMT. (Windows je jiný příběh.) Na systémech s více síťovými rozhraními, jak poukázal Rui F Ribeiro, byste měli zacházet s rozhraními podporující AMT stejným způsobem, jako byste zacházeli s jakýmkoli administrativním rozhraním (s podporou IPMI nebo hostitelským rozhraním). pro hypervizor VM) a izolovat jej v administrativní síti (fyzické nebo VLAN). Nemůžete spoléhat na hostitele, že se ochrání:iptables atd. jsou zde neúčinné, protože AMT vidí pakety dříve než operační systém (a nechává si pakety AMT pro sebe).

Virtuální počítače mohou věci zkomplikovat, ale pouze v tom smyslu, že mohou zmást AMT, a tak produkovat matoucí výsledky skenování, pokud je AMT povoleno. amt-howto(7) uvádí příklad systémů Xen, kde AMT používá adresu přidělenou DomU přes DHCP, pokud existuje, což znamená, že skenování ukáže AMT aktivní na DomU, ne Dom0...


Pouhá detekce otevřených portů pro tuto službu je nedostatečná, neindikuje, zda je verze ovlivněna nebo ne. Náš tým vytvořil python skript dostupný na našem githubu:CerberusSecurity/CVE-2017-5689, který zjišťuje, zda je cílový systém zranitelný vůči vzdálenému útoku.

Ukázkové použití:

python CVE_2017_5689_detector.py 10.100.33.252-255

To by vám mělo umožnit zkontrolovat, zda jste vzdáleně zneužitelní. Pokud máte zájem, napsali jsme také krátký blogový příspěvek na http://cerberussec.org/ s naším pohledem na tuto chybu zabezpečení.


Intel má nástroje pro linux na adrese:Linux Detection and Mitigation Tools

na GITHUB

je jeho větev
Linux
  1. Jak zkontrolovat verzi OS a Linuxu

  2. Linux – Jak vyprázdnit vyrovnávací paměti a mezipaměť v systému Linux?

  3. Jak připojit a odpojit souborový systém v Linuxu

  1. Jak používat příkaz Linux mtr

  2. Jak změnit identitu systému Linux

  3. Jak zmírnit zranitelnosti Spectre a Meltdown na systémech Linux?

  1. Naučte se detekovat síťové vybavení pomocí Scientific Linux 7.1 a Python

  2. Jak zjistit, kdo a kdy restartoval systém Linux

  3. Jak nainstalovat a používat Git v systému Linux