Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 13297|Odpověď: 2

[linux] Upozornění na kritickou bezpečnostní zranitelnost v knihovně Linux Glibc (důležité)

[Kopírovat odkaz]
Zveřejněno 30.01.2015 18:36:02 | | |
Dobrý den, před pár dnyLinuxByla objevena zranitelnost přetečení bufferu ve funkci gethostbyname standardní knihovny GNU glibc a číslo zranitelnosti je CVE-2015-0235. Hackeři mohou použít sérii funkcí gethostbyname k vykonání vzdáleného kódu a jeho získáníServerTato zranitelnost má mnoho spouštěcích cest a velký dopad, prosím, věnujte jí pozornost a dočasně ji opravte, a my ji co nejdříve aktualizujemeZrcadleníOpravit. Prosím, vědět.

1. Datum zveřejnění zranitelnosti
201527. ledna 2019


2. Software a systémy, u kterých bylo potvrzeno, že jsou úspěšně používány
Glibc 2.2Až do verze 2.17 (zahrnuje verze 2.2 a 2.17)

3. Popis zranitelností
GNU glibcZranitelnost buffer overflow byla odhalena ve funkci gethostbyname standardní knihovny a číslo zranitelnosti je CVE-2015-0235. Glibc je knihovna v C, která poskytuje systémová volání a základní funkce, jako jsou open, malloc, printf atd. Všechny dynamicky propojené programy používají Glibc. Vzdálený útočník by mohl tuto zranitelnost zneužít k vykonání libovolného kódu a zvýšení oprávnění uživatele, který aplikaci provozuje.

4. Metody detekce zranitelností


Postupujte podle návoduProvozKonev.
#include <netdb.h>   
#include <stdio.h>   
#include <stdlib.h>   
#include <string.h>   
#include <errno.h>   
#define CANARY "in_the_coal_mine"   
struct {   
  char buffer[1024];   
  kanárka char [sizeof(CANARY)];   
} temp = { "buffer", CANARY };   
int main(void) {   
  Strukturujte hostent resbuf;   
  struct hostent *výsledek;   
  int herrno;   
  int retval;   
  /*** strlen (název) = size_needed -velikostOf (*host_addr) - sizeof (*h_addr_ptrs) - 1; ***/   
  size_t len = velikosti(temp.buffer) -16*sizeof(nepodepsaný znak) - 2*sizeo(char *) - 1;   
  název postavy[sizeof(temp.buffer)];   
  memset (jméno, '0', len);   
  názvy[len] = '\0';   
  retval = gethostbyname_r(název,&resbuf, temp.buffer, sizeof(temp.buffer), &result, &herrno);   
  if (strcmp(temp.canary, CANARY) !=0) {   
    puts ("zranitelný");   
    exit(EXIT_SUCCESS);   
  }   
  if (retval == POMERANČ) {   
    puts ("nezranitelný");   
    exit(EXIT_SUCCESS);   
  }   
  puts ("nemělo by se to stát");   
  exit(EXIT_FAILURE);   
}


Uložit jako GHOST.c
Run gcc GHOST.c -o GHOST


$./GHOST   
novulnerable
Představuje úspěšnou opravu.


5. Navrhnout plány oprav


Speciální poznámka: Protože glibc je základní součástí systému Linux, doporučuje se, abyste se vyhnuli dopadu záplat na váš server, zvolit vhodný čas na opravu a před opravou si zálohovat během snapshot operace.



Centos 5/6/7:


Mňam, aktualizace glibc


Ubuntu 12/14
APT - získat aktualizaci
apt-get install libc6


Debian 6


wget -O /etc/apt/sources.list.d/debian6-lts.listhttp://mirrors.aliyun.com/repo/debian6-lts.list
APT - získat aktualizaci
apt-get install libc6




Debian 7


APT - získat aktualizaci
apt-get install libc6


Opensuse 13


Zypper Refresh
Zypper Update glibc*


Aliyun linux 5u7


wget -O /etc/yum.repos.d/aliyun-5.repohttp://mirrors.aliyun.com/repo/aliyun-5.repo  
Mňam, aktualizace glibc





