Před útoky Meltdown/Spectre vás ochrání pouze výměna CPU

Toto je závěr renomované instituce CERT a pokud si myslíte něco jiného, přečtěte si aktuálně nejúplnější informace níže v článku.

Na webových stránkách CERT zveřejnil větu: „Underlying vulnerability is caused by CPU architecture design choices. Fully removing the vulnerability requires replacing vulnerable CPU hardware.“

CERT poté na stránce, která je průběžně aktualizována, toto doporučení odstranil a ponechal jen doporučení provádět aktualizace OS a aplikací. Za mne bych doporučil také aktualizaci hypervisorů a virtualizační infrastruktury, nebo další prvky v systémech ICT infrastruktury, které jsou schopny rizika Meltdown/Spectre v podstatě oslabit.

Na tenhle průšvih bylo zaděláno již dlouho. Problémů v téhle oblasti je více a celková situace bezpečnosti v ICT oblasti je dost kritická. Pojďme si tedy projít postupně pár informací a odkazů zpětně od roku 1996 – ano opravdu od té doby se datují problémy s bezpečností procesorů a jejich chyb.

1996: https://link.springer.com/chapter/10.1007/3-540-68697-5_9 – Informace o tom, jak obejít kryptografii.

2007: https://marc.info/?l=openbsd-misc&m=118296441702631&w=2 – Chyby, které jsou v procesorech Intel CPU.

2017: Intel-SA-00086 – Tohle je příklad chyby Intel ME/AMT a k tomu připojené problémy v SecureBoot s SPS a TXT. U Intelu jsou to nejdříve ARC procesory, potom SPARC a dnes procesory QUIRK.

ICT SECURITYPřestože se o tom většina IT odborníků pouze zmiňovala, obdobná situace je i u AMD s jejich na CPU integrovaným ARMem (TrustZone).

AMD sice nemá Intel ME, ale tzv. Platform Security Processor, funkcionalita je to stejná, ale architektura odlišná. Vzhledem k tomu, že se AMD snaží být otevřené, z licenčních důvodů o tom nemůže mluvit. Uvedený procesor ARM integrovaný na CPU je také SoC (System on Chip) Cortex-A5.

Jelikož v nedávné době bylo prezentováno velké množství zranitelností jak na straně Intelu tak AMD, proto se tento rok máme na co těšit. Bezpečnost je stále ještě „módní“ záležitost, proto se tomuto tématu bude určitě věnovat hodně médií.

2018: MeltDown a Spectre

Jedním z řešení je buď přechod na RISC platformy, které neobsahují tento typ managementu nebo IT specialisté konečně pochopí, že centrální správa systémů znamená také možnost centralizovaného útoku. Centrální správa jsou definovaná zadní vrátka do systému.

Protože se na těchto platformách integrují další funkce na žádost dalších partnerů, je situace stále horší, a tak díky následné složitosti celé situace, je možnost analýzy takovýchto CPU a odstranění všech chyb prakticky nemožné.

Stručný souhrn zranitelností MeltDown a Spectre uvádíme níže a bližší informace naleznete na níže uvedených hypertextových odkazech:

Existují tři zranitelnosti využitelné spekulativním vykonáváním kódu:

