Skip to content
OpenAdvisories

Weakness (CWE)

CWE-639: Authorization Bypass Through User-Controlled Key

Base Incomplete

The system's authorization functionality does not prevent one user from gaining access to another user's data or record by modifying the key value identifying the data.

More detail

It is likely that an attacker would have to be an authenticated user in the system. However, the authorization process would not properly check the data access operation to ensure that the authenticated user performing the operation has sufficient entitlements to perform the requested data access, hence bypassing any other authorization checks present in the system.

For example, attackers can look at places where user specific data is retrieved (e.g. search screens) and determine whether the key for the item being looked up is controllable externally. The key may be a hidden field in the HTML form field, might be passed as a URL parameter or as an unencrypted cookie variable, then in each of these cases it will be possible to tamper with the key value.

How to prevent it (3 mitigations)
  1. Architecture and Design

    For each and every data access, ensure that the user has sufficient privilege to access the record that is being requested.

  2. Architecture and Design, Implementation

    Make sure that the key that is used in the lookup of a specific user's record is not controllable externally by the user or that any tampering can be detected.

  3. Architecture and Design

    Use encryption in order to make it more difficult to guess other legitimate values of the key or associate a digital signature with the key so that the server can verify that there has been no tampering.

Source: MITRE CWE-639

3,334 results · Feed

  • Medium 4.3

    Known v1.3.1 contains Insecure Direct Object Reference

    Known v1.3.1 was discovered to contain an Insecure Direct Object Reference (IDOR).

  • Critical 9.8

    Keycloak vulnerable to privilege escalation on Token Exchange feature

    A privilege escalation flaw was found in the token exchange feature of keycloak. Missing authorization allows a client application holding a valid access token to exchange tokens for any target client by passing the client_id of the target. This could allow a…

  • Medium 6.5

    Authorization Bypass Through User-Controlled Key in ionicabizau/parse-path

    Authorization Bypass Through User-Controlled Key in GitHub repository ionicabizau/parse-path prior to 5.0.0.

  • Unscored —

    WP-Email < 2.69.0 - Anti-Spam Protection Bypass via IP Spoofing

    The WP-EMail WordPress plugin before 2.69.0 prioritizes getting a visitor's IP from certain HTTP headers over PHP's REMOTE_ADDR, which makes it possible to bypass IP-based anti-spamming restrictions.

  • Medium 4.2

    Authorization Bypass Through User-Controlled Key when using CILogonOAuthenticator in oauthenticator

    OAuthenticator is an OAuth token library for the JupyerHub login handler. CILogonOAuthenticator is provided by the OAuthenticator package, and lets users log in to a JupyterHub via CILogon. This is primarily used to restrict a JupyterHub only to users of a gi…

  • Critical 9.3

    Authorization Bypass Through User-Controlled Key in emicklei/go-restful

    Authorization Bypass Through User-Controlled Key in GitHub repository emicklei/go-restful prior to v3.8.0.

  • Critical 9.9

    Authorization Bypass Through User-Controlled Key in publify/publify

    Authorization Bypass Through User-Controlled Key in GitHub repository publify/publify prior to 9.2.9.

  • Medium 6.3

    WordPress Spiffy Calendar plugin <= 4.9.0 - Edit/Delete event via IDOR vulnerability

    Insecure Direct Object References (IDOR) vulnerability in Spiffy Plugins Spiffy Calendar <= 4.9.0 at WordPress allows an attacker to edit or delete events.

  • Medium 5.0

    Possibility for anyone to add a stack with existing tasks on anyone's board in Nextcloud Deck

    Nextcloud Deck is a Kanban-style project & personal management tool for Nextcloud. In versions prior to 1.4.8, 1.5.6, and 1.6.1, an authenticated user can move stacks with cards from their own board to a board of another user. The Nextcloud Deck app contains …

  • Unscored —

    WPQA < 5.2 - Subscriber+ Private Message Disclosure via IDOR

    The WPQA Builder Plugin WordPress plugin before 5.2, used as a companion plugin for the Discy and Himer , does not validate that the message_id of the wpqa_message_view ajax action belongs to the requesting user, leading to any user being able to read message…

  • Medium 6.5

    Shopizer - IDOR delete superadmin

    In Shopizer versions 2.0 to 2.17.0 a regular admin can permanently delete a superadmin (although this cannot happen according to the documentation) via Insecure Direct Object Reference (IDOR) vulnerability.

  • Unscored —

    DW Question & Answer Pro <= 1.3.4 - Arbitrary Comment Edition via IDOR

    The DW Question & Answer Pro WordPress plugin through 1.3.4 does not check that the comment to edit belongs to the user making the request, allowing any user to edit other comments.

  • Medium 5.4
    CVE-2021-46416 Public exploit

    Insecure direct object reference in SUNNY TRIPOWER 5.0 Firmware version 3.10.16.R leads to unauthorized user groups acc…

  • Unscored —

    Blackhole for Bad Bots < 3.3.2 - Arbitrary IP Address Blocking via IP Spoofing

    The Blackhole for Bad Bots WordPress plugin before 3.3.2 uses headers such as CF-CONNECTING-IP, CLIENT-IP etc to determine the IP address of requests hitting the blackhole URL, which allows them to be spoofed. This could result in blocking arbitrary IP addres…

  • High 7.5

    Affected versions of Atlassian Fisheye & Crucible allowed remote attackers to browse local files via an Insecure Direct…

  • Unscored —

    UsersWP < 1.2.3.1 - Subscriber+ User Avatar Override

    The UsersWP WordPress plugin before 1.2.3.1 is missing access controls when updating a user avatar, and does not make sure file names for user avatars are unique, allowing a logged in user to overwrite another users avatar.

  • Medium 6.4

    Authorization Bypass Through User-Controlled Key in Rundeck

    Rundeck is an open source automation service with a web console, command line tools and a WebAPI. Prior to versions 3.4.5 and 3.3.15, an authenticated user with authorization to read webhooks in one project can craft a request to reveal Webhook definitions an…

  • Medium 5.4

    Improper Access Control (IDOR) in dolibarr/dolibarr

    Improper Access Control (IDOR) in GitHub repository dolibarr/dolibarr prior to 16.0.

  • Medium 6.5

    Authorization Bypass Through User-Controlled Key in unshiftio/url-parse

    Authorization Bypass Through User-Controlled Key in NPM url-parse prior to 1.5.9.

  • Medium 6.5

    Authorization Bypass Through User-Controlled Key in unshiftio/url-parse

    Authorization Bypass Through User-Controlled Key in NPM url-parse prior to 1.5.8.

  • Medium 6.5

    Authorization Bypass Through User-Controlled Key in unshiftio/url-parse

    Authorization Bypass Through User-Controlled Key in NPM url-parse prior to 1.5.7.

  • Medium 5.3

    Authorization Bypass Through User-Controlled Key in medialize/uri.js

    Authorization Bypass Through User-Controlled Key in NPM urijs prior to 1.19.8.

  • High 8.8

    Authorization Bypass Through User-Controlled Key in unshiftio/url-parse

    Authorization Bypass Through User-Controlled Key in NPM url-parse prior to 1.5.6.

  • Medium 4.3

    Exposure of Sensitive Information in Grafana

    Grafana is an open-source platform for monitoring and observability. Affected versions of Grafana expose multiple API endpoints which do not properly handle user authorization. `/teams/:teamId` will allow an authenticated attacker to view unintended data by q…

  • Unscored —

    IP2Location Country Blocker < 2.26.5 - Ban Bypass

    The IP2Location Country Blocker WordPress plugin before 2.26.5 bans can be bypassed by using a specific parameter in the URL

  • Medium 6.5

    Authorization Bypass Through User-Controlled Key in livehelperchat/livehelperchat

    Authorization Bypass Through User-Controlled Key in Packagist remdex/livehelperchat prior to 3.92v.

  • Medium 6.3

    Authorization Bypass Through User-Controlled Key in weseek/growi

    growi is vulnerable to Authorization Bypass Through User-Controlled Key

  • High 7.3

    Carinal Tien Hospital Health Report System - Authorization Bypass Through User-Controlled Key

    Carinal Tien Hospital Health Report System’s login page has improper authentication, a remote attacker can acquire another general user’s privilege by modifying the cookie parameter without authentication. The attacker can then perform limited operations on t…

  • Unscored —

    Logo Carousel < 3.4.2 - Unauthorised Private Post Access

    The Logo Carousel WordPress plugin before 3.4.2 allows users with a role as low as Contributor to duplicate and view arbitrary private posts made by other users via the Carousel Duplication feature

  • High 7.4

    Permissions check bypass in Seafile

    Seafile is an open source cloud storage system. A sync token is used in Seafile file syncing protocol to authorize access to library data. To improve performance, the token is cached in memory in seaf-server. Upon receiving a token from sync client or SeaDriv…

  • Medium 4.3

    Authorization Bypass Through User-Controlled Key in elgg/elgg

    elgg is vulnerable to Authorization Bypass Through User-Controlled Key

  • Medium 6.5

    Improper Access Control in kevinpapst/kimai2

    kimai2 is vulnerable to Improper Access Control

  • Medium 6.5

    Dell EMC Streaming Data Platform versions before 1.3 contain an Indirect Object Reference Vulnerability. A remote malic…

  • Unscored —

    Advanced Forms < 1.6.9 - Subscriber+ Arbitrary User Email Address Update via IDOR

    Insecure Direct Object Reference in edit function of Advanced Forms (Free & Pro) before 1.6.9 allows authenticated remote attacker to change arbitrary user's email address and request for reset password, which could lead to take over of WordPress's administra…

  • Medium —

    Exposure of sensitive information in concrete5/core

    In Concrete CMS (formerly concrete 5) below 8.5.7, IDOR Allows Unauthenticated User to Access Restricted Files If Allowed to Add Message to a Conversation.To remediate this, a check was added to verify a user has permissions to view files before attaching the…

  • Medium —

    Password exposure in concrete5/core

    Unauthorized individuals could view password protected files using view_inline in Concrete CMS (previously concrete 5) prior to version 8.5.7. Concrete CMS now checks to see if a file has a password in view_inline and, if it does, the file is not rendered.For…

  • Unscored —

    Squaretype Modern Blog < 3.0.4 - Unauthenticated Private/Schedule Posts Disclosure

    The Squaretype WordPress theme before 3.0.4 allows unauthenticated users to manipulate the query_vars used to retrieve the posts to display in one of its REST endpoint, without any validation. As a result, private and scheduled posts could be retrieved via a …

  • High 7.5

    Affected versions of Atlassian Jira Server and Data Center allow unauthenticated remote attackers to view the names of …

  • High 7.5

    Affected versions of Atlassian Jira Server and Data Center allow anonymous remote attackers to view private project and…

  • High 7.5

    Affected versions of Atlassian Jira Server and Data Center allow anonymous remote attackers to view the names of privat…