Skip to content
OpenAdvisories

Weakness (CWE)

CWE-1249: Application-Level Admin Tool with Inconsistent View of Underlying Operating System

Base Incomplete

The product provides an application for administrators to manage parts of the underlying operating system, but the application does not accurately identify all of the relevant entities or resources that exist in the OS; that is, the application's model of the OS's state is inconsistent with the OS's actual state.

More detail

Many products provide web-based applications or other interfaces for managing the underlying operating system. This is common with cloud, network access devices, home networking, and other systems. When the management tool does not accurately represent what is in the OS - such as user accounts - then the administrator might not see suspicious activities that would be noticed otherwise.

For example, numerous systems utilize a web
front-end for administrative control. They also offer
the ability to add, alter, and drop users with various
privileges as it relates to the functionality of the
system. A potential architectural weakness may exist
where the user information reflected in the web
interface does not mirror the users in the underlying
operating system. Many web UI or REST APIs use the
underlying operating system for authentication; the
system's logic may also track an additional set of
user capabilities within configuration files
and datasets for authorization capabilities. When
there is a discrepancy between the user information in
the UI or REST API's interface system and the
underlying operating system's user listing, this may
introduce a weakness into the system. For example, if an
attacker compromises the OS and adds a new user
account - a "ghost" account - then the attacker could escape detection if
the management tool does not list the newly-added
account.

This discrepancy could be exploited in several ways:

- A rogue admin could insert a new account into a system that will
persist if they are terminated or wish to take action on a system that
cannot be directly associated with them.

- An attacker can leverage a separate command injection attack available through the web interface to insert a ghost account with shell privileges such as ssh.

- An attacker can leverage existing web interface APIs, manipulated in such a way that a new user is inserted into the operating system, and the user web account is either partially created or not at all.

- An attacker could create an admin
account which is viewable by an administrator,
use this account to create the ghost account,
delete logs and delete the first created admin
account.

Many of these attacker scenarios can be
realized by leveraging separate vulnerabilities
related to XSS, command injection, authentication
bypass, or logic flaws on the various systems.

How to prevent it (1 mitigation)
  1. Architecture and Design

    Ensure that the admin tool refreshes its model of the underlying OS on a regular basis, and note any inconsistencies with configuration files or other data sources that are expected to have the same data.

Source: MITRE CWE-1249

1 result · Clear filters · Feed

  • High 8.3

    NoteGen arbitrary OS command execution via Tauri shell:allow-execute for bash/python

    NoteGen before 0.32.0 grants the Tauri shell plugin shell:allow-execute capability for bash, python, and python3 with arbitrary arguments in the default desktop capabilities. JavaScript running in the application webview can therefore invoke plugin:shell|exec…