Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 13297|Antwort: 2

[Linux] Linux Glibc Library Critical Security Vulnerability Fix-Hinweis (Wichtig)

[Link kopieren]
Veröffentlicht am 30.01.2015 18:36:02 | | |
Hallo, vor ein paar TagenLinuxEine Buffer-Overflow-Schwachstelle wurde in der gethostbyname-Funktion der GNU glibc-Standardbibliothek entdeckt, und die Schwachstellennummer lautet CVE-2015-0235. Hacker können die gethostbyname-Reihe von Funktionen nutzen, um entfernten Code auszuführen und ihn zu erhaltenServerDiese Schwachstelle hat viele Auslöserpfade und große Auswirkungen – bitte beachten Sie sie und beheben Sie sie vorübergehend rechtzeitig, wir werden sie so bald wie möglich aktualisierenSpiegelungLösung. Bitte wissen Sie es.

1. Freisetzungsdatum der Schwachstelle
201527. Januar 2019


2. Software und Systeme, die als erfolgreich genutzt wurden
Glibc 2.2Bis 2.17 (einschließlich Versionen 2.2 und 2.17)

3. Beschreibung der Schwachstellen
GNU glibcEine Buffer-Overflow-Schwachstelle wurde in der gethostbyname-Funktion der Standardbibliothek offengelegt, und die Schwachstellennummer lautet CVE-2015-0235. Glibc ist eine C-Bibliothek, die Systemaufrufe und grundlegende Funktionen wie Open, Malloc, Printf usw. bereitstellt. Alle dynamisch verbundenen Programme verwenden Glibc. Ein entfernter Angreifer könnte diese Schwachstelle ausnutzen, um beliebigen Code auszuführen und die Rechte des Benutzers zu erhöhen, der die Anwendung ausführt.

4. Schwachstellenerkennungsmethoden


Befolgen Sie die AnweisungenBetriebDose.
#include <netdb.h>   
#include <stdio.h>   
#include <stdlib.h>   
#include <string.h>   
#include <errno.h>   
#define KANARIENVOGEL "in_the_coal_mine"   
struct {   
  Char Puffer[1024];   
  Char Canary[sizeof(CANARY)];   
} temp = { "puffer", CANARY };   
int main(void) {   
  Struct Hostent Resbuf;   
  Struct hostent *Ergebnis;   
  Int Herrno;   
  Int Retval;   
  /*** strlen (Name) = size_needed -Sizeof (*host_addr) - Sizeof (*h_addr_ptrs) - 1; ***/   
  size_t len = sizeof(temp.buffer) -16*sizeof(unsigned char) - 2*sizeof(char *) - 1;   
  char name[sizeof(temp.buffer)];   
  memset (Name, '0', Len);   
  name[len] = '\0';   
  retval = gethostbyname_r(name,&resbuf, temp.buffer, sizeof(temp.buffer), &result, &herrno);   
  if (strcmp(temp.canary, CANARY) !=0) {   
    puts ("verwundbar");   
    Ausgang(EXIT_SUCCESS);   
  }   
  wenn (retval == EBEREICH) {   
    puts("nichtverwundbar");   
    Ausgang(EXIT_SUCCESS);   
  }   
  puts("sollte nicht passieren");   
  Ausgang(EXIT_FAILURE);   
}


Speichere als GHOST.c
Führe gcc GHOST.c -o GHOST aus


$./GHOST   
novulnerable
Stellt eine erfolgreiche Reparatur dar.


5. Vorschläge für Reparaturpläne


Besonderer Hinweis: Da glibc eine grundlegende Komponente des Linux-Systems ist, wird empfohlen, um die Auswirkungen von Patches auf deinen Server zu vermeiden, einen geeigneten Zeitpunkt für die Reparatur zu wählen und vor der Reparatur ein Backup durch den Snapshot-Vorgang zu machen.



Centos 06.05.7:


Yum Update glibc


Ubuntu 12/14
apt-get update
apt-get install libc6


Debian 6


wget -O /etc/apt/sources.list.d/debian6-lts.listhttp://mirrors.aliyun.com/repo/debian6-lts.list
apt-get update
apt-get install libc6




Debian 7


apt-get update
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  
Yum Update glibc





