Hei, muutama päivä sittenLinuxPuskurin ylivuotohaavoittuvuus on havaittu GNU glibc -standardikirjaston gethostbyname-funktiossa, ja haavoittuvuuden numero on CVE-2015-0235. Hakkerit voivat käyttää gethostbyname-sarjaa toimintoja suorittaakseen etäkoodin ja saadakseen senPalvelinTällä haavoittuvuudella on monia laukaisupolkuja ja laaja vaikutus, kiinnitä huomiota ja korjaa se tilapäisesti ajoissa, niin päivitämme sen mahdollisimman pianPeilausKorjaa. Tiedäthän.
1. Haavoittuvuuden julkaisupäivä
201527. tammikuuta 2019
2. Ohjelmistot ja järjestelmät, joiden on vahvistettu onnistuneeksi käytettäväksi
Glibc 2.2Versioon 2.17 asti (sisältää versiot 2.2 ja 2.17)
3. Haavoittuvuuksien kuvaus
GNU glibcPuskurin ylivuotohaavoittuvuus paljastui standardikirjaston gethostbyname-funktiossa, ja haavoittuvuuden numero on CVE-2015-0235. Glibc on C-kirjasto, joka tarjoaa järjestelmäkutsuja ja perustoimintoja, kuten open, malloc, printf jne. Kaikki dynaamisesti yhdistetyt ohjelmat käyttävät Glibc:tä. Etähyökkääjä voisi hyödyntää tätä haavoittuvuutta suorittaakseen mielivaltaista koodia ja nostaa sovelluksen käyttäjän oikeuksia.
4. Haavoittuvuuksien tunnistusmenetelmät
Seuraa ohjeitaToimintaVoida. #include <netdb.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <errno.h> #define KANARIA"in_the_coal_mine" struct { char buffer[1024]; char canary[sizeof(CANARY)]; } temp = { "buffer", CANARY }; int main(void) { struct hostent resbuf; struct hostent *tulos; Int Herrno; int retval; /*** strlen (name) = size_needed -sizeof (*host_addr) - sizeof (*h_addr_ptrs) - 1; ***/ size_t len = sizeof(temp.buffer) -16*sizeof(allekirjoittamaton hahmo) - 2*sizeof(hahmo *) - 1; char name[sizeof(temp.buffer)]; memset (nimi, '0', lenssi); nimi[len] = '\0'; retval = gethostbyname_r(name,&resbuf, temp.buffer, sizeof(temp.buffer), &result, &herrno); if (strcmp(temp.kanari, KANARI) !=0) { puts("haavoittuvainen"); exit(EXIT_SUCCESS); } if (retval == ORANSSI) { puts("notpurnerable"); exit(EXIT_SUCCESS); } puts("ei pitäisi tapahtua"); exit(EXIT_FAILURE);
}
Tallenna nimellä GHOST.c Käynnistä gcc GHOST.c -o GHOST
$./HAAMU Novulnerable Edustaa onnistunutta korjausta.
5. Ehdota korjaussuunnitelmia
Erityishuomautus: Koska glibc on Linux-järjestelmän perusosa, on suositeltavaa valita sopiva korjausaika ja varmistaa, että varmuuskopioit snapshot-toiminnon ennen korjausta.
Centos 5/6/7:
Nam päivitys glibc
Ubuntu 12/14
apt-get päivitys
apt-get asenna libc6
Debian 6
wget -O /etc/apt/sources.list.d/debian6-lts.listhttp://mirrors.aliyun.com/repo/debian6-lts.list apt-get päivitys apt-get asenna libc6
Debian 7
apt-get päivitys
apt-get asenna libc6
Opensuse 13
Zypper Refresh
zypper-päivitys glibc*
Aliyun Linux 5u7
wget -O /etc/yum.repos.d/aliyun-5.repohttp://mirrors.aliyun.com/repo/aliyun-5.repo Nam päivitys glibc
|