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
svja — L'Applicazione Java Super Vulnerabile (SVJA), come dimostrato nel Roniel and DaRon Podcast Show, è un'applicazione Apache Struts progettata per contenere una serie di vulnerabilità molto comuni. A differenza di altri software 'volutamente vulnerabili', questo software è progettato per riprodurre le vulnerabilità comuni nello stesso modo in cui vengono spesso osservate, piuttosto che in una maniera eccessivamente semplicistica o più 'capture the flag'. Questo software viene aggiornato e ampliato con una certa regolarità, con dimostrazioni di alcune delle vulnerabilità come parte del podcast. | Kitploit
Strumenti/GitHubGitHub/theronielanddaronpodcastshow/svja
Autenticazione e AutorizzazioneAnalisi delle VulnerabilitàSfruttamento di Applicazioni WebTest di Sicurezza delle APISicurezza WebPenetration TestingApprendimento e FormazioneLab e Pratica

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 →

Informazioni

GitHub
theronielanddaronpodcastshow/svja

svja

Vedi Repository
1347 mesi faNon ancora revisionato

L'Applicazione Java Super Vulnerabile (SVJA), come dimostrato nel Roniel and DaRon Podcast Show, è un'applicazione Apache Struts progettata per contenere una serie di vulnerabilità molto comuni. A differenza di altri software 'volutamente vulnerabili', questo software è progettato per riprodurre le vulnerabilità comuni nello stesso modo in cui vengono spesso osservate, piuttosto che in una maniera eccessivamente semplicistica o più 'capture the flag'. Questo software viene aggiornato e ampliato con una certa regolarità, con dimostrazioni di alcune delle vulnerabilità come parte del podcast.

Condividi

svja

La RDPS Super Vulnerable Java Application è esattamente questo: un'applicazione Java super vulnerabile, creata per il beneficio di tutti, per vedere una varietà di vulnerabilità comuni, spesso "complesse". Questo software è stato creato come parte del Roniel and DaRon Podcast Show (https://www.youtube.com/channel/UCbj1JFcSJeTuf3qf9GPRemA) così da poter discutere e mostrare una serie di vulnerabilità incontrate di frequente in un modo più realistico rispetto a quanto si vede con molti altri strumenti online. Per vedere esempi di sfruttamento, guarda il nostro podcast.

IMPORTANTE

Ricorda che questa applicazione è volutamente estremamente vulnerabile a diverse cose. Fai attenzione a dove la esegui, limita chi può accedervi (il server Tomcat dovrebbe ascoltare solo su localhost e solo sulla tua macchina personale). Non siamo responsabili se non sai prenderti cura delle tue cose, lasciando la tua copia esposta in balia di chiunque voglia rubare i tuoi dati o compromettere gravemente la tua macchina. Ti consigliamo di eseguirla in una macchina virtuale (VM) protetta, che non contenga nulla di sensibile e senza connettività a Internet. La mancata protezione adeguata del sistema che esegue questa applicazione e della sua istanza probabilmente ti farà passare una brutta giornata. Come nei rapporti carnali occasionali senza le dovute protezioni, stai solo mettendoti in una posizione che un giorno rimpiangerai. Considerati avvisato, ma incoraggiato a giocare ;-)

Requisiti

  • Apache Maven 3.6 o superiore
  • Java 21 o superiore
  • Tomcat 10.0 o superiore

Installazione

La RDPS SVJA è composta da un'applicazione Java struts 2 che esegue react. Si compila semplicemente eseguendo: mvn clean package

Questo crea un WAR in target -- svja.war. Basta posizionare il WAR nella cartella webapps del tuo Tomcat. In un'installazione Tomcat predefinita vai su http://127.0.0.1:8080/svja per accedere all'applicazione.

Se stai eseguendo Tomcat 10 o superiore, aggiungi <Loader jakartaConverter="TOMCAT" /> al tuo file di configurazione context.xml di Tomcat.

Swagger UI

