Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 13297|Respuesta: 2

[Linux] Aviso de corrección de vulnerabilidades críticas de seguridad en la biblioteca Linux Glibc (Importante)

[Copiar enlace]
Publicado en 30/1/2015 18:36:02 | | |
Hola, hace unos díasLinuxSe ha descubierto una vulnerabilidad de desbordamiento de búfer en la función gethostbyname de la biblioteca estándar glibc GNU, y el número de vulnerabilidad es CVE-2015-0235. Los hackers pueden usar la serie de funciones gethostbyname para ejecutar código remoto y obtenerloServidorEsta vulnerabilidad tiene muchos desencadenantes y un gran alcance de impacto; por favor, presta atención y arréglala temporalmente a tiempo, y la actualizaremos lo antes posibleEspejamientoArreglar. Por favor, que lo tengan en cuenta.

1. Fecha de lanzamiento de vulnerabilidades
201527 de enero de 2019


2. Software y sistemas que han sido confirmados como utilizados con éxito
Glibc 2.2Hasta la 2.17 (incluye las versiones 2.2 y 2.17)

3. Descripción de vulnerabilidades
GNU glibcSe expuso una vulnerabilidad de desbordamiento de búfer en la función gethostbyname de la biblioteca estándar, y el número de vulnerabilidad es CVE-2015-0235. Glibc es una biblioteca C que proporciona llamadas al sistema y funciones básicas, como open, malloc, printf, etc. Todos los programas conectados dinámicamente usan Glibc. Un atacante remoto podría aprovechar esta vulnerabilidad para ejecutar código arbitrario y escalar los privilegios del usuario que ejecuta la aplicación.

4. Métodos de detección de vulnerabilidades


Sigue las instruccionesFuncionamientoEnlatar.
#include <netdb.h>   
#include <stdio.h>   
#include <stdlib.h>   
#include <string.h>   
#include <errno.h>   
#define CANARIO "in_the_coal_mine"   
struct {   
  char buffer[1024];   
  char canary[tamaño de(CANARY)];   
} temp = { "buffer", CANARY };   
int main(void) {   
  Struct Hostent Resbuf;   
  struct hostent *resultado;   
  int herrno;   
  int retval;   
  /*** strlen (nombre) = size_needed -tamañode(*host_addr) - tamañode(*h_addr_ptrs) - 1; ***/   
  size_t len = tamañode(tampón.temp) -16*tamañode(char sin signo) - 2*tamañode(char *) - 1;   
  nombre del char [sizeof(temp.buffer)];   
  memset (nombre, '0', len);   
  name[len] = '\0';   
  retval = gethostbyname_r(name,&resbuf, temp.buffer, sizeof(temp.buffer), & result, &herrno);   
  si (strcmp(temp.canary, CANARY) !=0) {   
    puts ("vulnerable");   
    salida(EXIT_SUCCESS);   
  }   
  if (retval == ERANGE) {   
    puts ("no vulnerable");   
    salida(EXIT_SUCCESS);   
  }   
  puts ("no debería pasar");   
  salida(EXIT_FAILURE);   
}


Guardar como GHOST.c
Ejecuta gcc GHOST.c -o GHOST


$./GHOST   
novulnerable
Representa una reparación exitosa.


5. Sugiere planes de reparación


Nota especial: Dado que glibc es un componente básico del sistema Linux, para evitar el impacto de los parches en tu servidor, se recomienda elegir un momento adecuado para reparar y asegurarte de hacer una copia de seguridad durante la operación de instantánea antes de reparar.



Centos 5/6/7:


Actualización Yum Glibc


Ubuntu 14/12
Actualización apt-get
apt-get install libc6


Debian 6


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




Debian 7


Actualización apt-get
apt-get install libc6


Opensuse 13


actualización de zypper
zypper update glibc*


Aliyun linux 5u7


wget -O /etc/yum.repos.d/aliyun-5.repohttp://mirrors.aliyun.com/repo/aliyun-5.repo  
Actualización Yum Glibc





