CWEweakness

CWE-863 Incorrect Authorization

High Official page ↗
Alternate terms
AuthZ
Abstraction
Class
Structure
Simple
Status
Incomplete
Likelihood of exploit
High
Languages
Go, Not Language-Specific
CWE version
5.0

Description

The product performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check.

Common consequences

• Confidentiality: Read Application Data, Read Files or Directories — An attacker could bypass intended access restrictions to read sensitive data, either by reading the data directly from a data store that is not correctly restricted, or by accessing insufficiently-protected, privileged functionality to read the data. • Integrity: Modify Application Data, Modify Files or Directories — An attacker could bypass intended access restrictions to modify sensitive data, either by writing the data directly to a data store that is not correctly restricted, or by accessing insufficiently-protected, privileged functionality to write the data. • Access Control: Gain Privileges or Assume Identity, Bypass Protection Mechanism — An attacker could bypass intended access restrictions to gain privileges by modifying or reading critical data directly, or by accessing privileged functionality. • Confidentiality, Integrity, Availability: Execute Unauthorized Code or Commands — An attacker could use elevated privileges to execute unauthorized commands or code. • Availability: DoS: Crash, Exit, or Restart, DoS: Resource Consumption (CPU), DoS: Resource Consumption (Memory), DoS: Resource Consumption (Other) — An attacker could gain unauthorized access to resources on the system and excessively consume those resources, leading to a denial of service.

Potential mitigations

• [Architecture and Design] Divide the product into anonymous, normal, privileged, and administrative areas. Reduce the attack surface by carefully mapping roles with data and functionality. Use role-based access control (RBAC) [REF-229] to enforce the roles at the appropriate boundaries. Note that this approach may not protect against horizontal authorization, i.e., it will not protect a user from attacking others with the same role. • [Architecture and Design] Ensure that access control checks are performed related to the business logic. These checks may be different than the access control checks that are applied to more generic resources such as files, connections, processes, memory, and database records. For example, a database may restrict access for medical records to a specific database user, but each record might only be intended to be accessible to the patient and the patient's doctor [REF-7]. • [Architecture and Design] Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid. For example, consider using authorization frameworks such as the JAAS Authorization Framework [REF-233] and the OWASP ESAPI Access Control feature [REF-45]. • [Architecture and Design] For web applications, make sure that the access control mechanism is enforced correctly at the server side on every page. Users should not be able to access any unauthorized functionality or information by simply requesting direct access to that page. One way to do this is to ensure that all pages containing sensitive information are not cached, and that all such pages restrict access to requests that are accompanied by an active and authenticated session token associated with a user who has the required permissions to access that page. • [System Configuration, Installation] Use the access control capabilities of your operating system and server environment and define your access control lists accordingly. Use a "default deny" policy when defining these ACLs.

Detection methods

• Automated Static Analysis: Automated static analysis is useful for detecting commonly-used idioms for authorization. A tool may be able to analyze related configuration files, such as .htaccess in Apache web servers, or detect the usage of commonly-used authorization libraries. Generally, automated static analysis tools have difficulty detecting custom authorization schemes. Even if they can be customized to recognize these schemes, they might not be able to tell whether the scheme correctly performs the authorization in a way that cannot be bypassed or subverted by an attacker. • Automated Dynamic Analysis: Automated dynamic analysis may not be able to find interfaces that are protected by authorization checks, even if those checks contain weaknesses. • Manual 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. Specifically, manual static analysis is useful for evaluating the correctness of custom authorization 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: • Host Application Interface Scanner • Fuzz Tester • Framework-based Fuzzer • Forced Path Execution • Monitored Virtual Environment - run potentially malicious code in sandbox / wrapper / virtual machine, see if it does anything suspicious • Manual Static Analysis - Source Code: According to SOAR [REF-1479], the following detection techniques may be useful: Cost effective for partial coverage: • Focused Manual Spotcheck - Focused manual analysis of source • 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: • Context-configured Source Code Weakness Analyzer • Architecture or Design Review: According to SOAR [REF-1479], the following detection techniques may be useful: Highly cost effective: • Formal Methods / Correct-By-Construction Cost effective for partial coverage: • Inspection (IEEE 1028 standard) (can apply to requirements, design, source code, etc.)

Observed examples

