Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Credential externalization
MITRE ATT&CK
2 techniques across 2 tactics: Persistence, Credential Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Impact | While the CVSS 3.1 score of 5.5 is moderate, multiple risk signals indicate higher practical concern: (1) Attack Vector is Local (AV:L) and Access Complexity is Low (AC:L), meaning any local user can exploit this without privilege escalation; (2) Confidentiality Impact is High (C:H), allowing unauthorized access to sensitive biometric or security data managed by ZKBioSecurity; (3) Public exploits are available on Packet Storm Security and Exploit-DB, reducing exploitation barriers significantly; (4) The vulnerability was reported by credible security researcher(s) through ZeroScience and VulnCheck, suggesting thorough analysis; (5) No patch availability data is present in references, suggesting end-of-life or unpatched status for version 3.0. The low CVSS score underrepresents risk due to AV:L constraint—in environments where local access is achievable (contractor workstations, supply-chain compromise, insider threat), this becomes a high-confidence privilege escalation or lateral movement path. SSVC perspective: Exploitation is likely (public POC), automatable (simple IP/password combo), and technical impact is high (access to credential storage, biometric data, system configuration). Real priority: HIGH for organizations actively running ZKBioSecurity 3.0. |
| Exploit ScenarioDerived | An attacker with local user access on a network where ZKBioSecurity 3.0 is deployed (e.g., contractor on corporate LAN, compromised workstation in same subnet, or VM co-tenancy scenario) crafts a web request to visLogin.jsp with IPv6 loopback address 0:0:0:0:0:0:0:1 as the client IP. The EnvironmentUtil.getClientIp() method fails to properly normalize this IPv6 format and treats it as a valid localhost connection. The attacker authenticates using the IPv6 address (or loopback variant) as username and password '123456'. The application grants access to the login portal, allowing the attacker to enumerate or modify users, extract biometric templates, modify access control policies, or access audit logs. Public POC code exists (Exploit-DB #40327, Packet Storm #138571) making this a paste-and-run exploit requiring minimal technical skill. In a supply-chain context, an attacker with brief physical or network access could pre-stage exploitation by installing a rogue service that repeatedly attempts this bypass, maintaining persistent access even after physical removal. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Mar 15, 2026
ZKTeco ZKBioSecurity 3.0 contains a local authentication bypass vulnerability in visLogin.jsp that allows low-privileged attackers to authenticate without valid credentials by spoofing IPv6 loopback addresses and leveraging hardcoded credentials. An authenticated local attacker can access sensitive information and perform unauthorized actions; public exploits are available (Packet Storm Security, Exploit-DB), indicating moderate real-world risk despite the 5.5 CVSS score reflecting local-only attack vector.
RemediationAI
Specific patch versions are not documented in provided references. Recommended actions: (1) Contact ZKTeco Inc. directly to determine if patches exist for version 3.0 or if upgrade to version 4.x or later is required; (2) If patching is unavailable, implement network-level mitigations: restrict local access to ZKBioSecurity systems via host-based firewall rules (ufw, iptables on Linux; Windows Firewall on Windows); (3) Disable or restrict access to visLogin.jsp endpoint if an alternative authentication method exists; (4) Monitor for exploitation attempts by logging authentication via IPv6 loopback (0:0:0:0:0:0:0:1) or username matching IP addresses; (5) Consider upgrading to a newer ZKTeco product version if available and supported; (6) If the application permits, change the hardcoded password '123456' via application configuration files (if modifiable), though this may require source code modification. Immediate action: segregate ZKBioSecurity systems from untrusted local users.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability exists in the visLogin.jsp authentication handler of ZKTeco ZKBioSecurity (CPE: cpe:2.3:a:zkteco_inc.:zkteco_zkbiosecurity:*:*:*:*:*:*:*:*), specifically in the EnvironmentUtil.getClientIp() method. The root cause is CWE-798 (Use of Hard-Coded Credentials): the application implements a localhost-only authentication bypass using hardcoded password '123456' combined with the client IP address as username. The vulnerability exploits improper handling of IPv6 loopback notation (0:0:0:0:0:0:0:1) which should be equivalent to 127.0.0.1 but is handled inconsistently, allowing spoofing via IPv6 requests that bypass IP-based access controls. This is a classic implementation flaw where IP-based authentication combined with hardcoded credentials creates a trivial bypass path for any local user.
Know when Zkteco Zkbiosecurity gets its next vulnerability
- 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:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
Lifecycle Timeline
3DescriptionCVE.org
ZKTeco ZKBioSecurity 3.0 contains a local authorization bypass vulnerability in visLogin.jsp that allows attackers to authenticate without valid credentials by spoofing localhost requests. Attackers can exploit the EnvironmentUtil.getClientIp() method which treats IPv6 loopback address 0:0:0:0:0:0:0:1 as 127.0.0.1 and authenticates using the IP as username with hardcoded password 123456 to access sensitive information and perform unauthorized actions.
Executive ViewAI
Organizations using ZKTeco ZKBioSecurity 3.0 should be aware of moderate risk from CVE-2016-20031, a hard-coded credentials vulnerability rated CVSS 5.5. Exploitation could allow attackers to execute code or inject malicious input. Proof-of-concept code is publicly available. Organizations should apply vendor updates when available and monitor for exploitation.
Apply vendor patch. If patching is delayed: restrict network access, enable MFA, monitor auth logs.
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.
EUVD-2016-10817
NVD
CVE.org
EPSS
Exploit-DB
VulDB
GitHub PoC