Per chi vuole usarla per iniziare, la root (http://127.0.0.1:8080/svja) ora include Swagger UI e una specifica OpenAPI di base (http://127.0.0.1:8080/svja/specification.yaml) che puoi utilizzare. Nota che la specifica, e quindi Swagger UI, scalfisce solo la superficie (non è forse questo il senso della deserializzazione non sicura, ecc.?).

Vulnerabilità attuali

Di seguito sono elencate alcune delle vulnerabilità principali del sistema, per azione.

  1. /api/authenticate
    • Falsificazione di richiesta cross-site (CSRF)
    • Denial of service (DOS)
    • Deserializzazione non sicura (OGNL, Struts, JSON -- nessun bytecode)
      • Creazione arbitraria di oggetti
      • Chiamata arbitraria di metodi
      • Dirottamento della sessione
      • Bypass della sessione
      • Bypass dell'autenticazione
    • Iniezione nei log
    • Dati sensibili nell'URL
  2. /api/authenticate/federated
    • Falsificazione di richiesta cross-site (CSRF)
    • Denial of service (DOS)
    • Deserializzazione non sicura (OGNL, Struts, JSON -- nessun bytecode)
      • Creazione arbitraria di oggetti
      • Chiamata arbitraria di metodi
      • Dirottamento della sessione
      • Bypass della sessione
      • Bypass dell'autenticazione
    • Iniezione nei log
    • Iniezione tramite espressioni regolari
      • Bypass dell'autenticazione
      • Denial of service
  3. /api/files
    • Falsificazione di richiesta cross-site (CSRF)
    • Cross-site scripting (XSS) tramite codifica
    • Denial of service (DOS)
    • Deserializzazione non sicura (OGNL, Struts, JSON -- nessun bytecode)
      • Path traversal (sola lettura)
      • Creazione arbitraria di oggetti
      • Chiamata arbitraria di metodi
      • Dirottamento della sessione
      • Bypass della sessione
      • Bypass dell'autenticazione
      • Riferimento diretto non sicuro a oggetti
    • Serializzazione non sicura
      • Perdita di informazioni personali identificative (PII)
      • Perdita di informazioni sensibili
    • Iniezione nei log
    • Race condition
      • Time of check, time of use (TOCTOU)
    • Dati sensibili nell'URL
  4. /api/projects
    • Iniezione di valori separati da virgola (CSV)
      • Iniezione CSV arbitraria
      • Attacchi lato client
    • Falsificazione di richiesta cross-site (CSRF)
    • Cross-site scripting (XSS) tramite codifica Denial of service (DOS)
    • Deserializzazione non sicura (OGNL, Struts, JSON -- nessun bytecode)
      • Path traversal (sola lettura)
      • Creazione arbitraria di oggetti
      • Chiamata arbitraria di metodi
      • Dirottamento della sessione
      • Bypass della sessione

Utenti predefiniti installati

root@kitploit:~
admin:admin (account amministratore applicazione)
bill:baker (account utente privilegiato)
bob:barker (account utente base, sola lettura)

Accesso al sistema

root@kitploit:~
/api/authenticate?user.username=admin&user.password=admin
/api/authenticate?user.username=bill&user.password=baker
/api/authenticate?user.username=bob&user.password=barker

Dopo l'autenticazione, puoi chiamare qualsiasi azione desideri usando JSON o Struts

Esempio di richiesta di autenticazione Struts

root@kitploit:~
GET /svja/api/authenticate?user.username=bill&user.password=baker HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Host: localhost
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Length: 0
DNT: 1
Connection: close
Cache-Control: max-age=0


Esempio di richiesta di autenticazione JSON

root@kitploit:~
GET /svja/api/authenticate HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Host: localhost
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/json
Content-Length: 61
DNT: 1
Connection: close
Cache-Control: max-age=0

{
  "user": {
    "username": "bill",
    "password": "baker"
  }
}

Esempio di richiesta di autenticazione "federata" Struts

root@kitploit:~
GET /svja/api/authenticate/federated?user.username=bill%40rdps.local&usernameTranslationRegex=%2F%40rdps%5B.%5Dlocal%2F%2F HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Host: localhost
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Length: 0
DNT: 1
Connection: close
Cache-Control: max-age=0


Esempio di richiesta di autenticazione "federata" JSON

root@kitploit:~
GET /svja/api/authenticate/federated HTTP/1.1
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Host: localhost
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/json
Content-Length: 61
DNT: 1
Connection: close
Cache-Control: max-age=0

{
  "user": {
    "username": "[email protected]"
  },
  "usernameTranslationRegex": "/@rdps[.]local//"
}

Esempio di richiesta Struts

Ricorda di cambiare il token svjatoken

root@kitploit:~
GET /svja/api/projects?projectId=1 HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Connection: close
Cookie: svjatoken=RaMu5vhFBgL8goV6Ja1ffLnpmcixNuAL7fUP;
Cache-Control: max-age=0


Esempio di richiesta JSON

Ricorda di cambiare il token svjatoken

root@kitploit:~
GET /svja/api/projects HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0
Accept: application/json, text/plain, */*
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/json
Content-Length: 19
DNT: 1
Connection: close
Cookie: svjatoken=RaMu5vhFBgL8goV6Ja1ffLnpmcixNuAL7fUP;
Cache-Control: max-age=0

{
  projectId:1
}

Ricorda

Questo è un lavoro in corso e abbiamo in programma molte altre vulnerabilità e funzionalità (tra cui un frontend super vulnerabile e altre applicazioni super vulnerabili) -- passa a trovarci ogni paio di mesi e guarda il Roniel and DaRon Podcast Show per aggiornamenti, esempi di sfruttamento e altre idee. Ti incoraggiamo anche a cercare di capire come mitigare o correggere le vulnerabilità... rompere le cose è facile... mitigarle, correggerle e metterle in sicurezza è ciò che è difficile. Buona fortuna e buona caccia!

Scarica lo strumento
  • Bypass dell'autenticazione
  • Riferimento diretto non sicuro a oggetti
  • Serializzazione non sicura
    • Perdita di informazioni personali identificative (PII)
    • Perdita di informazioni sensibili
  • Iniezione nei log
  • Dati sensibili nell'URL
  • Iniezione XLSX
    • Iniezione XML arbitraria
    • Attacchi lato client
  • /api/reflect
    • Usage reflection
    • Deserializzazione non sicura (OGNL, Struts, JSON -- nessun bytecode)
      • Path traversal (sola lettura)
      • Creazione arbitraria di oggetti
      • Chiamata arbitraria di metodi
      • Dirottamento della sessione
      • Bypass della sessione
      • Bypass dell'autenticazione
      • Riferimento diretto non sicuro a oggetti
    • Serializzazione non sicura
      • Perdita di informazioni personali identificative (PII)
      • Perdita di informazioni sensibili
    • Iniezione nei log
  • /api/supersecret
    • Modalità di cifratura debole
    • Padding oracle
    • Usage reflection
    • Deserializzazione non sicura (OGNL, Struts, JSON)
      • Path traversal (sola lettura)
      • Creazione arbitraria di oggetti
      • Chiamata arbitraria di metodi
      • Dirottamento della sessione
      • Bypass della sessione
      • Bypass dell'autenticazione
      • Riferimento diretto non sicuro a oggetti
    • Serializzazione non sicura
      • Perdita di informazioni personali identificative (PII)
      • Perdita di informazioni sensibili
    • Iniezione nei log