Acquista questo Aspect Security/Minded Security evaluation of SpEL (google docs link) a cui si riferisce probabilmente l'articolo a cui si fa riferimento (per il caso specifico di SpEL).
Descrivono in che modo alcuni tag JSP di molla raddoppiano le espressioni EL. In questi casi può essere possibile per l'utente inviare dati al server sotto forma di SpEL, ad es. come parametro di richiesta con il valore ${bean.val}
(URL codificato)
http://...?exp=$%7Bbean.val%7D
pagine JSP All'interno, l'espressione ${param.exp}
sarà risolto al testo ${bean.val}
che di per sé è sicuro. Se tuttavia, tale espressione risiede all'interno di un attributo di un tag JSTL di primavera, tale valore risolto può essere nuovamente valutato ad es. nel spring:message
tag:
<spring:message message="${param.exp}" />
si tradurrà in valore ${bean.val}
essere passati attraverso il tag spring:message
che valuterà il metodo bean.getVal()
. Quindi ora abbiamo il codice inviato dal client ed eseguito sul server.
si prega di vedere il molto più alto voto votato qui sotto, che è quello attuale – blackdrag
@blackdrag grazie, l'ho già letto. Sia questo post che Pieter forniscono due risposte diverse alla domanda iniziale "Qualcuno può far luce su questo, per favore?". Questa risposta (quasi un anno fa) spera che fornisca alcuni dettagli su cosa fosse effettivamente la vulnerabilità, mentre la risposta di Pieter descrive la storia di SpringSources nel suo rapporto con le versioni di primavera in cui questo problema è stato risolto. IMO entrambi "fanno luce" in modi diversi ed entrambi sono risposte "effettive". – krock
Sono d'accordo, entrambi fanno luce sul problema.Solo che è stato risolto da prima del 2012. Le informazioni più preziose, che il rapporto era già superato nel momento in cui è stato richiesto, mancano. Ecco perché non considero più la risposta come "reale". – blackdrag