• CVE-2025-24839: collaboration platform allows attacker to access an AI bot by using a plugin to set a critical property • CVE-2025-32796: LLM application development platform allows non-admin users to enable or disable apps using certain API endpoints • CVE-2021-39155: Chain: A microservice integration and management platform compares the hostname in the HTTP Host header in a case-sensitive way (CWE-178, CWE-1289), allowing bypass of the authorization policy (CWE-863) using a hostname with mixed case or other variations. • CVE-2019-15900: Chain: sscanf() call is used to check if a username and group exists, but the return value of sscanf() call is not checked (CWE-252), causing an uninitialized variable to be checked (CWE-457), returning success to allow authorization bypass for executing a privileged (CWE-863). • CVE-2009-2213: Gateway uses default "Allow" configuration for its authorization settings. • CVE-2009-0034: Chain: product does not properly interpret a configuration option for a system group, allowing users to gain privileges. • CVE-2008-6123: Chain: SNMP product does not properly parse a configuration option for which hosts are allowed to connect, allowing unauthorized IP addresses to connect. • CVE-2008-7109: Chain: reliance on client-side security (CWE-602) allows attackers to bypass authorization using a custom client. • CVE-2008-3424: Chain: product does not properly handle wildcards in an authorization policy list, allowing unintended access. • CVE-2008-4577: ACL-based protection mechanism treats negative access rights as if they are positive, allowing bypass of intended restrictions. • CVE-2006-6679: Product relies on the X-Forwarded-For HTTP header for authorization, allowing unintended access by spoofing the header. • CVE-2005-2801: Chain: file-system code performs an incorrect comparison (CWE-697), preventing default ACLs from being properly applied. • CVE-2001-1155: Chain: product does not properly check the result of a reverse DNS lookup because of operator precedence (CWE-783), allowing bypass of DNS-based access restrictions.

Related

Observed example · CVE (13)

  • CVE-2025-32796 Dify is an open-source LLM app development platform. vulnerability
  • CVE-2025-24839 Mattermost versions 10.5.x <= 10.5.1, 10.4.x <= 10.4.3, 9.11.x <= 9.11.9 fail to prevent Wrangler posts from triggering AI responses. vulnerability
  • CVE-2021-39155 Istio is an open source platform for providing a uniform way to integrate microservices, manage traffic flow across microservices, enforce… vulnerability
  • CVE-2019-15900 An issue was discovered in slicer69 doas before 6.2 on certain platforms other than OpenBSD. vulnerability
  • CVE-2008-7109 The Scanner File Utility (aka listener) in Kyocera Mita (KM) 3.3.0.1 allows remote attackers to bypass authorization and upload arbitrary… 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-2008-6123 The netsnmp_udp_fmtaddr function (snmplib/snmpUDPDomain.c) in net-snmp 5.0.9 through 5.4.2.1, when using TCP wrappers for client… vulnerability
  • CVE-2009-0034 parse.c in sudo 1.6.9p17 through 1.6.9p19 does not properly interpret a system group (aka %group) in the sudoers file during authorization… vulnerability
  • CVE-2008-4577 The ACL plugin in Dovecot before 1.1.4 treats negative access rights as if they are positive access rights, which allows attackers to… vulnerability
  • CVE-2008-3424 Condor before 7.0.4 does not properly handle wildcards in the ALLOW_WRITE, DENY_WRITE, HOSTALLOW_WRITE, or HOSTDENY_WRITE configuration… vulnerability
  • CVE-2006-6679 Pedro Lineu Orso chetcpasswd before 2.4 relies on the X-Forwarded-For HTTP header when verifying a client's status on an IP address ACL,… vulnerability
  • CVE-2005-2801 xattr.c in the ext2 and ext3 file system code for Linux kernel 2.6 does not properly compare the name_index fields when sharing xattr… vulnerability
  • CVE-2001-1155 TCP Wrappers (tcp_wrappers) in FreeBSD 4.1.1 through 4.3 with the PARANOID ACL option enabled does not properly check the result of a… vulnerability

Child of · CWE (2)

  • CWE-284 Improper Access Control weakness
  • CWE-285 Improper Authorization weakness

