この製品は、管理者が基礎となるオペレーティング・システムの一部を管理するためのアプリケーションを提供するが、そのアプリケーションは、OSに存在する関連するすべてのエンティティやリソースを正確に識別していない。つまり、OSの状態に関するアプリケーションのモデルは、OSの実際の状態と矛盾している。
多くの製品は、基盤となるオペレーティング・システムを管理するためのウェブベースのアプリケーションやその他のインターフェースを提供している。これは、クラウド、ネットワーク・アクセス・デバイス、ホーム・ネットワーク、その他のシステムで一般的だ。 管理ツールがOSの中身(ユーザー・アカウントなど)を正確に表していない場合、管理者は、そうでなければ気づくはずの不審な活動に気づかない可能性がある。
例えば、多数のシステムが管理制御にウェブ
フロントエンドを利用している。また
また、様々な権限を持つユーザーを追加、変更、削除する機能も提供している。
を追加、変更、削除する機能も提供している。
システムの機能に関連する。 潜在的なアーキテクチャ上の弱点
ウェブ・インターフェイスに反映されるユーザー情報が
ウェブ・インターフェースに反映されるユーザー情報が、基礎となる
オペレーティング・システムのユーザーを反映しない。 多くのウェブUIやREST APIは、認証のために基礎となるオペレーティング・システムを使用する。
を認証に使用する。
システムのロジックはまた、設定ファイル内のユーザー能力の追加セットを追跡することもある。
システムのロジックは、設定ファイル
システムのロジックは、認証機能のために、設定ファイルやデータセット内の追加のユーザー能力を追跡することもある。その場合
UIやREST APIのインターフェイスシステムのユーザー情報と
UIまたはREST APIのインターフェイスシステムのユーザー情報と、オペレーティング・システムのユーザー・リストとの間に不一致がある場合、このような不一致が発生する可能性がある。
オペレーティング・システムのユーザー・リストとの間に不一致がある場合、これはシステムに弱点をもたらす可能性がある。
システムに弱点をもたらす可能性がある。 例えば
攻撃者がOSを侵害し、新しいユーザーアカウント(「ゴースト」アカウント)を追加した場合
例えば、攻撃者がOSを侵害し、新しいユーザー・アカウント(「ゴースト」アカウント)を追加した場合、管理ツールが新しいユーザー・アカウントをリストアップしなければ、攻撃者は検知を逃れることができる。
管理ツールが新しく追加されたアカウント
アカウントをリストアップしなければ、検知を逃れることができる。
この矛盾は、いくつかの方法で悪用される可能性がある:
このような攻撃者のシナリオの多くは、以下のような別々の脆弱性を利用することで実現できる。
これらの攻撃者のシナリオの多くは、XSS
XSS、コマンド・インジェクション、認証バイパス
このような攻撃者のシナリオの多くは、様々なシステム上のXSS、コマンドインジェクション、認証バイパス、ロジックの欠陥に関連する個別の脆弱性を利用することで実現できる。
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.
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:
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.