Anterior:C# copiar y pegar información de texto en la carpeta
Próximo:Estructura y uso de la sintaxis de elementos de la etiqueta dt dd de HTML
Publicado en 30/1/2015 20:51:58 |
se ha arreglado.
Publicado en 31/1/2015 18:49:17 |
base | 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     
Extras | 3,4 kB 00:00     
extras/primary_db |  30 kB 00:00     
Actualizaciones | 3,4 kB 00:00     
actualizaciones/primary_db | 2,1 MB 00:00     
Configuración del proceso de actualización
Resolución de dependencias
--> Realizando comprobación de transacciones
---> Paquete glibc.x86_64 0:2.12-1.132.el6_5.2 se actualizará
--> Dependencia de procesamiento: glibc = 2.12-1.132.el6_5.2 para paquete: glibc-devel-2.12-1.132.el6_5.2.x86_64
--> Dependencia de procesamiento: glibc = 2.12-1.132.el6_5.2 para paquete: glibc-headers-2.12-1.132.el6_5.2.x86_64
--> Dependencia de procesamiento: glibc = 2.12-1.132.el6_5.2 para paquete: glibc-common-2.12-1.132.el6_5.2.x86_64
--> Dependencia de procesamiento: glibc = 2.12-1.132.el6_5.2 para paquete: nscd-2.12-1.132.el6_5.2.x86_64
---> paquete glibc.x86_64 0:2.12-1.149.el6_6.5 será una actualización
--> Realizando comprobación de transacciones
---> Paquete glibc-common.x86_64 0:2.12-1.132.el6_5.2 será actualizado
---> Package glibc-common.x86_64 0:2.12-1.149.el6_6.5 será una actualización
---> Paquete glibc-devel.x86_64 0:2.12-1.132.el6_5.2 se actualizará
---> Package glibc-devel.x86_64 0:2.12-1.149.el6_6.5 será una actualización
---> Paquete glibc-headers.x86_64 0:2.12-1.132.el6_5.2 se actualizará
---> Package glibc-headers.x86_64 0:2.12-1.149.el6_6.5 será una actualización
---> Paquete nscd.x86_64 0:2.12-1.132.el6_5.2 se actualizará
---> paquete nscd.x86_64 0:2.12-1.149.el6_6.5 será una actualización
--> Resolución de Dependencias Terminada

Dependencias resueltas

=========================================================================================
Tamaño del repositorio de versiones de Package Arch
=========================================================================================
Updating:
glibc x86_64 actualizaciones 2.12-1.149.el6_6.5 3.8 M
Actualización para dependencias:
glibc-common x86_64 2.12-1.149.el6_6.5 actualizaciones 14 M
glibc-devel x86_64 2.12-1.149.el6_6.5 actualizaciones 983 k
glibc-headers x86_64 actualizaciones 2.12-1.149.el6_6.5 612 k
NSCD x86_64 2.12-1.149.el6_6.5 Actualizaciones 223 K

Resumen de la transacción
=========================================================================================
Paquete(s) de Upgrade 5

Tamaño total de descarga: 20 M
¿Está bien esto [y/N]: y
Descargando paquetes:
(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     
-----------------------------------------------------------------------------------------
Total 4,6 MB/s |  20 MB 00:04     
Correr rpm_check_debug
Ejecución de pruebas de transacciones
Prueba de transacción exitosa
Transacción en ejecución
  Actualizando: glibc-2.12-1.149.el6_6.5.x86_64 1/10
  Actualizando: glibc-common-2.12-1.149.el6_6.5.x86_64 10/2
  Actualizando: glibc-headers-2.12-1.149.el6_6.5.x86_64 10/3
  Actualizando: glibc-devel-2.12-1.149.el6_6.5.x86_64 4/10
  Actualizando: nscd-2.12-1.149.el6_6.5.x86_64 10/5
  Limpieza : glibc-devel-2.12-1.132.el6_5.2.x86_64 6/10
  Limpieza : glibc-headers-2.12-1.132.el6_5.2.x86_64 7/10
  Limpieza : nscd-2.12-1.132.el6_5.2.x86_64 8/10
  Limpieza : glibc-common-2.12-1.132.el6_5.2.x86_64 9/10
  Limpieza : glibc-2.12-1.132.el6_5.2.x86_64 10/10
  Verificando: nscd-2.12-1.149.el6_6.5.x86_64 1/10
  Verificando: glibc-common-2.12-1.149.el6_6.5.x86_64 2/10
  Verificando: glibc-devel-2.12-1.149.el6_6.5.x86_64 3/10
  Verificando: glibc-headers-2.12-1.149.el6_6.5.x86_64 4/10
  Verificando: glibc-2.12-1.149.el6_6.5.x86_64 5/10
  Verificando: glibc-headers-2.12-1.132.el6_5.2.x86_64 6/10
  Verificando: nscd-2.12-1.132.el6_5.2.x86_64 7/10
  Verificando: glibc-devel-2.12-1.132.el6_5.2.x86_64 8/10
  Verificando: glibc-2.12-1.132.el6_5.2.x86_64 9/10
  Verificando: 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                                                      

Dependencia actualizada:
  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         

¡Íntegro!
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com