Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 13297|Απάντηση: 2

[Linux] Ειδοποίηση επιδιόρθωσης κρίσιμης ευπάθειας ασφαλείας της βιβλιοθήκης Linux Glibc (Σημαντικό)

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 30/1/2015 6:36:02 μ.μ. | | |
Γεια σας, πριν λίγες μέρεςLinuxΑνακαλύφθηκε μια ευπάθεια υπερχείλισης buffer στη συνάρτηση gethostbyname της τυπικής βιβλιοθήκης GNU glibc και ο αριθμός ευπάθειας είναι CVE-2015-0235. Οι χάκερ μπορούν να χρησιμοποιήσουν τη σειρά λειτουργιών gethostbyname για να εκτελέσουν απομακρυσμένο κώδικα και να τον αποκτήσουνΔιακομιστήςΑυτή η ευπάθεια έχει πολλές διαδρομές ενεργοποίησης και μεγάλο εύρος επιπτώσεων, δώστε προσοχή και διορθώστε την προσωρινά εγκαίρως και θα την ενημερώσουμε το συντομότερο δυνατόΚατοπτρισμόςΔιορθώστε. Παρακαλώ να ξέρετε.

1. Ημερομηνία κυκλοφορίας ευπάθειας
201527 Ιανουαρίου, 2019


2. Λογισμικό και συστήματα που έχουν επιβεβαιωθεί ότι χρησιμοποιούνται με επιτυχία
Glibc 2.2Έως 2.17 (περιλαμβάνει τις εκδόσεις 2.2 και 2.17)

3. Περιγραφή των τρωτών σημείων
GNU glibcΜια ευπάθεια υπερχείλισης buffer εκτέθηκε στη συνάρτηση gethostbyname της τυπικής βιβλιοθήκης και ο αριθμός ευπάθειας είναι CVE-2015-0235. Το Glibc είναι μια βιβλιοθήκη C που παρέχει κλήσεις συστήματος και βασικές λειτουργίες, όπως open, malloc, printf κ.λπ. Όλα τα δυναμικά συνδεδεμένα προγράμματα χρησιμοποιούν το Glibc. Ένας απομακρυσμένος εισβολέας θα μπορούσε να εκμεταλλευτεί αυτήν την ευπάθεια για να εκτελέσει αυθαίρετο κώδικα και να κλιμακώσει τα δικαιώματα του χρήστη που εκτελεί την εφαρμογή.

4. Μέθοδοι ανίχνευσης ευπάθειας


