Skip to content
KitploitKITPLOIT
HerramientasBlog
Log in
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
ubuntu-cve-2019-14287-patch-manager — gestor de parches | Kitploit
Herramientas/GitHubGitHub/hivinmanjusri/ubuntu-cve-2019-14287-patch-manager
Escalada de PrivilegiosAnálisis de VulnerabilidadesScripting y AutomatizaciónAuditoría de ConfiguraciónMala ConfiguraciónAprendizaje y EducaciónLabs y Práctica
GitHub

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
hivinmanjusri/ubuntu-cve-2019-14287-patch-manager

ubuntu-cve-2019-14287-patch-manager

gestor de parches

Ver Repositorio
14hace 5 mesesAún no revisado

Ubuntu CVE-2019-14287 Patch Manager

Ubuntu CVE-2019-14287 Patch Manager es una herramienta de laboratorio con interfaz gráfica (GUI) para comprobar, mitigar y verificar la protección contra CVE-2019-14287, una vulnerabilidad de escalada de privilegios en sudo.

Este proyecto se desarrolló para un entorno de laboratorio Ubuntu 19.04 amd64.


Propósito del proyecto

CVE-2019-14287 afecta a versiones antiguas de sudo. La vulnerabilidad permite que un usuario con una regla de sudoers que excluye a root omita la restricción utilizando un ID de usuario numérico manipulado, como -1 o 4294967295.

Ejemplo de regla sudoers de riesgo:

someuser ALL=(ALL, !root) /usr/bin/vim

En versiones vulnerables de sudo, esto podría explotarse con:

sudo -u#-1 id -u
sudo -u#4294967295 id -u

Si la salida es 0, el comando se ejecutó como root.


Qué hace esta aplicación

La aplicación proporciona dos capas de protección:

  1. Parche real del paquete sudo
    La herramienta puede ejecutar el comando oficial de actualización del paquete para actualizar sudo.

  2. Mitigación mediante configuración de sudoers
    La herramienta analiza los archivos de sudoers y desactiva las reglas de riesgo que contienen !root o !#0.