a) CVE-2017-5753 aka Variant 1 aka SP1 aka Bounds-check bypass a CVE-2017-5715 aka Variant 2 aka SP2 aka Branch Target Injection (Spectre) (https://www.spectreattack.com/) – umožňuje přinutit i správně napsanou aplikaci k přístupu z aplikace útočníka do jejího adresního prostoru paměti.

b) CVE-2017-5754 aka Variant 3 aka SP3 aka Rogue Data Cache Load (MeltDown) (https://www.meltdownattack.com/ – obsah je stejný jako u předchozího URL) – obchází bariéru proti přístupu do paměti, která procesu nepatří a může tak vyčíst celou paměť, včetně paměti virtuálních strojů sdílených na stejném HW!

  • Ve zkratce jsou postiženy všechny současné procesory od Intelu, vydané od roku 1995 a podle typu zranitelnosti i AMD a ARM procesory a POWER procesory od IBM. Podle některých zpráv jsou postiženy i MIPS procesory (a obecně procesory s vykonáváním instrukcí out of order) v budoucnu. Informace jsou stále zpřesňovány.
  • Problém byl oznámen Googlem vendorům v polovině minulého roku a díky tomu je na velkém množství systémů dostupný update, nicméně informace vyšla na veřejnost předčasně, takže ještě existuje spousta spekulací ohledně reálného dopadu na jednotlivé procesory, a ne všude budou updaty dostupné hned. Stejně tak je možné, ze problém již mohl zneužít někdo jako Zero Day.
  • Praktická detekce případného útoku je obtížná, ne-li nemožná.
  • Všechny zranitelnosti vyžadují vykonat kód útočníka na počítači oběti, což u:

- korektně konfigurovaných serverů znamená využiti další zranitelnosti, kterou je možné provést vzdáleně, ať již napadením logiky nějaké aplikace nebo pomocí exploatace buffer overflow chyb, nebo dalšími způsoby

- klientských zařízení (desktopy, notebooky, tablety, telefony, apod.) je situace o něco horší, protože je zde jednodušší vektor útoku např. zneužitím JavaScriptu v browseru nebo jinými způsoby, kdy je dosaženo spuštění cizího kódu.

  • Patche a updaty závisí na tom, co je updatováno, nicméně u MeltDown zranitelnosti je známo, ze patchování může zpomalit procesor až o desítky procent, což má dopad na:

- velké cloudové hráče (updatovali již dříve, ale nejspíše to bude mít finanční dopady vzhledem k dopadu na výkon), přičemž malí poskytovatelé hostingu VPS, ať už na úrovni kontejnerů nebo klasické paravirtualizace jsou postiženi v některých případech značně.

- servery, kde se jde nadoraz s virtualizací, zde bych chtěl upozornit na projekt Cirba, který se snaží o optimalizaci a úspory a tudíž se může stát, že servery po analýze budou optimalizovány přesně tímto směrem.

- slabší klientská zařízení.

Poznámka nesouvisející s touto zranitelností: Podobně jako procesory Intel, které mají problémy s technologii Intel ME, má teď i AMD (což bylo předpokládáno vzhledem k existenci PSP) – byla nalezena zranitelnost vedoucí ke vzdálenému vykonání kódu, která je typu stack-based overflow: http://seclists.org/fulldisclosure/2018/Jan/12 – existuje již zároveň i „Zero-Day“ exploit ke stažení.

--------------------------------
Obecné informace ke zranitelnostem:

https://googleprojectzero.blogspot.cz/2018/01/reading-privileged-memory-with-side.html – základní podrobný popis zranitelností

https://cyber.wtf/2017/07/28/negative-result-reading-kernel-memory-from-user-mode/  – původní blog, ze kterého bylo možné vyjit již v polovině minulého roku

https://spectreattack.com/ a https://www.meltdownattack.com/ – totožný obsah se základními informacemi a odpověďmi na základní otázky. Obsahuje odkazy na podrobné pojednání (papers) k oběma typům zranitelností: https://meltdownattack.com/meltdown.pdf a https://spectreattack.com/spectre.pdf

https://www.phoronix.com/scan.php?page=article&item=linux-kpti-kvm&num=1

https://www.phoronix.com/scan.php?page=article&item=linux-415-x86pti&num=1

https://www.phoronix.com/scan.php?page=article&item=linux-kpti-pcid&num=1

http://openbenchmarking.org/result/1801049-AL-KPTIKERNE72http://openbenchmarking.org/result/1801049-AL-KPTIKERNE72 – tyto odkazy mohou pomoci při rozhodováni ohledně updatování OS založených na Linuxu – obsahuji porovnání dopadu na výkon

https://nakedsecurity.sophos.com/2018/01/03/fckwit-aka-kaiser-aka-kpti-intel-cpu-flaw-needs-low-level-os-patches/ – podrobnější technické informace o zranitelnostech

https://lwn.net/SubscriberLink/742702/83606d2d267c0193/  – další technicky orientované informace o zranitelnostech

https://cyber.wtf/2017/07/28/negative-result-reading-kernel-memory-from-user-mode/  – opět technicky orientovaná stránka s rozborem zranitelnosti

https://www.bleepingcomputer.com/news/security/list-of-meltdown-and-spectre-vulnerability-advisories-patches-and-updates/  – obecné informace se seznamem patchů a updatů

https://twitter.com/misc0110/status/948706387491786752  – Informace a ukázka úspěšného vykrádaní hesel z password manažeru s tím, že jakmile budou vydány patche, bude zveřejněn i kód

https://twitter.com/brainsmoke/status/948561799875502080 – PoC od PhD studenta ke zneužití zranitelností.

https://pastebin.com/ungvzYxF  – Ukázka PoC pro MeltDown

K procesorům:

Intel:

https://www.intel.com/content/www/us/en/architecture-and-technology/facts-about-side-channel-analysis-and-intel-products.html  – Obecné informace od Intelu včetně FAQ.

https://security-center.intel.com/advisory.aspx?intelid=INTEL-SA-00088&languageid=en-fr  – mj. informace ohledně zasažených procesorů.

AMD:

https://www.amd.com/en/corporate/speculative-execution – informuje o tom, že pro Variantu 1 je potřeba aplikovat patche pro konkrétní OS/SW, na Variantu 2 je minimální riziko exploitace a pro Variantu 3 je nulové riziko. Toto je potřeba brát s rezervou.

ARM:

https://developer.arm.com/support/security-update – Informuje o zranitelných ARM procesorech

Nvidia GPU:

http://nvidia.custhelp.com/app/answers/detail/a_id/4611  – Informuje o zranitelných grafických kartách. Domnívají se, že v tuto chvíli nemají důvod věřit k náchylnosti na bug MeltDown, ale „pouze“ na Spectre.

IBM POWER:

https://www.ibm.com/blogs/psirt/potential-impact-processors-power-family/  – Potvrzuje zranitelnost POWER procesoru a sděluje informaci o updatech k 9. 1. 2018.

Nadace RISC:

https://riscv.org/2018/01/more-secure-world-risc-v-isa/  – Informuje o tom, že procesory s RISC-V ISA architekturou nejsou zranitelné.

Informace nejen na těchto URI jsou neustále updatovány.

K OS, vendorům a aplikacím:

Cisco zařízení:

https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20180104-cpusidechannel  – Po úvodním vágním vyjádření sůpolečnost Cisco upravila informace v tomto odkazu tak, že některé Cisco produkty mohou být dotčeny. Uvádí seznam produktů, které jsou zkoumány a seznam zranitelných produktů.

Předpokládám další update podle toho, jak se jim podaří zjistit zranitelnosti a vydat patche a updaty.

Juniper zarizeni:

https://forums.juniper.net/t5/Security-Now/Meltdown-amp-Spectre-Modern-CPU-vulnerabilities/ba-p/317254  – Zatím ne moc říkající informace k Juniper produktům. Doporučují omezit přístup k síťovým zařízením pro důvěryhodné administrátory z důvěryhodné mgmt sítě nebo počítačů.

OS Microsoft Windows:

https://www.bleepingcomputer.com/news/microsoft/microsoft-releases-emergency-updates-to-fix-meltdown-and-spectre-cpu-flaws/  – Informace s přehledem KB pro jednotlivé verze Windows. Dále informace o tom, že s některými verzemi antivirového SW může docházet k bluescreenu a informace, jak z registru poznat, že antivirový SW je již updatován tak, aby tyto problémy nenastávaly.

https://support.microsoft.com/en-us/help/4073119/protect-against-speculative-execution-side-channel-vulnerabilities-in  – Návod pro zjištění, zda jsou aplikovány patche a cesta ke zjištění příslušných KB pro Windows 10.

https://blogs.technet.microsoft.com/ralphkyttle/2018/01/05/verifying-spectre-meltdown-protections-remotely/  – Návod pro vzdálenou verifikaci existence ochrany proti zranitelnostem obou typů.

OS MacOS, IOS a tvOS:

https://support.apple.com/en-us/HT208394  – Informace o tom, že jsou dotčeny všechny systémy, ale není známa praktická realizace exploitu, který by zranitelností využíval (to je ale překvapení). MeltDown byl mitigovan v iOS 11.2, macOS 10.13.2 a tvOS 11.2 a watchOS mitigaci nevyžaduje. Dále uvádí, že aplikace updatu se při měření neprojevila měřitelným snížením výkonu u macOS ani iOS ani u webbrowsing benchmarku. Pro Spectre bude v nejbližších dnech vydán update pro Safari, kdy snížení výkonu bude menší než 2,5 % a slibují, že budou pokračovat v dalším updatováni.

OS GNU/Linux – distribuce od firmy RedHat:

https://access.redhat.com/security/vulnerabilities/speculativeexecution?sc_cid=701f2000000tsLNAAY  - informace o updatech k jednotlivým produktům RedHatu a v záložkách na stránce lze najit i další informace.

OS GNU/Linux – distribuce Fedora:

https://fedoramagazine.org/protect-fedora-system-meltdown/  – Informace o updatu pro MeltDown – vyšel pro Fedoru 26 a 27 kernel 4.14.11 a pro Rawhide 4.15. Dále informuje že na řešení pro Spectre se pracuje.

OS GNU/Linux – distribuce Ubuntu:

https://insights.ubuntu.com/2018/01/04/ubuntu-updates-for-the-meltdown-spectre-vulnerabilities/ 

https://wiki.ubuntu.com/SecurityTeam/KnowledgeBase/SpectreAndMeltdown  – Informace o tom, že plánované vydání updatu bylo na 9. 1. 2018, ale díky předčasnému úniku informace o zranitelnostech zatím nejsou k dispozici. Updatováno 7. 1. 2018 o dostupných patchích pro účely testovaní.

OS GNU/Linux – distribuce od firmy SUSE:

https://www.suse.com/security/cve/CVE-2017-5715/  – Informace o dostupných updatech a dopadu zranitelností

https://bugzilla.suse.com/show_bug.cgi?id=1068032  – Podrobnější informace z BugZilly SUSE.

OS Google Android:

https://support.google.com/faqs/answer/7622138#android

https://source.android.com/security/bulletin/2018-01-01  – Informace pro vendory zařízení s Androidem byly zaslány v prosinci minulého roku. Obecně Google vydává security patch level 2018-01-05.

Microsoft Edge a Microsoft Internet Explorer:

https://blogs.windows.com/msedgedev/2018/01/03/speculative-execution-mitigations-microsoft-edge-internet-explorer/  – Zveřejněná informace o vydání updatu (s číslem příslušného KB) pro mitigaci Spectre.

Mozilla FireFox:

https://www.mozilla.org/en-US/firefox/57.0.4/releasenotes/  – Oznámeni o vydání verze, která ošetřuje Meltdown i Spectre attacks pro desktopové (Windows, Linux, MaxOSX) i Android OS.

Google Chrome:

https://support.google.com/faqs/answer/7622138#chrome  – Ač osoba odpovědná za nález chyby (Jann Horn) je z Google z projektu Zero, oprava Chrome přijde až s verzí 64 během ledna, kvůli předčasnému zveřejnění zranitelností a v tuto chvíli je ve verzi 63 workaround pomoci funkce (by default vypnuté) nazvané Strict Site Isolation.

Obecné produkty Google:

https://security.googleblog.com/2018/01/todays-cpu-vulnerability-what-you-need.html  – Shrnuje pro jednotlivé produkty potřebu akce uživatelů/administrátorů.

Microsoft Surface & cloud produkty:

https://support.microsoft.com/en-us/help/4073065/surface-guidance-to-protect-against-speculative-execution-side-channel  – Informace o tom, že Microsoft poskytne update UEFI pro Surface a že podnikli akce k zabezpečení jejich cloudových produktů.

Virtualizační technologie VMWARE:

https://lists.vmware.com/pipermail/security-announce/2018/000397.html  – Informuje o updatech a a mitigaci (pouze pro Spectre).

http://www.virtubytes.com/2018/01/05/spectre-vulnerability-patch-vmware-esxi/  – Informace s domněnkou, ze VMware není dotčen Meltdownem a návodem, jak opatchovat proti Spectre.

https://blogs.vmware.com/security/2018/01/vmsa-2018-0002.html  – Informace opět o nedotčení Meltdownem z důvodů, proč si to myslí. Co se týká Spectre, uvádějí, ze je možné dosáhnout uniku informací z jednoho guesta na druhý a uvádějí informace o updatech. Doporučuji přihlásit se k odběru mailing listu.

https://www.reddit.com/r/vmware/comments/7o8ldn/vmware_response_to_what_the_current_patches/  – Podrobnější odpověď VMware na otázku zákazníka ohledně zranitelnosti v případě nepatchovaného guesta.

Virtualizační technologie XEN:

https://xenbits.xen.org/xsa/advisory-254.html  – Informace z 3. 1. 2018 po 22.30 o zranitelnosti a řešení pro XEN. Tvrdí, že na SP1 a SP2 jsou zranitelné jak Intel i AMD procesory, a na SP3 pouze Intel a domnívají se, že postiženy jsou i procesory ARM, nicméně se jim to nepodařilo prokázat. V tuto chvíli nemají řešení pro SP1 a SP3, ale pracují na řešení pro SP2. Mitigaci označují za možnou pro SP3 spuštěním guesta v HVM nebo PVM módu.

https://access.redhat.com/solutions/3307791  – Informace obdobného charakteru přímo od RedHatu.

Virtualizační technologie QEMU:

https://www.qemu.org/2018/01/04/spectre/  – Informace o tom, že pro Meltdown attack postačí update kernelu guest OS, který aplikuje pages table isolation. Pro Spectre attack Variantu 2, která dovoluje guest OS číst z paměti hypervisoru, stačí updatovat host OS. Pro zamezeni čtení paměti guest kernelu z userspace je třeba updatovat i QEMUi guest kernel. V tuto chvíli tyto updaty nejsou k dispozici.

Kompilator GCC (pro GNU/Linux OS):

https://www.root.cz/zpravicky/patche-kernelu-a-gcc-opravuji-spectre-a-meltdown/  – Popisuje obecné patche do GCC i kernelu s tím, že patche do GCC zatím nejsou zařazeny do distribucí.

Informace Microsoftu mj. k dopadu updatu na výkon pro MSSQL:

https://support.microsoft.com/en-us/help/4073225/guidance-for-sql-server 

Informace Microsoftu k mitigaci v Azure cloudu:

https://azure.microsoft.com/en-us/blog/securing-azure-customers-from-cpu-vulnerability/  – Obecné sliby Microsoftu, že se snaží, aby nebyl dopad na zákaznické servery a aplikace v Azure ani ve formě dopadu na performance a ze zatím nemají informace o zneužití zranitelností na serverech Azure.

Informace o prodeji části akcií firmy Intel jejím CEO:

http://www.businessinsider.com/intel-ceo-krzanich-sold-shares-after-company-was-informed-of-chip-flaw-2018-1  – Informace o prodeji akcií Intelu jeho CEO se spekulací, že šlo o reakci CEO po obdržení informace o zranitelnostech a s informací, že šéf Securities and Exchange Commission se odmítl vyjádřit k dalšímu postupu. De facto, CEO prodal tu část akcií, kterou dle smlouvy s Intelem prodat mohl. (Toto je spíše perlička na dokreslení závažnosti situace.)

Informace o „class“ (hromadných) žalobách na Intel:

https://www.engadget.com/2018/01/05/intel-faces-multiple-lawsuits-spectre-meltdown-vulnerabilities/  – Informace hovořící o podání dvou hromadných žalob v USA v Oregonu a Kalifornii a jedné v Indii a spekulace, že jich bude víc. Týkají se zejména zpoždění informací o zranitelnostech a snížení výkonu.

Analýza se spekulací o snížení podílu Intelu na trhu:

https://www.semiaccurate.com/2018/01/04/kaiser-security-holes-will-devastate-intels-marketshare/  – Spekuluje se zde o dopadu zranitelností na podíl Intelu na trhu s procesory.

https://www.renditioninfosec.com/2018/01/meltdown-and-sceptre-enterprise-action-plan/  – Doporučení pro enterprise sféru.

Pokud vás to ještě neunavilo číst, tak jste ten správný „ajťák“ na úrovni. Pokud jste přeskočili sem, na konec článku, pošlete tento článek na vaše ICT oddělení.

Petr Smolník