2012-04-25 15 views

risposta

3

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.

+1

si prega di vedere il molto più alto voto votato qui sotto, che è quello attuale – blackdrag

+0

@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

+0

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

27

La scoperta di Aspect Security è stata trovata nel gennaio 2013, ma la correzione pubblicata da SpringSource è stata resa disponibile nel 2011, quando è stata scoperta per la prima volta. Dan Amodio di Aspect Security ha informato SpringSource della possibilità di eseguire codice in modalità remota.

SpringSource aggiornato il nostro rapporto di sicurezza 12-06-2012 con il ritrovamento di Aspect Security - ma la correzione/mitigazione elencati nella consulenza originale è ancora applicabile: http://support.springsource.com/security/cve-2011-2730

Questa vulnerabilità interessa solo le versioni Spring Framework:

• Dalla 3.0.0 alla 3.0.5 - l'aggiornamento alla 3.0.6 qui risolverebbe il problema. • da 2.5.0 a 2.5.6.SEC02 (versioni della community) - l'aggiornamento a 2.5.6.SEC03 qui risolverà il problema. • da 2.5.0 a 2.5.7.SR01 (clienti in abbonamento) - l'aggiornamento a 2.5.7.SR02 qui risolverà il problema.

Questo è stato risolto in tutte le versioni andando avanti - la versione corrente di Spring Framework è 3.2, rilasciata nel dicembre 2012.

Grazie,

-Pieter (SpringSource)

Problemi correlati