Summary
CVE-2023-54403 is a path traversal / arbitrary file read vulnerability in Yonyou U8 CRM, a customer relationship management platform. An unauthenticated attacker can abuse a built-in authentication-bypass parameter combined with an unvalidated file path parameter in a CRM endpoint to read arbitrary files from the server, including configuration files that may contain database credentials. The flaw is remotely exploitable over the network and rated HIGH severity.
Technical details
- Root cause: The
/ajax/getemaildata.phpendpoint accepts afilePathparameter that is used to read a file from the server’s filesystem without validating or sanitizing the supplied path. - Authentication bypass: The endpoint honors a
DontCheckLogin=1request parameter, allowing requests to skip the application’s normal login check entirely. - Trigger conditions: No authentication, prior access, or user interaction is required; the attacker only needs network access to the exposed CRM instance.
- Attack vector: Network — a single crafted HTTP request combining
DontCheckLogin=1with a manipulatedfilePathvalue is sufficient. - Impact: Disclosure of arbitrary files on the server, including application configuration files that may contain database connection strings and credentials, which can enable further compromise of the environment.
Affected software
- Yonyou U8 CRM version 13
- Yonyou U8 CRM version 15.1
- Yonyou U8 CRM version 16.0
- Yonyou U8 CRM version 16.1
- (Versions 16.5 and 18 and later are patched)
Severity
- CVSS v3.1 Base Score: 7.5 (HIGH) —
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - CVSS v4.0 Base Score: 8.7 (HIGH) —
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Mitigation and recommended actions
- Immediate: Upgrade Yonyou U8 CRM to version 16.5 or 18 (or later), where the arbitrary file read and authentication-bypass behavior in
getemaildata.phpare addressed. - If immediate patching is not possible:
- Restrict network exposure of the U8 CRM management interface to trusted internal networks only; do not expose it directly to the internet.
- Place a web application firewall or reverse proxy in front of the application to block requests containing
DontCheckLogin=1or path traversal sequences (e.g.,../) targeting/ajax/getemaildata.php. - Monitor access logs for requests to
getemaildata.phpwith suspiciousfilePathvalues or theDontCheckLoginparameter. - Rotate database and application credentials if exposure is suspected, since configuration files may have been accessible.

