
Una soluzione di filtro dei parametri di richiesta per Struts 1 CVE-2014-0114 basata sul lavoro di Alvaro Munoz e del team HP Fortify
Una soluzione di filtro per i parametri delle richieste per Apache Struts 1 CVE-2014-0114 basata sul lavoro di Alvaro Munoz e il team HP Fortify.
Per utilizzare questo filtro, aggiungi la seguente dichiarazione del filtro insieme al mapping appropriato nel descrittore web.xml dell'applicazione Apache Struts 1 da proteggere:
<filter>
<filter-name>ParamWrapperFilter</filter-name>
<filter-class>net.rgielen.struts1.filter.ParamWrapperFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>ParamWrapperFilter</filter-name>
<servlet-name>YOUR ACTION SERVLET</servlet-name>
</filter-mapping>
Il filtro viene fornito con un'espressione regolare predefinita per abbinare i nomi dei parametri dannosi, che può essere sovrascritta tramite configurazione esplicita:
<filter>
<filter-name>ParamWrapperFilter</filter-name>
<filter-class>net.rgielen.struts1.filter.ParamWrapperFilter</filter-class>
<init-param>
<param-name>excludeParams</param-name>
<param-value>(.*\.|^|.*|\[('|"))(c|C)lass(\.|('|")]|\[).*</param-value>
</init-param>
</filter>
...
Il filtro è pubblicato su Maven Central. Utilizza la seguente dichiarazione di dipendenza Maven per incorporarlo nel tuo progetto (Ivy, Gradle e SBT di conseguenza):
<dependency>
<groupId>net.rgielen</groupId>
<artifactId>struts1filter</artifactId>
<version>1.0.0</version>
</dependency>
Può anche essere scaricato direttamente. Utilizza la ricerca del Repository Centrale con le coordinate fornite sopra per trovare e scaricare il jar.