Al momento sono su un pentest e ho trovato un parametro URL che è vulnerabile all'iniezione di Expression Language (EL) e posso provarlo accedendo a proprietà come $ {pageContext}.
Tuttavia, sembra che io abbia accesso alle proprietà degli oggetti Java, ma non sono in grado di chiamare metodi. So che le persone sono state in grado di farlo, ma sembra che ogni volta che inserisco parentesi l'applicazione impedisce l'esecuzione di Java.
C'è qualcosa che mi manca ovviamente o idee su come superare questo problema?
Esempio di payload che ho provato:
${pageContext.servletContext.serverInfo} - Works
${requestScope[%27javax.servlet.forward.servlet_path%27]} - Works
${param.foo} - Works
${param.foo.toUpper()} - Fails