Předchozí:C# zkopíruj a vlož textové informace do schránky
Další:HTML DL DT DT Tag Element Struktura a použití
Zveřejněno 30.01.2015 20:51:58 |
byl opraven.
Zveřejněno 31.01.2015 18:49:17 |
základ | 3,7 kB 00:00     
base/primary_db | 4,6 MB 00:01     
epel | 4,4 kB 00:00     
epel/primary_db | 6,3 MB 00:02     
Bonusy | 3,4 kB 00:00     
Bonusy/primary_db |  30 kB 00:00     
Aktualizace | 3,4 kB 00:00     
Aktualizace/primary_db | 2,1 MB 00:00     
Nastavení procesu aktualizace
Řešení závislostí
--> Spouštím kontrolu transakce
---> balíček glibc.x86_64 0:2.12-1.132.el6_5.2 bude aktualizován
--> Závislost na zpracování: glibc = 2.12-1.132.el6_5.2 pro package: glibc-devel-2.12-1.132.el6_5.2.x86_64
--> Závislost na zpracování: glibc = 2.12-1.132.el6_5.2 pro package: glibc-headers-2.12-1.132.el6_5.2.2.x86_64
--> Processing Dependency: glibc = 2.12-1.132.el6_5.2 pro package: glibc-common-2.12-1.132.el6_5.2.2.x86_64
--> Závislost na zpracování: glibc = 2.12-1.132.el6_5.2 pro balíček: nscd-2.12-1.132.el6_5.2.2.x86_64
---> Package glibc.x86_64 0:2.12-1.149.el6_6.5 bude aktualizací
--> Spouštím kontrolu transakce
---> Balíček glibc-common.x86_64 0:2.12-1.132.el6_5.2 bude aktualizován
---> Balíček glibc-common.x86_64 0:2.12-1.149.el6_6.5 bude aktualizován
---> Balíček glibc-devel.x86_64 0:2.12-1.132.el6_5.2 bude aktualizován
---> Balíček glibc-devel.x86_64 0:2.12-1.149.el6_6.5 bude aktualizován
---> Balíček glibc-headers.x86_64 0:2.12-1.132.el6_5.2 bude aktualizován
---> Balíček glibc-headers.x86_64 0:2.12-1.149.el6_6.5 bude aktualizován
---> Balíček nscd.x86_64 0:2.12-1.132.el6_5.2 bude aktualizován
---> Package nscd.x86_64 0:2.12-1.149.el6_6.5 bude aktualizací
--> Hotové řešení závislostí

Vyřešené závislosti

=========================================================================================
Velikost repozitáře verzí Package Arch
=========================================================================================
Updating:
GLIBC x86_64 aktualizace 2.12-1.149.el6_6.5 3.8 M
Aktualizace pro závislosti:
glibc-common x86_64 2.12-1.149.el6_6.5 aktualizace 14 M
Glibc-Devel x86_64 2.12-1.149.el6_6.5 Updates 983 K
Glibc-headers x86_64 2.12-1.149.el6_6.5 Updates 612 K
NSCD x86_64 2.12-1.149.el6_6.5 Aktualizace 223 K

Shrnutí transakcí
=========================================================================================
Balíček Upgrade 5

Celková velikost ke stažení: 20 M
Je to v pořádku [y/N]: y
Stahování balíčků:
(1/5): glibc-2.12-1.149.el6_6.5.x86_64.rpm | 3,8 MB 00:00     
(2/5): glibc-common-2.12-1.149.el6_6.5.x86_64.rpm |  14 MB 00:03     
(3/5): glibc-devel-2.12-1.149.el6_6.5.x86_64.rpm | 983 kB 00:00     
(4/5): glibc-headers-2.12-1.149.el6_6.5.x86_64.rpm | 612 kB 00:00     
(5/5): NSCD-2.12-1.149.el6_6.5.x86_64.rpm | 223 kB 00:00     
-----------------------------------------------------------------------------------------
Celkem 4,6 MB/s |  20 MB 00:04     
Běžíme rpm_check_debug
Spuštění transakčního testu
Transakční test úspěšný
Běžící transakce
  Aktualizace: glibc-2.12-1.149.el6_6.5.x86_64 1/10
  Aktualizace: glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Aktualizace: glibc-headers-2.12-1.149.el6_6.5.x86_64 3/10
  Aktualizace: glibc-devel-2.12-1.149.el6_6.5.x86_64 4/10
  Aktualizace: nscd-2.12-1.149.el6_6.5.x86_64 5/10
  Úklid: glibc-devel-2.12-1.132.el6_5.2.x86_64 6/10
  Úklid : glibc-headers-2.12-1.132.el6_5.2.x86_64 7/10
  Úklid: nscd-2.12-1.132.el6_5.2.x86_64 8/10
  Úklid: glibc-common-2.12-1.132.el6_5.2.x86_64 9/10
  Úklid: glibc-2.12-1.132.el6_5.2.x86_64 10/10
  Ověření: nscd-2.12-1.149.el6_6.5.x86_64 1/10
  Ověření: glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Ověření: glibc-devel-2.12-1.149.el6_6.5.x86_64 3/10
  Ověření: glibc-headers-2.12-1.149.el6_6.5.x86_64 4/10
  Ověření: glibc-2.12-1.149.el6_6.5.x86_64 5/10
  Ověření: glibc-headers-2.12-1.132.el6_5.2.x86_64 6/10
  Ověření: nscd-2.12-1.132.el6_5.2.x86_64 7/10
  Ověření: glibc-devel-2.12-1.132.el6_5.2.x86_64 8/10
  Ověřuji: glibc-2.12-1.132.el6_5.2.x86_64 9/10
  Ověření: glibc-common-2.12-1.132.el6_5.2.x86_64 10/10

Updated:
  glibc.x86_64 0:2,12-1.149.el6_6,5                                                      

Aktualizace závislosti:
  GLIBC-common.x86_64 0:2,12-1.149.el6_6,5 GLIBC-devel.x86_64 0:2,12-1.149.el6_6,5   
  GLIBC-headers.x86_64 0:2,12-1.149.el6_6,5 nscd.x86_64 0:2,12-1.149.el6_6,5         

Hotovo!
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com