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
vucsa — Applicazione client-server volutamente vulnerabile per l'apprendimento del penetration testing di thick client non HTTP. Include sfide per SQL injection, RCE, attacchi XML, buffer over-read e vulnerabilità di controllo degli accessi. | Kitploit
Strumenti/GitHubGitHub/warxim/vucsa
Analisi delle VulnerabilitàSfruttamento di Applicazioni WebCTFPenetration TestingApprendimento e FormazioneBinary Exploitation
GitHubwarxim/vucsa

vucsa

Applicazione client-server volutamente vulnerabile per l'apprendimento del penetration testing di thick client non HTTP. Include sfide per SQL injection, RCE, attacchi XML, buffer over-read e vulnerabilità di controllo degli accessi.

Vedi Repository
101282 anni faRevisionato da Kitploit

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
Sito web

Applicazione Client-Server Vulnerabile (VuCSA)

Applicazione Client-Server Vulnerabile (VuCSA)

L'applicazione client-server vulnerabile (VuCSA) è stata creata per apprendere/presentare come eseguire test di penetrazione di applicazioni client-server non HTTP. È scritta in Java (con interfaccia grafica JavaFX).

Attualmente, l'applicazione vulnerabile contiene le seguenti sfide:

  1. Buffer Over-read (simulato)
  2. Esecuzione di Comandi
  3. SQL Injection
  4. Enumerazione
  5. XML
  6. Controllo di Accesso Orizzontale
  7. Controllo di Accesso Verticale
  8. Deserializzazione RCE

Se vuoi sapere come risolvere queste sfide, dai un'occhiata al sito web di PETEP, che descrive come utilizzare lo strumento open-source PETEP per sfruttarle.

Suggerimento 1: Prima di iniziare a fare hacking, non dimenticare di controllare la struttura dei dati dei messaggi qui sotto. Quando modifichi il traffico di rete, dovrai probabilmente considerare la struttura, specialmente i byte della lunghezza del payload.

Suggerimento 2: La maggior parte delle sfide può essere sfruttata attraverso la modifica del traffico di rete. Pertanto, si consiglia di utilizzare un proxy TCP o hook di processo per i test.

Suggerimento 3: Alcune sfide hanno convalide e restrizioni di input, cosa comune nei client spessi (thick clients), ma ciò non significa che il server utilizzi la stessa convalida.

Vulnerabilità di Buffer Over-read (simulato)

In questa sfida, il tuo obiettivo è manipolare il traffico di rete tra il client e il server in modo da causare un buffer over-read.

Vulnerabilità di Esecuzione di Comandi

La sfida di esecuzione di comandi rappresenta una vulnerabilità molto semplice di esecuzione di comandi. L'obiettivo è eseguire un comando malevolo sul server.

Vulnerabilità di SQL Injection

La sfida di SQL Injection contiene un input di ricerca vulnerabile a SQL injection, ma come noterai presto, l'input non ti permette di inserire i caratteri necessari.

Vulnerabilità di Enumerazione

La sfida di enumerazione si basa su un modulo di login simulato non protetto dall'enumerazione. Riuscirai a trovare tutti e 5 gli utenti e indovinare le loro password?

Vulnerabilità XML

In questa sfida, puoi trovare multiple vulnerabilità XML:

  • Attacco a Entità Esterne XML (XXE Injection)
  • Attacco XInclude
  • Attacco Bomba XML

Vulnerabilità di Controllo di Accesso Orizzontale

La sfida di controllo di accesso orizzontale rappresenta un lettore di documenti che permette all'utente di vedere i propri documenti e leggerne il contenuto. L'obiettivo è trovare 5 documenti di altri utenti.

Vulnerabilità di Controllo di Accesso Verticale

La sfida di controllo di accesso verticale si basa su un pannello utente simulato, che mostra informazioni di base dell'utente. L'obiettivo è trovare una funzionalità di amministrazione nascosta e verificare se è possibile utilizzarla come utente Ospite.

Vulnerabilità di Deserializzazione RCE

La vulnerabilità di deserializzazione RCE utilizza la deserializzazione/serializzazione Java per trasmettere dati attraverso la rete. L'applicazione contiene due percorsi che puoi utilizzare per ottenere l'esecuzione di codice remoto attraverso la vulnerabile deserializzazione Java.

Puoi trovare entrambi i percorsi esaminando il file JAR del server o guardando il codice sorgente.

L'obiettivo è creare exploit per entrambi i percorsi ed eseguire un comando malevolo sul server.

Suggerimento: Puoi usare il JAR del server come libreria per semplificare la creazione dell'exploit.

Requirements

Devi avere Java 11 o una versione più recente per eseguire VuCSA.

Nota: Per Mac con architettura ARM64 (chip M1, M2), usa la build speciale per Java 17.

How to Run

Per eseguire il server e il client vulnerabili, puoi usare una delle release su GitHub o eseguire gradle assemble, che crea pacchetti di distribuzione (sia per Windows che per Unix). Questi pacchetti contengono script sh/bat che avviano il server e il client utilizzando JVM:

root@kitploit:~
# Linux / Mac
chmod +x client.sh server.sh
./client.sh
./server.sh

# Windows
client.bat
server.bat

Nota: Questi script di avvio contengono variabili utili, incluso il percorso dell'eseguibile Java. Potrebbe essere necessario modificarlo se non lo hai in PATH o se usi più versioni Java.

Run Configuration

La configurazione del server viene creata automaticamente se non esiste e successivamente caricata da server.json nella stessa directory in cui è in esecuzione il server:

root@kitploit:~
{
  "network": {
    "serverHost": "0.0.0.0",
    "serverPort": 8765
  }
}

La configurazione del client può essere specificata nell'applicazione in esecuzione.

Project Structure

Il progetto è suddiviso in tre moduli:

  • vucsa-common - funzionalità comuni per client e server (incluse utility di elaborazione del protocollo)
  • vucsa-client - client vulnerabile con interfaccia grafica JavaFX
  • vucsa-server - server vulnerabile per uso da terminale

Data Structure

I messaggi trasmessi tra server e client hanno il seguente formato semplice:

root@kitploit:~
[type][target][length][payload]
  32b    32b     32b     ???

Queste quattro parti hanno il seguente significato:

  • type - tipo del messaggio (usato per serializzazione/deserializzazione)
  • target - gestore di destinazione che riceve il messaggio (identificatore)
  • length - lunghezza del payload
  • payload - dati serializzati in byte

Per inviare payload personalizzati, potresti dover aggiornare la lunghezza del payload. Altrimenti, non funzionerà correttamente. Nel tutorial, viene sviluppato uno script automatico per correggere automaticamente i byte della lunghezza del payload.

Tutorial (Solutions)

L'applicazione client-server vulnerabile (VuCSA) contiene molteplici vulnerabilità, che possono essere sfruttate in vari modi. La guida ufficiale per sfruttare queste vulnerabilità utilizza il Proxy di Test di Penetrazione open-source (vedi Metodologia PETEP).

Nella metodologia PETEP, viene spiegato l'intero processo di sfruttamento delle sfide, inclusi payload utili.

Scarica lo strumento