Vorhergehend:C# kopiere und füge Textinformationen in die Zwischenablage ein
Nächster:HTML dl dt dd Tag-Elementsyntax Struktur und Verwendung
Veröffentlicht am 30.01.2015 20:51:58 |
wurde behoben.
Veröffentlicht am 31.01.2015 18:49:17 |
Basis | 3,7 kB 00:00     
Basis/primary_db | 4,6 MB 00:01     
epel | 4,4 kB 00:00     
epel/primary_db | 6,3 MB 00:02     
Extras | 3,4 kB 00:00     
Extras/primary_db |  30 kB 00:00     
Aktualisierungen | 3,4 kB 00:00     
Updates/primary_db | 2,1 MB 00:00     
Einrichtung des Aktualisierungsprozesses
Auflösen von Abhängigkeiten
--> Transaktionsprüfung wird durchgeführt
---> Paket glibc.x86_64 0:2.12-1.132.el6_5.2 wird aktualisiert
--> Verarbeitungsabhängigkeit: glibc = 2.12-1.132.el6_5.2 für Paket: glibc-devel-2.12-1.132.el6_5.2.x86_64
--> Verarbeitungsabhängigkeit: glibc = 2.12-1.132.el6_5.2 für Paket: glibc-headers-2.12-1.132.el6_5.2.x86_64
--> Verarbeitungsabhängigkeit: glibc = 2.12-1.132.el6_5.2 für Paket: glibc-common-2.12-1.132.el6_5.2.x86_64
--> Verarbeitungsabhängigkeit: glibc = 2.12-1.132.el6_5.2 für Paket: nscd-2.12-1.132.el6_5.2.x86_64
---> Paket glibc.x86_64 0:2.12-1.149.el6_6.5 wird ein Update sein
--> Transaktionsprüfung wird durchgeführt
---> Paket glibc-common.x86_64 0:2.12-1.132.el6_5.2 wird aktualisiert
---> Paket glibc-common.x86_64 0:2.12-1.149.el6_6.5 wird ein Update geben
---> Paket glibc-devel.x86_64 0:2.12-1.132.el6_5.2 wird aktualisiert
---> Paket glibc-devel.x86_64 0:2.12-1.149.el6_6.5 wird ein Update geben
---> Paket glibc-headers.x86_64 0:2.12-1.132.el6_5.2 wird aktualisiert
---> Paket glibc-headers.x86_64 0:2.12-1.149.el6_6.5 wird ein Update geben
---> Paket nscd.x86_64 0:2.12-1.132.el6_5.2 wird aktualisiert
---> Paket nscd.x86_64 0:2.12-1.149.el6_6.5 wird ein Update sein
--> Abgeschlossene Abhängigkeitslösung

Gelöste Abhängigkeiten

=========================================================================================
Größe des Paket-Arch-Versions-Repositorys
=========================================================================================
Updating:
glibc x86_64 2.12-1.149.el6_6.5 Aktualisierungen 3.8 M
Aktualisierung für Abhängigkeiten:
glibc-common x86_64 2.12-1.149.el6_6.5 aktualisiert 14 M
glibc-devel x86_64 2.12-1.149.el6_6.5 Aktualisierungen 983 K
glibc-Headers x86_64 2.12-1.149.el6_6.5 Aktualisierungen 612 k
NSCD x86_64 2.12-1.149.el6_6.5 Aktualisierungen 223 k

Transaktionsübersicht
=========================================================================================
Upgrade 5 Paket(e)

Gesamt-Download-Größe: 20 Millionen
Ist das in Ordnung [y/N]: y
Pakete herunterladen:
(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     
-----------------------------------------------------------------------------------------
Gesamt 4,6 MB/s |  20 MB 00:04     
Laufen rpm_check_debug
Durchführung von Transaktionstests
Transaktionstest erfolgreich
Laufende Transaktion
  Aktualisierung: glibc-2.12-1.149.el6_6.5.x86_64 1/10
  Aktualisierung: glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Aktualisierung: glibc-headers-2.12-1.149.el6_6.5.x86_64 3/10
  Aktualisierung: glibc-devel-2.12-1.149.el6_6.5.x86_64 10.4
  Aktualisierung: nscd-2.12-1.149.el6_6.5.x86_64 5/10
  Aufräumen: glibc-devel-2.12-1.132.el6_5.2.x86_64 10.6.
  Aufräumen: glibc-headers-2.12-1.132.el6_5.2.x86_64 7/10
  Bereinigung: nscd-2.12-1.132.el6_5.2.x86_64 10.8
  Aufräumen: glibc-common-2.12-1.132.el6_5.2.x86_64 10.9.
  Aufräumen: glibc-2.12-1.132.el6_5.2.x86_64 10.10
  Verifizierung: nscd-2.12-1.149.el6_6.5.x86_64 1/10
  Verifizierung: glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Verifizierung: glibc-devel-2.12-1.149.el6_6.5.x86_64 3/10
  Verifizierung: glibc-headers-2.12-1.149.el6_6.5.x86_64 4/10
  Verifizierung: glibc-2.12-1.149.el6_6.5.x86_64 5/10
  Verifizieren: glibc-headers-2.12-1.132.el6_5.2.x86_64 6/10
  Verifizierung: nscd-2.12-1.132.el6_5.2.x86_64 7/10
  Verifizieren: glibc-devel-2.12-1.132.el6_5.2.x86_64 8/10
  Verifizierung: glibc-2.12-1.132.el6_5.2.x86_64 9/10
  Verifizierung: 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                                                      

Abhängigkeit aktualisiert:
  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         

Vollständig!
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com