ZKTeco BioTime CVE-2025-15128
MEDIUMAttack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify network-accessible BioTime instance
-
DeliverySend unauthenticated HTTP request to /base/safe_setting/
-
ExploitManipulate backup_encryption_password_decrypt or export_encryption_password_decrypt arguments
-
ExecutionRetrieve unprotected credential material from response
-
ImpactUse recovered encryption keys to decrypt backup archives or pivot further
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V6 - Authentication Credentials management errors
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The BioTime web application must be reachable over the network - internet-facing deployments are at greatest risk, though intranet deployments are vulnerable to any internal threat actor. The CVSS 4.0 vector (PR:N/UI:N) and the Authentication Bypass tag confirm no valid credentials or user interaction are required; exploitation targets the default state of the /base/safe_setting/ endpoint. The backup or export encryption features must be present, which are standard capabilities in default BioTime installations. Exploitation is limited to versions 9.0.3, 9.0.4, and 9.5.2 - deployments already running version 9.0.6 or later are not vulnerable. No special protocol, non-default configuration, or specific platform variant is required beyond standard HTTP access to the application. |
| Impact | The CVSS 4.0 score of 5.5 (Medium) reflects a remotely exploitable, no-authentication, no-user-interaction attack profile - signals that individually elevate real-world priority above the numeric band. The confidentiality impact is rated Low (VC:L), which may understate operational risk: if the exposed credentials are backup or export encryption keys, an attacker who obtains them can decrypt sensitive backup archives containing biometric records, employee data, or access control configurations. The public POC on GitHub (ionutluca888/IDOR-POC-ZKBio-Time) removes the research barrier entirely. The vulnerability is not listed in CISA KEV at time of analysis, suggesting targeted rather than mass exploitation so far, but POC availability means that gap can close rapidly. There is no conflicting signal between the CVSS vector and the description - both indicate unauthenticated network exploitation. Security teams with internet-facing BioTime deployments should treat this as higher priority than the base score alone implies. |
| Exploit ScenarioDerived | An unauthenticated attacker with HTTP/HTTPS connectivity to a BioTime instance sends a crafted request to /base/safe_setting/ with manipulated backup_encryption_password_decrypt or export_encryption_password_decrypt parameter values. The server returns or processes decrypted credential material without validating session or identity. A publicly available POC on GitHub (ionutluca888/IDOR-POC-ZKBio-Time) demonstrates this exact technique, meaning the attacker requires minimal skill to execute the attack and obtain encryption passwords that can be used to decrypt sensitive backup archives. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 11, 2026
Unauthenticated remote access to ZKTeco BioTime's /base/safe_setting/ endpoint exposes stored credential material via manipulable backup_encryption_password_decrypt and export_encryption_password_decrypt parameters, affecting versions 9.0.3, 9.0.4, and 9.5.2. The CVSS 4.0 vector (PR:N/UI:N) and an 'Authentication Bypass' tag confirm no credentials or user interaction are required, enabling any network-reachable attacker to retrieve encryption passwords from the application. A public proof-of-concept exploit is available on GitHub, directly lowering the skill barrier for exploitation, though the vulnerability is not yet listed in CISA KEV.
RemediationAI
The primary fix is to upgrade ZKTeco BioTime to version 9.0.6 or later, as confirmed by the vendor at https://www.zkteco.com/en/Security_Bulletinsibs/24. Operators running the Middle East variant (BioTime 9.5.X) must contact ZKTeco local technical support to obtain the dedicated regional fix package, as version 9.0.6 may not directly apply to that branch. As an interim compensating control before patching, restrict network access to the /base/safe_setting/ endpoint via firewall rules or reverse-proxy ACLs to trusted administrative IP ranges only - this directly blocks the unauthenticated attack vector but does not address the underlying flaw and must not substitute for patching. Additionally, rotate all backup encryption and export encryption passwords immediately, as any credentials retrievable through this endpoint should be considered compromised. Internet-facing BioTime deployments should be treated as highest priority.
Affected ProductsAI
ZKTeco BioTime versions up to and including 9.0.3, 9.0.4, and 9.5.2 are confirmed affected per the vendor security bulletin at https://www.zkteco.com/en/Security_Bulletinsibs/24. The mainstream BioTime product line is patched at version 9.0.6. The Middle East regional variant, marketed as BioTime 9.5.X, requires a separate fix package available through ZKTeco local technical support channels. No CPE strings were provided in the source data; affected version ranges are derived from VulDB submission 711813 and corroborated by the vendor's own advisory statement.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
ZKTeco BioTime is a web-based biometric time-attendance and workforce management platform widely deployed in enterprise and government environments. The vulnerable component is the /base/safe_setting/ API endpoint, which handles backup and export encryption configuration. The root cause is CWE-255 (Credentials Management Errors): the endpoint accepts the arguments backup_encryption_password_decrypt and export_encryption_password_decrypt and returns or processes decrypted credential values without enforcing authentication. This is consistent with an IDOR (Insecure Direct Object Reference) pattern, as suggested by the GitHub POC repository name. The CVSS 4.0 base vector AV:N/AC:L/AT:N/PR:N/UI:N/VC:L confirms the flaw is network-reachable, requires no special conditions or privileges, and results in partial confidentiality loss on the vulnerable system. No CPE identifiers were supplied in the source data.
Know when the next one hits your stack
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P
Network-accessible endpoint requires no authentication (PR:N) and yields only partial credential disclosure (C:L); no integrity or availability impact is indicated.
Primary rating from Vendor (vuldb).
CVSS VectorVendor: vuldb
DescriptionCVE.org
A vulnerability was detected in ZKTeco BioTime up to 9.0.3/9.0.4/9.5.2. This affects an unknown part of the file /base/safe_setting/ of the component Endpoint. Performing a manipulation of the argument backup_encryption_password_decrypt/export_encryption_password_decrypt results in unprotected storage of credentials. Remote exploitation of the attack is possible. The exploit is now public and may be used. Upgrading to version 9.0.6 is able to mitigate this issue. It is recommended to upgrade the affected component. The vendor confirms: "The mainstream version ZKBioTime V9.0.6 has fixed this vulnerability. Please update to the latest version as soon as possible. For the Middle East version BioTime 9.5.X, you can contact the local technical support to obtain the fix package."
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
NVD
CVE.org
EPSS
GitHub
VulDB
Exploit-DB