CWEweakness
CWE-287 Improper Authentication
High
Official page ↗
- Alternate terms
- authentification, AuthN, AuthC
- Abstraction
- Class
- Structure
- Simple
- Status
- Draft
- Likelihood of exploit
- High
- Languages
- Not Language-Specific
- CWE version
- 5.0
Description
When an actor claims to have a given identity, the product does not prove or insufficiently proves that the claim is correct.
Common consequences
• Integrity, Confidentiality, Availability, Access Control: Read Application Data, Gain Privileges or Assume Identity, Execute Unauthorized Code or Commands — This weakness can lead to the exposure of resources or functionality to unintended actors, possibly providing attackers with sensitive information or even execute arbitrary code.
Potential mitigations
• [Architecture and Design] Use an authentication framework or library such as the OWASP ESAPI Authentication feature.
Detection methods
• Automated Static Analysis: Automated static analysis is useful for detecting certain types of authentication. A tool may be able to analyze related configuration files, such as .htaccess in Apache web servers, or detect the usage of commonly-used authentication libraries.
Generally, automated static analysis tools have difficulty detecting custom authentication schemes. In addition, the software's design may include some functionality that is accessible to any user and does not require an established identity; an automated technique that detects the absence of authentication may report false positives.
• Manual Static Analysis: This weakness can be detected using tools and techniques that require manual (human) analysis, such as penetration testing, threat modeling, and interactive tools that allow the tester to record and modify an active session.
Manual static analysis is useful for evaluating the correctness of custom authentication mechanisms.
• Manual Static Analysis - Binary or Bytecode: According to SOAR [REF-1479], the following detection techniques may be useful:
Cost effective for partial coverage:
• Binary / Bytecode disassembler - then use manual analysis for vulnerabilities & anomalies
• Dynamic Analysis with Automated Results Interpretation: According to SOAR [REF-1479], the following detection techniques may be useful:
Cost effective for partial coverage:
• Web Application Scanner
• Web Services Scanner
• Database Scanners
• Dynamic Analysis with Manual Results Interpretation: According to SOAR [REF-1479], the following detection techniques may be useful:
Cost effective for partial coverage:
• Fuzz Tester
• Framework-based Fuzzer
• Manual Static Analysis - Source Code: According to SOAR [REF-1479], the following detection techniques may be useful:
Cost effective for partial coverage:
• Manual Source Code Review (not inspections)
• Automated Static Analysis - Source Code: According to SOAR [REF-1479], the following detection techniques may be useful:
Cost effective for partial coverage:
• Source code Weakness Analyzer
• Context-configured Source Code Weakness Analyzer
• Automated Static Analysis: According to SOAR [REF-1479], the following detection techniques may be useful:
Cost effective for partial coverage:
• Configuration Checker
• Architecture or Design Review: According to SOAR [REF-1479], the following detection techniques may be useful:
Highly cost effective:
• Inspection (IEEE 1028 standard) (can apply to requirements, design, source code, etc.)
• Formal Methods / Correct-By-Construction
Observed examples
• CVE-2024-11680: File-sharing PHP product does not check if user is logged in during requests for PHP library files under an includes/ directory, allowing configuration changes, code execution, and other impacts.
• CVE-2022-35248: Chat application skips validation when Central Authentication Service
(CAS) is enabled, effectively removing the second factor from
two-factor authentication
• CVE-2022-36436: Python-based authentication proxy does not enforce password authentication during the initial handshake, allowing the client to bypass authentication by specifying a 'None' authentication type.
• CVE-2022-30034: Chain: Web UI for a Python RPC framework does not use regex anchors to validate user login emails (CWE-777), potentially allowing bypass of OAuth (CWE-1390).
• CVE-2022-29951: TCP-based protocol in Programmable Logic Controller (PLC) has no authentication.
• CVE-2022-29952: Condition Monitor firmware uses a protocol that does not require authentication.
• CVE-2022-30313: Safety Instrumented System uses proprietary TCP protocols with no authentication.
• CVE-2022-30317: Distributed Control System (DCS) uses a protocol that has no authentication.
• CVE-2022-33139: SCADA system only uses client-side authentication, allowing adversaries to impersonate other users.
• CVE-2021-3116: Chain: Python-based HTTP Proxy server uses the wrong boolean operators (CWE-480) causing an incorrect comparison (CWE-697) that identifies an authN failure if all three conditions are met instead of only one, allowing bypass of the proxy authentication (CWE-1390)
• CVE-2021-21972: Chain: Cloud computing virtualization platform does not require authentication for upload of a tar format file (CWE-306), then uses .. path traversal sequences (CWE-23) in the file to access unexpected files, as exploited in the wild per CISA KEV.
• CVE-2021-37415: IT management product does not perform authentication for some REST API requests, as exploited in the wild per CISA KEV.
• CVE-2021-35033: Firmware for a WiFi router uses a hard-coded password for a BusyBox shell, allowing bypass of authentication through the UART port
• CVE-2020-10263: Bluetooth speaker does not require authentication for the debug functionality on the UART port, allowing root shell access
• CVE-2020-13927: Default setting in workflow management product allows all API requests without authentication, as exploited in the wild per CISA KEV.
• CVE-2021-35395: Stack-based buffer overflows in SFK for wifi chipset used for IoT/embedded devices, as exploited in the wild per CISA KEV.
• CVE-2021-34523: Mail server does not properly check an access token before executing a Powershell command, as exploited in the wild per CISA KEV.
• CVE-2020-12812: Chain: user is not prompted for a second authentication factor (CWE-287) when changing the case of their username (CWE-178), as exploited in the wild per CISA KEV.
• CVE-2020-10148: Authentication bypass by appending specific parameters and values to a URI, as exploited in the wild per CISA KEV.
• CVE-2020-0688: Mail server does not generate a unique key during installation, as exploited in the wild per CISA KEV.
• CVE-2017-14623: LDAP Go package allows authentication bypass using an empty password, causing an unauthenticated LDAP bind
• CVE-2009-3421: login script for guestbook allows bypassing authentication by setting a "login_ok" parameter to 1.
• CVE-2009-2382: admin script allows authentication bypass by setting a cookie value to "LOGGEDIN".
• CVE-2009-1048: VOIP product allows authentication bypass using 127.0.0.1 in the Host header.
• CVE-2009-2213: product uses default "Allow" action, instead of default deny, leading to authentication bypass.
• CVE-2009-2168: Chain: redirect without exit (CWE-698) leads to resultant authentication bypass.
• CVE-2009-3107: product does not restrict access to a listening port for a critical service, allowing authentication to be bypassed.
• CVE-2009-1596: product does not properly implement a security-related configuration setting, allowing authentication bypass.
• CVE-2009-2422: authentication routine returns "nil" instead of "false" in some situations, allowing authentication bypass using an invalid username.
• CVE-2009-3232: authentication update script does not properly handle when admin does not select any authentication modules, allowing authentication bypass.
• CVE-2009-3231: use of LDAP authentication with anonymous binds causes empty password to result in successful authentication
• CVE-2005-3435: product authentication succeeds if user-provided MD5 hash matches the hash in its database; this can be subjected to replay attacks.
• CVE-2005-0408: Chain: product generates predictable MD5 hashes using a constant value combined with username, allowing authentication bypass.
Related
Attack pattern · CAPEC (10)
- CAPEC-114 Authentication Abuse attack pattern
- CAPEC-115 Authentication Bypass attack pattern
- CAPEC-151 Identity Spoofing attack pattern
- CAPEC-194 Fake the Source of Data attack pattern
- CAPEC-22 Exploiting Trust in Client attack pattern
- CAPEC-57 Utilizing REST's Trust in the System Resource to Obtain Sensitive Data attack pattern
- CAPEC-593 Session Hijacking attack pattern
- CAPEC-633 Token Impersonation attack pattern
- CAPEC-650 Upload a Web Shell to a Web Server attack pattern
- CAPEC-94 Adversary in the Middle (AiTM) attack pattern
Observed example · CVE (33)
- CVE-2024-11680 ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. vulnerability
- CVE-2022-35248 A improper authentication vulnerability exists in Rocket.Chat <v5, <v4.8.2 and <v4.7.5 that allowed two factor authentication can be… vulnerability
- CVE-2022-36436 OSU Open Source Lab VNCAuthProxy through 1.1.1 is affected by an vncap/vnc/protocol.py VNCServerAuthenticator authentication-bypass… vulnerability
- CVE-2022-30317 Honeywell Experion LX through 2022-05-06 has Missing Authentication for a Critical Function. vulnerability
- CVE-2022-30313 Honeywell Experion PKS Safety Manager through 2022-05-06 has Missing Authentication for a Critical Function. vulnerability
- CVE-2022-29951 JTEKT TOYOPUC PLCs through 2022-04-29 mishandle authentication. vulnerability
- CVE-2022-29952 Bently Nevada condition monitoring equipment through 2022-04-29 mishandles authentication. vulnerability
- CVE-2022-33139 A vulnerability has been identified in Cerberus DMS (All versions), Desigo CC (All versions), Desigo CC Compact (All versions), SIMATIC… vulnerability
- CVE-2022-30034 Flower, a web UI for the Celery Python RPC framework, all versions as of 05-02-2022 is vulnerable to an OAuth authentication bypass. vulnerability
- CVE-2021-35033 A vulnerability in specific versions of Zyxel NBG6818, NBG7815, WSQ20, WSQ50, WSQ60, and WSR30 firmware with pre-configured password… vulnerability
- CVE-2021-37415 Zoho ManageEngine ServiceDesk Plus before 11302 is vulnerable to authentication bypass that allows a few REST-API URLs without… vulnerability
- CVE-2021-35395 Realtek Jungle SDK version v2.x up to v3.4.14B provides an HTTP web server exposing a management interface that can be used to configure… vulnerability
- CVE-2021-34523 Microsoft Exchange Server Elevation of Privilege Vulnerability vulnerability
- CVE-2021-21972 The vSphere Client (HTML5) contains a remote code execution vulnerability in a vCenter Server plugin. vulnerability
- CVE-2021-3116 before_upstream_connection in AuthPlugin in http/proxy/auth.py in proxy.py before 2.3.1 accepts incorrect Proxy-Authorization header data… vulnerability
- CVE-2020-10148 The SolarWinds Orion API is vulnerable to an authentication bypass that could allow a remote attacker to execute API commands. vulnerability
- CVE-2020-13927 The previous default setting for Airflow's Experimental API was to allow all API requests without authentication, but this poses security… vulnerability
- CVE-2020-12812 An improper authentication vulnerability in SSL VPN in FortiOS 6.4.0, 6.2.0 to 6.2.3, 6.0.9 and below may result in a user being able to… vulnerability
- CVE-2020-10263 An issue was discovered on XIAOMI XIAOAI speaker Pro LX06 1.52.4. vulnerability
- CVE-2020-0688 A remote code execution vulnerability exists in Microsoft Exchange software when the software fails to properly handle objects in memory,… vulnerability
- CVE-2017-14623 In the ldap.v2 (aka go-ldap) package through 2.5.0 for Go, an attacker may be able to login with an empty password. vulnerability
- CVE-2009-3421 login.php in Zenas PaoBacheca Guestbook 2.1, when register_globals is enabled, allows remote attackers to bypass authentication and gain… vulnerability
- CVE-2009-3231 The core server component in PostgreSQL 8.3 before 8.3.8 and 8.2 before 8.2.14, when using LDAP authentication with anonymous binds, allows… vulnerability
- CVE-2009-3232 pam-auth-update for PAM, as used in Ubuntu 8.10 and 9.4, and Debian GNU/Linux, does not properly handle an "empty selection" for system… vulnerability
- CVE-2009-3107 Symantec Altiris Deployment Solution 6.9.x before 6.9 SP3 Build 430 does not properly restrict access to the listening port for the… vulnerability
- CVE-2009-1048 The web interface on the snom VoIP phones snom 300, snom 320, snom 360, snom 370, and snom 820 with firmware 6.5 before 6.5.20, 7.1 before… vulnerability
- CVE-2009-2422 The example code for the digest authentication functionality (http_authentication.rb) in Ruby on Rails before 2.3.3 defines an… vulnerability
- CVE-2009-2382 admin.php in phpMyBlockchecker 1.0.0055 allows remote attackers to bypass authentication and gain administrative access by setting the… vulnerability
- CVE-2009-2213 The default configuration of the Security global settings on the Citrix NetScaler Access Gateway appliance with Enterprise Edition firmware… vulnerability
- CVE-2009-2168 cpanel/login.php in EgyPlus 7ammel (aka 7ml) 1.0.1 and earlier sends a redirect to the web browser but does not exit when the supplied… vulnerability
Child of · CWE (1)
- CWE-284 Improper Access Control weakness
Referenced by CAPEC · weakness (10)
- CAPEC-114 Authentication Abuse attack pattern
- CAPEC-115 Authentication Bypass attack pattern
- CAPEC-151 Identity Spoofing attack pattern
- CAPEC-194 Fake the Source of Data attack pattern
- CAPEC-22 Exploiting Trust in Client attack pattern
- CAPEC-57 Utilizing REST's Trust in the System Resource to Obtain Sensitive Data attack pattern
- CAPEC-593 Session Hijacking attack pattern
- CAPEC-633 Token Impersonation attack pattern
- CAPEC-650 Upload a Web Shell to a Web Server attack pattern
- CAPEC-94 Adversary in the Middle (AiTM) attack pattern
Referenced by CVE · weakness (5,265)
- CVE-2026-109516 The Bot for Telegram on WooCommerce plugin for WordPress is vulnerable to Authentication Bypass leading to Account Takeover in all versions… vulnerability
- CVE-2026-110245 IBM Langflow OSS 1.0.0 through 1.12.4 could allow a remote attacker to obtain sensitive information due to improper authentication. vulnerability
- CVE-2026-111739 The Two Factor Authentication WordPress plugin before 1.17.0, All-In-One Security (AIOS) WordPress plugin before 5.5.0 do not bind the… vulnerability
- CVE-2026-84295 Improper authentication in Progress Software WS_FTP Server versions prior to 2024.0.6 and 2025.0.3 on Windows could allow an… vulnerability
- CVE-2026-84296 Multi-Factor Authentication Bypass vulnerability in SSH component in Progress Software WS_FTP Server versions prior to 2024.0.6, and… vulnerability
- CVE-2026-88928 The PAYCOMET for WooCommerce WordPress plugin before 5.46 does not verify the cryptographic signature on its payment notification endpoint… vulnerability
- CVE-2026-90862 Improper authentication in the Web Transfer Module of Progress Software WS_FTP Server versions prior to 2024.0.7 and 2025.0.4 on Windows… vulnerability
- CVE-2026-93680 IBM Langflow OSS 1.0.0 through 1.12.8 could allow a remote attacker to bypass security restrictions due to improper authentication. vulnerability
- CVE-2026-93757 The Wild Apricot Login plugin for WordPress is vulnerable to Authentication Bypass via SSO Email-Collision Account Binding in all versions… vulnerability
- CVE-2026-96228 SSL Wireless SMS Notification for WordPress is vulnerable to Authentication Bypass in all versions up to, and including, 3.8.1. vulnerability
- CVE-2026-103331 The UniPAY Payment Gateway For WooCommerce WordPress plugin through 2.3 does not properly verify the authenticity of payment notifications,… vulnerability
- CVE-2026-103779 Dell PowerProtect Data Domain, Feature Release versions 7.7.1.0 through 8.8, LTS2024 release versions 7.13.1.0 through 7.13.1.80, LTS2025… vulnerability
- CVE-2026-106013 The Jupiter X Core plugin for WordPress is vulnerable to Authentication Bypass via the Twitter/X Social Login handler in all versions up to… vulnerability
- CVE-2026-109236 The Customer Email Verification for WooCommerce plugin for WordPress is vulnerable to Authentication Bypass via a Predictable… vulnerability
- CVE-2026-118129 A vulnerability was found in jeremyckahn Chitchatter up to f82538633813c854a81a8b2112a2f6ba17b39cbc. vulnerability
- CVE-2026-55369 Waline is a comment system with backend support. vulnerability
- CVE-2026-86400 Dell PowerProtect Data Domain, Feature Release versions 7.7.1.0 through 8.8, LTS2024 release versions 7.13.1.0 through 7.13.1.80, LTS2025… vulnerability
- CVE-2026-103312 The Payment Integration Wompi WordPress plugin through 4.0.1 does not verify the authenticity of incoming payment notifications on a stock… vulnerability
- CVE-2026-103332 The Payex Payment Gateway for Woocommerce WordPress plugin through 1.2.10 does not properly verify the authenticity of incoming payment… vulnerability
- CVE-2026-116604 A vulnerability has been found in SourceCodester Online Food Ordering System 1.0. vulnerability
- CVE-2026-117532 REDAXO core from 5.3.0 before 5.21.4 contains an authentication bypass vulnerability in the structure/history plugin that allows… vulnerability
- CVE-2026-65211 This issue may allow an authenticated IPMI Administrator to read and write arbitrary BMC physical memory and thereby execute code on the… vulnerability
- CVE-2026-82332 An improper authentication vulnerability in WatchGuard Fireware OS's AuthPoint multi-factor authentication process allows a local,… vulnerability
- CVE-2026-92376 Improper authentication in the inter-process communication (IPC) mechanism of TeamViewer Remote Management Monitoring for Windows prior to… vulnerability
- CVE-2026-92885 The Qode Membership plugin for WordPress is vulnerable to Authentication Bypass leading to Account Takeover in all versions up to, and… vulnerability
- CVE-2026-103306 The Online Payments with iK Pay Gateway WordPress plugin before 3.0.4 does not properly verify the authenticity of its payment gateway… vulnerability
- CVE-2026-103319 The OPay Payment Gateway for WooCommerce WordPress plugin through 2.5.5 does not properly verify that payment notifications originate from… vulnerability
- CVE-2026-112427 An authentication issue was addressed with improved state management. vulnerability
- CVE-2026-116110 A vulnerability was found in GiantappMan LiveWallPaper 2.6.8.0 on Windows. vulnerability
- CVE-2026-116228 A vulnerability was found in 777genius agent-teams-ai up to 2.17.10. vulnerability
Referenced by CWE · child of (11)
- CWE-1390 Weak Authentication weakness
- CWE-290 Authentication Bypass by Spoofing weakness
- CWE-294 Authentication Bypass by Capture-replay weakness
- CWE-295 Improper Certificate Validation weakness
- CWE-306 Missing Authentication for Critical Functionality weakness
- CWE-307 Improper Restriction of Excessive Authentication Attempts weakness
- CWE-521 Weak Password Requirements weakness
- CWE-522 Insufficiently Protected Credentials weakness
- CWE-640 Weak Password Recovery Mechanism for Forgotten Password weakness
- CWE-645 Overly Restrictive Account Lockout Mechanism weakness
- CWE-798 Use of Hard-coded Credentials weakness
Referenced by CWE · has member (8)
- CWE-1003 Weaknesses for Simplified Mapping of Published Vulnerabilities view
- CWE-1200 Weaknesses in the 2019 CWE Top 25 Most Dangerous Software Errors view
- CWE-1337 Weaknesses in the 2021 CWE Top 25 Most Dangerous Software Weaknesses view
- CWE-1350 Weaknesses in the 2020 CWE Top 25 Most Dangerous Software Weaknesses view
- CWE-1387 Weaknesses in the 2022 CWE Top 25 Most Dangerous Software Weaknesses view
- CWE-1425 Weaknesses in the 2023 CWE Top 25 Most Dangerous Software Weaknesses view
- CWE-1430 Weaknesses in the 2024 CWE Top 25 Most Dangerous Software Weaknesses view
- CWE-635 Weaknesses Originally Used by NVD from 2008 to 2016 view