Referenced by CVE · weakness (4,604)

  • CVE-2025-13050 Broken Function Level Authorization allows execution of poller post-restart commands by authenticated user vulnerability
  • CVE-2026-115712 Incorrect Authorization (CWE-863) in Elastic Cloud Enterprise (ECE) can lead to unauthorized modification of platform-level settings via… vulnerability
  • CVE-2026-119115 Incorrect authorization in the issuer resolution logic in AWS Private CA Connector for Kubernetes (aws-privateca-issuer) before v1.10.1… vulnerability
  • CVE-2026-85330 Incorrect authorization in Microsoft Edge for Android allows an unauthorized attacker to bypass a security feature over a network. vulnerability
  • CVE-2026-100105 A user with permission to edit contact points but not their protected fields can change protected settings, such as a contact point's… vulnerability
  • CVE-2026-111032 The Welcart e-Commerce WordPress plugin before 2.12.6 does not properly verify authorization against the targeted product before processing… vulnerability
  • CVE-2026-111960 The Royal MCP WordPress plugin before 1.5.10 does not perform object-level or post-type authorisation checks in one of its search tools,… vulnerability
  • CVE-2026-118264 Echo is a Go web framework. vulnerability
  • CVE-2026-118640 n8n before 1.123.85, 2.43.5, and 2.44.1 contains an authorization bypass vulnerability in Chat Hub that allows chat-only users to register… vulnerability
  • CVE-2026-118642 n8n before 1.123.85, 2.43.5, and 2.44.1 contains an authorization bypass vulnerability that allows authenticated members to use… vulnerability
  • CVE-2026-118650 Echo is a Go web framework. vulnerability
  • CVE-2026-118668 langgraph-api implements the LangGraph API for rapid development and testing. vulnerability
  • CVE-2026-118669 OAuthLib is an implementation of the OAuth request-signing logic for Python 3.6+. vulnerability
  • CVE-2026-118675 n8n before 1.123.85, 2.43.5, and 2.44.1 contains a credential guard bypass vulnerability that allows editors of shared workflows to use… vulnerability
  • CVE-2026-118676 n8n before 1.123.85, 2.43.5, and 2.44.1 contains an authorization bypass vulnerability that allows member users to use credentials they… vulnerability
  • CVE-2026-118685 ToolJet from 3.20.2-lts before 3.20.242-lts contains an authorization bypass in SignupDisableGuard, which treats the string signup setting… vulnerability
  • CVE-2026-104189 The 3D Viewer for Nextcloud is a comprehensive 3D model viewer application for Nextcloud that supports multiple 3D file formats. vulnerability
  • CVE-2026-105780 Adobe Campaign Classic (ACC) is affected by an Incorrect Authorization vulnerability that could result in arbitrary code execution in the… vulnerability
  • CVE-2026-106077 A vulnerability allowing a user with the Veeam Backup for Microsoft 365 Administrator role to read arbitrary files on the backup server… vulnerability
  • CVE-2026-108302 Tanium addressed an improper access controls vulnerability in Comply. vulnerability
  • CVE-2026-116623 A vulnerability was detected in code-projects Simple Content Management System 1.0. vulnerability
  • CVE-2026-116679 Neko is a a self-hosted virtual browser that runs in Docker and uses WebRTC. vulnerability
  • CVE-2026-116684 The Model Context Protocol Python SDK is the official Python SDK for Model Context Protocol servers and clients. vulnerability
  • CVE-2026-117472 Psono Server CE && EE versions 4.0.33 through 7.2.3 compared the request path for the bulk-secret-read endpoint with a hard-coded… vulnerability
  • CVE-2026-57200 Asterisk is an open source private branch exchange and telephony toolkit. vulnerability
  • CVE-2026-102649 Burrito is a Terraform Automation Collaboration Software (TACoS) Kubernetes operator. vulnerability
  • CVE-2026-110720 Consul-k8s versions 0.42.0 and later are vulnerable to a cross-namespace authorization bypass in component ACL binding rules that may allow… vulnerability
  • CVE-2026-116107 A vulnerability was detected in Datafeedr Product Sets Plugin up to 1.3.24 on WordPress. vulnerability
  • CVE-2026-116575 Mem0 provides persistent memory infrastructure for AI agents and applications. vulnerability
  • CVE-2026-93846 Mattermost versions 11.7.x <= 11.7.10 fail to restrict which built-in roles can be assigned to a team member via the API, which allows a… vulnerability
Show all 4,604 ›

Referenced by CWE · can precede (1)

  • CWE-41 Improper Resolution of Path Equivalence weakness

Referenced by CWE · child of (6)

  • CWE-1244 Internal Asset Exposed to Unsafe Debug Access Level or State weakness
  • CWE-551 Incorrect Behavior Order: Authorization Before Parsing and Canonicalization weakness
  • CWE-639 Authorization Bypass Through User-Controlled Key weakness
  • CWE-647 Use of Non-Canonical URL Paths for Authorization Decisions weakness
  • CWE-804 Guessable CAPTCHA weakness
  • CWE-942 Permissive Cross-domain Security Policy with Untrusted Domains weakness

Referenced by CWE · has member (6)

  • CWE-1003 Weaknesses for Simplified Mapping of Published Vulnerabilities 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-1435 Weaknesses in the 2025 CWE Top 25 Most Dangerous Software Weaknesses view
  • CWE-1468 Weaknesses Addressed by the OWASP Golang Secure Coding Practices Guide view
  • CWE-884 CWE Cross-section view

Referenced by OWASP · mapped cwe (2)

  • A01:2025 Broken Access Control Top 10 2025
  • A01:2021 Broken Access Control Top 10 2021