Características principales

  • Comprobar la versión de Ubuntu
  • Comprobar la arquitectura del sistema
  • Comprobar la versión de sudo instalada
  • Aplicar el parche real del paquete sudo
  • Analizar /etc/sudoers
  • Analizar /etc/sudoers.d/*
  • Detectar líneas activas de sudoers que contengan:
    • !root
    • ! root
    • !#0
    • ! #0
  • Mostrar las líneas de riesgo en la interfaz gráfica
  • Desactivar las líneas de riesgo seleccionadas
  • Crear copias de seguridad antes de la modificación
  • Validar los cambios con visudo -cf
  • Verificar la protección contra valores de UID Runas manipulados

Estructura del proyecto

ubuntu-cve-2019-14287-patch-manager/
├── app.py
├── scripts/
│   ├── check_system.sh
│   ├── apply_real_sudo_patch.sh
│   └── verify_patch.sh
├── assets/
├── README.md
├── .gitignore
├── logs/       generated at runtime
├── backups/    generated at runtime
├── package/    generated during .deb build
└── dist/       generated .deb output

Requisitos

Instala las dependencias:

sudo apt update
sudo apt install -y python3 python3-tk sudo

Ejecutar desde el código fuente

Ve a la carpeta del proyecto:

cd ~/projects/ubuntu-cve-2019-14287-patch-manager

Ejecuta la aplicación:

sudo python3 app.py

La aplicación debe ejecutarse como root porque necesita acceso a:

/etc/sudoers
/etc/sudoers.d/*

Crear el paquete Debian

Desde la raíz del proyecto:

mkdir -p package/DEBIAN
mkdir -p package/usr/share/ubuntu-cve-2019-14287-patch-manager
mkdir -p package/usr/local/bin
mkdir -p dist

Copia los archivos de la aplicación:

cp app.py package/usr/share/ubuntu-cve-2019-14287-patch-manager/
cp -r scripts package/usr/share/ubuntu-cve-2019-14287-patch-manager/
cp -r assets package/usr/share/ubuntu-cve-2019-14287-patch-manager/

Crea las carpetas de ejecución:

mkdir -p package/usr/share/ubuntu-cve-2019-14287-patch-manager/logs
mkdir -p package/usr/share/ubuntu-cve-2019-14287-patch-manager/backups

Crea el lanzador:

cat > package/usr/local/bin/ubuntu-cve-2019-14287-patch-manager <<'LAUNCHER'
#!/bin/bash
cd /usr/share/ubuntu-cve-2019-14287-patch-manager
exec python3 app.py
LAUNCHER

chmod +x package/usr/local/bin/ubuntu-cve-2019-14287-patch-manager

Crea el archivo de control de Debian:

cat > package/DEBIAN/control <<'CONTROL'
Package: ubuntu-cve-2019-14287-patch-manager
Version: 1.0.0
Section: utils
Priority: optional
Architecture: all
Depends: python3, python3-tk, sudo
Maintainer: Hivin Manju Sri <[email protected]>
Description: GUI patch manager for CVE-2019-14287 sudo vulnerability
 A lab GUI tool for checking sudo version, applying the sudo package patch,
 scanning sudoers files for risky !root or !#0 rules, disabling selected risky
 rules safely, and verifying CVE-2019-14287 protection.
CONTROL

Compila:

chmod 755 package/DEBIAN
chmod 644 package/DEBIAN/control
dpkg-deb --build package dist/ubuntu-cve-2019-14287-patch-manager_1.0.0_all.deb

Instala:

sudo dpkg -i dist/ubuntu-cve-2019-14287-patch-manager_1.0.0_all.deb
sudo apt --fix-broken install -y

Ejecuta después de instalar:

sudo ubuntu-cve-2019-14287-patch-manager

Flujo de trabajo de la aplicación

  1. Haz clic en Check System
  2. Haz clic en Apply Real Sudo Patch
  3. Haz clic en Scan Sudoers Rules
  4. Revisa las líneas de sudoers de riesgo
  5. Haz clic en Disable Selected Risky Rules
  6. Haz clic en Verify Protection

Detección de reglas de riesgo

La aplicación detecta cualquier línea activa de sudoers que contenga:

!root
! root
!#0
! #0

No depende de un nombre de usuario ni de una ruta de comando fijos.

Ejemplos de reglas de riesgo:

testone ALL=(ALL, !root) /usr/bin/vim
john ALL=(ALL,!root) /bin/bash
admin ALL=(ALL, !#0) /usr/bin/python3
%developers ALL=(ALL,!#0) /any/path

Cuando se desactiva, una regla de riesgo se convierte en:

# DISABLED by Ubuntu CVE-2019-14287 Patch Manager: john ALL=(ALL,!#0) /bin/bash

Verificación

La aplicación verifica la protección mediante:

sudo -u#-1 id -u
sudo -u#4294967295 id -u

Resultado protegido:

The commands fail or do not return UID 0.

Resultado vulnerable:

0

Notas de seguridad

Esta herramienta está pensada para uso en laboratorio y educativo.

Para sistemas de producción:

  • Usa una versión de Ubuntu con soporte.
  • Instala la actualización de seguridad oficial de sudo.
  • Evita reglas sudoers amplias que usen (ALL, !root).
  • Usa listas de permitidos explícitas en su lugar.
  • Valida siempre los archivos de sudoers con visudo.

cd ~/projects/ubuntu-cve-2019-14287-patch-manager

cat >> README.md <<'EOF'


Solucionar problemas de dependencias en Ubuntu 19.04

Ubuntu 19.04 ha llegado al final de su ciclo de vida, por lo que sus repositorios de paquetes predeterminados pueden dejar de proporcionar dependencias necesarias como python3-tk. Si el instalador falla con un error similar a:

Depends: python3-tk but it is not installable
Unable to correct problems, you have held broken packages

utiliza los pasos de recuperación que se indican a continuación.

1. Limpia cualquier estado de paquetes rotos

sudo dpkg --remove ubuntu-cve-2019-14287-patch-manager 2>/dev/null || true
sudo apt --fix-broken install -y
sudo dpkg --configure -a

2. Haz una copia de seguridad de la lista actual de fuentes de APT

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup.$(date +%F_%H-%M-%S)

3. Apunta los repositorios de Ubuntu 19.04 a old-releases

sudo sed -i -E 's|http://([a-z]{2}\.)?archive.ubuntu.com/ubuntu|http://old-releases.ubuntu.com/ubuntu|g' /etc/apt/sources.list
sudo sed -i -E 's|http://security.ubuntu.com/ubuntu|http://old-releases.ubuntu.com/ubuntu|g' /etc/apt/sources.list

4. Actualiza los índices de paquetes

sudo apt update

5. Instala la dependencia de GUI necesaria

sudo apt install -y python3-tk

6. Vuelve a ejecutar el instalador de la aplicación

wget -O ubuntu-cve-2019-14287-patch-manager_1.0.0_all.deb "https://github.com/HivinManjuSri/ubuntu-cve-2019-14287-patch-manager/releases/latest/download/ubuntu-cve-2019-14287-patch-manager_1.0.0_all.deb" && sudo apt install -y ./ubuntu-cve-2019-14287-patch-manager_1.0.0_all.deb

Si apt install no acepta el archivo .deb local en Ubuntu 19.04, usa:

Descargar herramienta