CVE-2025-7789 — xxl-job-admin
Fix: xuxueli/xxl-job@cb1bd54CVE-2025-7789 is a CWE-326 vulnerability in com.xuxueli:xxl-job-admin. A fix is available for com.xuxueli:xxl-job-admin — see the affected versions and patch details below.
Xuxueli xxl-job Token Generation IndexController.java makeToken weak password hash
Exploitation Status
Proof-of-concept exploit code exists
- CISA’s SSVC triage found public proof-of-concept exploit code for this CVE, though no confirmed active exploitation.
Exploitation and automatability from CISA’s SSVC triage for CVE-2025-7789.
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
Real-World Exposure
com.xuxueli:xxl-job-adminReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects Maven packages — download data is not available via public APIs for these ecosystems.
Description
A vulnerability was found in Xuxueli xxl-job up to 3.1.1 and classified as problematic. Affected by this issue is the function makeToken of the file src/main/java/com/xxl/job/admin/controller/IndexController.java of the component Token Generation. The manipulation leads to password hash with insufficient computational effort. The attack may be launched remotely. The complexity of an attack is rather high. The exploitation is known to be difficult. The exploit has been disclosed to the public and may be used.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| ☕Maven | com.xuxueli:xxl-job-admin | all versions | 3.2.0com.xuxueli:xxl-job-admin:3.2.0 |
Affected Products
xxl-jobxuxueliDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for com.xuxueli:xxl-job-admin, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update com.xuxueli:xxl-job-admin to 3.2.0 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms CVE-2025-7789 is resolved across your whole dependency graph.
Workarounds
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
Frequently Asked Questions
Is CVE-2025-7789 in your dependencies?
Find it across Maven, including transitive dependencies.