Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
ubuntu-cve-2019-14287-patch-manager — patch-manager | Kitploit
Strumenti/GitHubGitHub/hivinmanjusri/ubuntu-cve-2019-14287-patch-manager
Privilege EscalationVulnerability AnalysisScripting & AutomationConfiguration AuditingMisconfigurationLearning & EducationLabs & Practice
GitHubhivinmanjusri/ubuntu-cve-2019-14287-patch-manager

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

ubuntu-cve-2019-14287-patch-manager

patch-manager

Vedi Repository
3 mesi faNon ancora revisionato

Ubuntu CVE-2019-14287 Patch Manager

Ubuntu CVE-2019-14287 Patch Manager è uno strumento di laboratorio basato su GUI per verificare, mitigare e confermare la protezione contro CVE-2019-14287, una vulnerabilità di escalation dei privilegi in sudo.

Questo progetto è stato sviluppato per un ambiente di laboratorio Ubuntu 19.04 amd64.


Scopo del progetto

CVE-2019-14287 colpisce le versioni meno recenti di sudo. La vulnerabilità consente a un utente con una regola sudoers che esclude root di aggirare la restrizione utilizzando un ID utente numerico appositamente predisposto come -1 o 4294967295.

Esempio di regola sudoers rischiosa:

root@kitploit:~
someuser ALL=(ALL, !root) /usr/bin/vim

Nelle versioni vulnerabili di sudo, l'abuso può essere effettuato con:

root@kitploit:~
sudo -u#-1 id -u
sudo -u#4294967295 id -u

Se l'output è 0, il comando è stato eseguito come root.


Cosa fa questa applicazione

L'applicazione fornisce due livelli di protezione:

  1. Patch reale del pacchetto sudo
    Lo strumento può eseguire il comando di aggiornamento ufficiale del pacchetto per aggiornare sudo.

  2. Mitigazione tramite configurazione sudoers
    Lo strumento esegue la scansione dei file sudoers e disabilita le regole rischiose che contengono !root o !#0.


Funzionalità principali

  • Verifica la versione di Ubuntu
  • Verifica l'architettura di sistema
  • Verifica la versione di sudo installata
  • Applica la patch reale del pacchetto sudo
  • Scansiona /etc/sudoers
  • Scansiona /etc/sudoers.d/*
  • Rileva le righe sudoers attive contenenti:
    • !root
    • ! root
    • !#0
    • ! #0
  • Mostra le righe rischiose nella GUI
  • Disabilita le righe rischiose selezionate
  • Crea backup prima della modifica
  • Valida le modifiche con visudo -cf
  • Verifica la protezione contro valori Runas UID appositamente predisposti

Struttura del progetto

root@kitploit:~
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

Requisiti

Installa le dipendenze:

root@kitploit:~
sudo apt update
sudo apt install -y python3 python3-tk sudo

Esecuzione dal sorgente

Vai alla cartella del progetto:

root@kitploit:~
cd ~/projects/ubuntu-cve-2019-14287-patch-manager

Esegui l'applicazione:

root@kitploit:~
sudo python3 app.py

L'applicazione deve essere eseguita come root perché necessita dell'accesso a:

root@kitploit:~
/etc/sudoers
/etc/sudoers.d/*

Creazione del pacchetto Debian

Dalla directory principale del progetto:

root@kitploit:~
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 i file dell'applicazione:

root@kitploit:~
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 le cartelle di runtime:

root@kitploit:~
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 il launcher:

root@kitploit:~
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 il file di controllo Debian:

root@kitploit:~
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:

root@kitploit:~
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

Installa:

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

Esegui dopo l'installazione:

root@kitploit:~
sudo ubuntu-cve-2019-14287-patch-manager

Flusso di lavoro dell'applicazione

  1. Clicca su Check System
  2. Clicca su Apply Real Sudo Patch
  3. Clicca su Scan Sudoers Rules
  4. Rivedi le righe sudoers rischiose
  5. Clicca su Disable Selected Risky Rules
  6. Clicca su Verify Protection

Rilevamento delle regole rischiose

L'applicazione rileva qualsiasi riga sudoers attiva contenente:

root@kitploit:~
!root
! root
!#0
! #0

Non dipende da un nome utente o da un percorso comando fisso.

Esempi di regole rischiose:

root@kitploit:~
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

Quando viene disabilitata, una regola rischiosa diventa:

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

Verifica

L'applicazione verifica la protezione utilizzando:

root@kitploit:~
sudo -u#-1 id -u
sudo -u#4294967295 id -u

Risultato protetto:

root@kitploit:~
The commands fail or do not return UID 0.

Risultato vulnerabile:

root@kitploit:~
0

Note di sicurezza

Questo strumento è pensato per l'uso in laboratorio e a scopo didattico.

Per i sistemi in produzione:

  • Usa una versione di Ubuntu supportata.
  • Installa l'aggiornamento di sicurezza ufficiale di sudo.
  • Evita regole sudoers generiche che utilizzano (ALL, !root).
  • Utilizza invece liste di consentiti esplicite.
  • Valida sempre i file sudoers con visudo.

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

cat >> README.md <<'EOF'


Risolvere i problemi di dipendenze su Ubuntu 19.04

Ubuntu 19.04 ha raggiunto la fine del ciclo di vita, quindi i suoi repository di pacchetti predefiniti potrebbero non fornire più le dipendenze necessarie come python3-tk. Se il programma di installazione restituisce un errore simile a:

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

utilizza i passaggi di ripristino di seguito.

1. Ripulisci lo stato di eventuali pacchetti danneggiati

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

2. Esegui il backup dell'attuale elenco delle fonti APT

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

3. Reindirizza i repository di Ubuntu 19.04 verso old-releases

root@kitploit:~
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. Aggiorna gli indici dei pacchetti

root@kitploit:~
sudo apt update

5. Installa la dipendenza GUI necessaria

root@kitploit:~
sudo apt install -y python3-tk

6. Riesegui il programma di installazione dell'applicazione

root@kitploit:~
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

Se apt install non accetta il file .deb locale su Ubuntu 19.04, usa:

root@kitploit:~
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 dpkg -i ./ubuntu-cve-2019-14287-patch-manager_1.0.0_all.deb && sudo apt --fix-broken install -y

7. Esegui l'applicazione

root@kitploit:~
sudo ubuntu-cve-2019-14287-patch-manager

Nota

Questa modifica ai repository è necessaria principalmente per le macchine di laboratorio con vecchio Ubuntu 19.04. Per i sistemi in produzione, usa una versione di Ubuntu attualmente supportata invece di fare affidamento su repository fuori supporto.

Installer della release GitHub con un unico comando

Dopo aver caricato il file .deb nella release più recente di GitHub, gli utenti possono installare l'applicazione con questo comando:

root@kitploit:~
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

Autore

Hivin Manju Sri

Scarica lo strumento