Ακολουθήστε τις οδηγίεςΛειτουργίαΜπορώ.
#include <netdb.h>   
#include <stdio.h>   
#include <stdlib.h>   
#include <string.h>   
#include <errno.h>   
#define ΚΑΝΑΡΊΝΙ"in_the_coal_mine"   
δομή {   
  ρυθμιστικό διάλυμα char[1024];   
  κάρβουνο καναρίνι[μέγεθοςτου(ΚΑΝΑΡΙ)];   
} temp = { "buffer", CANARY };   
int main(void) {   
  δομή hostent resbuf?   
  struct hostent *αποτέλεσμα;   
  int herrno;   
  int retval;   
  /*** strlen (όνομα) = 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[sizeof(temp.buffer)];   
  memset(όνομα, '0', len);   
  όνομα[len] = '\0';   
  retval = gethostbyname_r(όνομα,&resbuf, temp.buffer, sizeof(temp.buffer), &αποτέλεσμα, &herrno);   
  αν (strcmp(temp.canary, CANARY) !=0) {   
    puts("ευάλωτο");   
    έξοδος(EXIT_SUCCESS);   
  }   
  αν (retval == ERANGE) {   
    βάζει("μη ευάλωτο");   
    έξοδος(EXIT_SUCCESS);   
  }   
  βάζει("δεν πρέπει να συμβεί");   
  έξοδος(EXIT_FAILURE);   
}


Αποθήκευση ως GHOST.c
Εκτελέστε το gcc GHOST.c -o GHOST


$./ΦΆΝΤΑΣΜΑ   
Ευάλωτη
Αντιπροσωπεύει μια επιτυχημένη επισκευή.


5. Προτείνετε σχέδια επισκευής


Ειδική σημείωση: Δεδομένου ότι το glibc είναι ένα βασικό στοιχείο του συστήματος Linux, για να αποφύγετε τον αντίκτυπο της ενημέρωσης κώδικα στον διακομιστή σας, συνιστάται να επιλέξετε την κατάλληλη στιγμή για επισκευή και να βεβαιωθείτε ότι έχετε δημιουργήσει αντίγραφα ασφαλείας μέσω της λειτουργίας στιγμιότυπου πριν από την επισκευή.



Centos 5/6/7:


yum ενημέρωση glibc


Ubuntu 12/14
apt-get ενημέρωση
apt-get εγκαταστήστε το libc6


Το Debian 6


wget -O /etc/apt/sources.list.d/debian6-lts.listhttp://mirrors.aliyun.com/repo/debian6-lts.list
apt-get ενημέρωση
apt-get εγκαταστήστε το libc6




Το Debian 7


apt-get ενημέρωση
apt-get εγκαταστήστε το libc6


Opensuse 13


Ανανέωση zypper
zypper ενημέρωση glibc*


Aliyun linux 5u7


wget -O /etc/yum.repos.d/aliyun-5.repohttp://mirrors.aliyun.com/repo/aliyun-5.repo  
yum ενημέρωση glibc





Προηγούμενος:C# αντιγράψτε και επικολλήστε πληροφορίες κειμένου στο πρόχειρο
Επόμενος:δομή και χρήση του στοιχείου tag html dl dt dd
Δημοσιεύτηκε στις 30/1/2015 8:51:58 μ.μ. |
έχει διορθωθεί.
Δημοσιεύτηκε στις 31/1/2015 6:49:17 μ.μ. |
βάση | 3,7 kB 00:00     
βάση/primary_db | 4,6 ΜΒ 00:01     
ΕΠΕΛ | 4,4 kB 00:00     
ΕΠΕΛ/primary_db | 6,3 ΜΒ 00:02     
Πρόσθετα | 3,4 kB 00:00     
πρόσθετα/primary_db |  30 kB 00:00     
ενημερώσεις | 3,4 kB 00:00     
Ενημερώσεις/primary_db | 2.1 ΜΒ 00:00     
Ρύθμιση της διαδικασίας ενημέρωσης
Επίλυση εξαρτήσεων
--> Εκτέλεση ελέγχου συναλλαγών
---> Το πακέτο glibc.x86_64 0:2.12-1.132.el6_5.2 θα ενημερωθεί
--> Εξάρτηση επεξεργασίας: glibc = 2.12-1.132.el6_5.2 για πακέτο: glibc-devel-2.12-1.132.el6_5.2.x86_64
--> Εξάρτηση επεξεργασίας: glibc = 2.12-1.132.el6_5.2 για το πακέτο: glibc-headers-2.12-1.132.el6_5.2.x86_64
--> Εξάρτηση επεξεργασίας: glibc = 2.12-1.132.el6_5.2 για πακέτο: glibc-common-2.12-1.132.el6_5.2.x86_64
--> Εξάρτηση επεξεργασίας: glibc = 2.12-1.132.el6_5.2 για το πακέτο: nscd-2.12-1.132.el6_5.2.x86_64
---> Το πακέτο glibc.x86_64 0:2.12-1.149.el6_6.5 θα είναι μια ενημέρωση
--> Εκτέλεση ελέγχου συναλλαγών
---> Το πακέτο glibc-common.x86_64 0:2.12-1.132.el6_5.2 θα ενημερωθεί
---> Το πακέτο glibc-common.x86_64 0:2.12-1.149.el6_6.5 θα είναι μια ενημέρωση
---> Το πακέτο glibc-devel.x86_64 0:2.12-1.132.el6_5.2 θα ενημερωθεί
---> Το πακέτο glibc-devel.x86_64 0:2.12-1.149.el6_6.5 θα είναι μια ενημέρωση
---> Το πακέτο glibc-headers.x86_64 0:2.12-1.132.el6_5.2 θα ενημερωθεί
---> Το πακέτο glibc-headers.x86_64 0:2.12-1.149.el6_6.5 θα είναι μια ενημέρωση
---> Το πακέτο nscd.x86_64 0:2.12-1.132.el6_5.2 θα ενημερωθεί
---> Το πακέτο nscd.x86_64 0:2.12-1.149.el6_6.5 θα είναι μια ενημέρωση
--> Ολοκληρώθηκε η επίλυση εξάρτησης

Οι εξαρτήσεις επιλύθηκαν

=========================================================================================
Μέγεθος αποθετηρίου έκδοσης Package Arch
=========================================================================================
Updating:
glibc x86_64 2.12-1.149.el6_6.5 ενημερώσεις 3.8 M
Ενημέρωση για εξαρτήσεις:
glibc-common x86_64 2.12-1.149.el6_6.5 ενημερώσεις 14 M
glibc-devel x86_64 2.12-1.149.el6_6.5 ενημερώσεις 983 k
glibc-headers x86_64 2.12-1.149.el6_6.5 ενημερώσεις 612 k
NSCD x86_64 2.12-1.149.el6_6.5 ενημερώσεις 223 k

Περίληψη Συναλλαγών
=========================================================================================
Αναβάθμιση 5 Πακέτο(α)

Συνολικό μέγεθος λήψης: 20 M
Είναι εντάξει [y/N]: y
Λήψη πακέτων:
(1/5): glibc-2.12-1.149.el6_6.5.x86_64.rpm | 3,8 ΜΒ 00:00     
(2/5): glibc-common-2.12-1.149.el6_6.5.x86_64.rpm |  14 ΜΒ 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     
-----------------------------------------------------------------------------------------
Σύνολο 4,6 MB/s |  20 ΜΒ 00:04     
Τρέξιμο rpm_check_debug
Εκτέλεση δοκιμής συναλλαγής
Η δοκιμή συναλλαγής ολοκληρώθηκε με επιτυχία
Τρέχουσα συναλλαγή
  Ενημέρωση: glibc-2.12-1.149.el6_6.5.x86_64 1/10
  Ενημέρωση: glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Ενημέρωση: glibc-headers-2.12-1.149.el6_6.5.x86_64 3/10
  Ενημέρωση : glibc-devel-2.12-1.149.el6_6.5.x86_64 4/10
  Ενημέρωση : nscd-2.12-1.149.el6_6.5.x86_64 5/10
  Εκκαθάριση : glibc-devel-2.12-1.132.el6_5.2.x86_64 6/10
  Εκκαθάριση : glibc-headers-2.12-1.132.el6_5.2.x86_64 7/10
  Εκκαθάριση : nscd-2.12-1.132.el6_5.2.x86_64 8/10
  Εκκαθάριση : glibc-common-2.12-1.132.el6_5.2.x86_64 9/10
  Εκκαθάριση : glibc-2.12-1.132.el6_5.2.x86_64 10/10
  Επαλήθευση : nscd-2.12-1.149.el6_6.5.x86_64 1/10
  Επαλήθευση : glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Επαλήθευση : glibc-devel-2.12-1.149.el6_6.5.x86_64 3/10
  Επαλήθευση : glibc-headers-2.12-1.149.el6_6.5.x86_64 4/10
  Επαλήθευση : glibc-2.12-1.149.el6_6.5.x86_64 5/10
  Επαλήθευση : glibc-headers-2.12-1.132.el6_5.2.x86_64 6/10
  Επαλήθευση : nscd-2.12-1.132.el6_5.2.x86_64 7/10
  Επαλήθευση : glibc-devel-2.12-1.132.el6_5.2.x86_64 8/10
  Επαλήθευση : glibc-2.12-1.132.el6_5.2.x86_64 9/10
  Επαλήθευση : 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                                                      

Η εξάρτηση ενημερώθηκε:
  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         

Πλήρης!
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com