GNU/Linux >> Znalost Linux >  >> Linux

Jak zmírnit zranitelnost SRBDS (CVE-2020-0543) bez restartu serveru

Nedávno akademici z Vrije University's Systems and Network Security Group (VUSec) zveřejnili podrobnosti o zranitelnosti CrossTalk nebo SRBDS (CVE-2020-0543) v procesorech Intel. Chyba zabezpečení CrossTalk umožňuje kódu řízenému útočníkem spouštějícím se na jednom jádru CPU k úniku citlivých dat z jiného softwaru běžícího na jiném jádru. V tomto článku vám ukážeme, jak zmírnit tuto zranitelnost procesoru Intel bez restartu serveru.

Co je CrossTalk?

Zranitelnost CrossTalk je typ útoku MDS (microarchitectural data sampling), podobně jako Spectre, Meltdown nebo Zombieload. Umožňuje odhalení a krádež citlivých dat, když k nim stroj přistupuje. Útoky MDS se zaměřují na uživatelská data v přechodném stavu, protože se nacházejí uvnitř CPU a mnoha systémů s ním spojených.

Chyba zabezpečení SRBDS/CrossTalk je přechodná chyba zabezpečení při spuštění. Pojmenovaný jako „Special Register Buffer Data Sampling“ nebo SRBDS (CVE-2020-0543) od Intelu a umožňuje spuštění kódu řízeného útočníkem na jednom jádru CPU, což vede k úniku citlivých dat ze softwaru oběti spuštěného na jiném jádru.



Obrázek 1:Návrh fáze profilování instrukcí CrossTalk, s laskavým svolením VUSec

Touto chybou zabezpečení může být ovlivněn jakýkoli systém, který používá procesor Intel. Zde zkontrolujte, zda je ovlivněn váš procesor.

Zmírnění chyby zabezpečení SRBDS (CVE-2020-0543) bez restartování

Společnost Intel implementovala své zmírnění zranitelnosti SRBDS v aktualizaci mikrokódu distribuované dodavatelům softwaru v úterý 9. června 2020. Toto zmírnění vyžaduje instalaci nejnovějších oprav linuxového jádra a aktualizace mikrokódu. Obě operace se tradičně provádějí při restartu.

I když restartování několika serverů nezní jako problém, pokud jste SysAdmin, který se stará o více než 500 serverů - určitě ano. Restartování celé flotily serverů obvykle vyžaduje důkladné plánování údržby. Naštěstí technologie oprav v reálném čase umožňuje použití aktualizací zabezpečení systémů proti CrossTalk bez restartu, a to jak pro aktualizaci mikrokódu, tak pro aplikaci oprav linuxového jádra.

Canonical, Red Hate a další distributoři vydali bezpečnostní záplaty pro všechny podporované distribuce Ubuntu, Debian, CentOS, Red Hat Enterprise Linux. A přestože Canonical &Red Hat mají své vlastní řešení pro záplatování zranitelností bez restartu, v případě SRBDS/CrossTalk musíte po aktualizaci restartovat počítač nebo server.

Tým KernelCare vytvořil zmírnění bez restartu pro CrossTalk/SRBDS, abyste se mohli vyhnout restartování serverů kvůli použití záplat. Pokyny naleznete níže:

A) Pokud používáte hardware, proveďte 3 kroky k ochraně serverů před zranitelností CrossTalk/SRBDS bez restartu:

Krok 1: Zaregistrujte se a získejte bezplatnou zkušební licenci KernelCare

KernelCare je zdarma k použití po dobu 30 dnů na všech vašich serverech, k přihlášení ke zkušební verzi není potřeba žádná kreditní karta. Je také zdarma pro zdravotnické organizace po zbytek roku 2020 a navždy zdarma pro neziskové organizace.

Krok 2: Aktualizujte mikrokód bez restartu

Příklad:Aktualizace mikrokódu na RHEL

Toto je příklad aktualizace mikrokódu bez restartu na RHEL. Pokyny pro Debian, Ubuntu, CentOS a další distribuce lze nalézt v dokumentaci KernelCare.

U distribucí založených na RHEL můžete k aktualizaci mikrokódu použít obslužný program microcode_ctl.

Než začnete, zkontrolujte zde, zda jsou připraveny záplaty pro vaši distribuci. Stránka se aktualizuje každou hodinu.

1. Získejte nejnovější mikrokód aktualizací microcode_ctl balíček

yum update microcode_ctl

2. Vytvořte force-late-intel–06–4f–01 uvnitř adresáře firmwaru.

touch /lib/firmware/`uname -r`/force-late-intel-06-4f-01

3. Spusťte aktualizaci mikrokódu

/usr/libexec/microcode_ctl/update_ucode

4. Přinutit jádro načíst nový mikrokód

echo 1> /sys/devices/system/cpu/microcode/reload

5. Zkontrolujte nový mikrokód

dmesg | grep microcode
[ 2.254717] microcode: sig=0x306a9, pf=0x10, revision=0x12
[ 2.254820] microcode: Microcode Update Driver: v2.01 <[email protected]>, Peter Oruba
[ 1483.494573] platform microcode: firmware: direct-loading firmware intel-ucode/06-3a-09
[ 1483.495985] microcode: updated to revision 0x21, date = 2019-02-13
[ 1483.496012] platform microcode: firmware: direct-loading firmware intel-ucode/06-3a-09
[ 1483.496698] platform microcode: firmware: direct-loading firmware intel-ucode/06-3a-09
[ 1483.497391] platform microcode: firmware: direct-loading firmware intel-ucode/06-3a-09

6. (Volitelné) Znovu zkontrolujte novou verzi mikrokódu (revize na jádro)

cat /proc/cpuinfo | grep -e microcode
microcode : 0x21
microcode : 0x21
microcode : 0x21
microcode : 0x21

Krok 3:Aplikujte opravy KernelCare

Nyní musíte aktualizovat jádro Linuxu, abyste zajistili, že místní uživatel nemůže číst data, která běží na CPU. S KernelCare to můžete udělat bez restartu. Pokud jste se zaregistrovali ke zkušební verzi v kroku 1 – vše je připraveno a nemusíte dělat nic jiného.

B) Pokud používáte virtuální počítač:

Potřebujete pouze opravit linuxové jádro uvnitř virtuálního počítače. Ujistěte se, že váš hostitelský uzel je také aktualizován, což obvykle provádí váš poskytovatel služeb.

Pokud používáte svůj KernelCare – vaše záplaty bude automaticky doručovat KernelCare a nemusíte dělat nic navíc. Pokud ne – zaregistrujte se k bezplatné 30denní zkušební verzi .


Linux
  1. Linux – Jak se Gnome restartuje bez oprávnění root?

  2. Jak nainstalovat server Ubuntu bez síťového připojení?

  3. Restartujte server

  1. Jak čekat na restart serveru pomocí Ansible?

  2. SElinux:Jak přejít do permisivního režimu bez restartu?

  3. Jak odstranit miliony souborů bez narušení serveru

  1. Jak znovu načíst pravidla Udev bez restartu?

  2. Linux – Jak obnovit 70-persistent-net.rules bez restartu?

  3. Jak restartovat server přes CWP