CWE-451: User Interface (UI) Misrepresentation of Critical Information
The user interface (UI) does not properly represent critical information to the user, allowing the information - or its source - to be obscured or spoofed. This is often a component in phishing attacks.
If an attacker can cause the UI to display erroneous data, or to otherwise convince the user to display information that appears to come from a trusted source, then the attacker could trick the user into performing the wrong action. This is often a component in phishing attacks, but other kinds of problems exist. For example, if the UI is used to monitor the security state of a system or network, then omitting or obscuring an important indicator could prevent the user from detecting and reacting to a security-critical event. UI misrepresentation can take many forms: Incorrect indicator: incorrect information is displayed, which prevents the user from understanding the true state of the product or the environment the product is monitoring, especially of potentially-dangerous conditions or operations. This can be broken down into several different subtypes. Overlay: an area of the display is intended to give critical information, but another process can modify the display by overlaying another element on top of it. The user is not interacting with the expected portion of the user interface. This is the problem that enables clickjacking attacks, although many other types of attacks exist that involve overlay. Icon manipulation: the wrong icon, or the wrong color indicator, can be influenced (such as making a dangerous .EXE executable look like a harmless .GIF) Timing: the product is performing a state transition or context switch that is presented to the user with an indicator, but a race condition can cause the wrong indicator to be used before the product has fully switched context. The race window could be extended indefinitely if the attacker can trigger an error. Visual truncation: important information could be truncated from the display, such as a long filename with a dangerous extension that is not displayed in the GUI because the malicious portion is truncated. The use of excessive whitespace can also cause truncation, or place the potentially-dangerous indicator outside of the user's field of view (e.g. "filename.txt .exe"). A different type of truncation can occur when a portion of the information is removed due to reasons other than length, such as the accidental insertion of an end-of-input marker in the middle of an input, such as a NUL byte in a C-style string. Visual distinction: visual information might be presented in a way that makes it difficult for the user to quickly and correctly distinguish between critical and unimportant segments of the display. Homographs: letters from different character sets, fonts, or languages can appear very similar (i.e. may be visually equivalent) in a way that causes the human user to misread the text (for example, to conduct phishing attacks to trick a user into visiting a malicious web site with a visually-similar name as a trusted site). This can be regarded as a type of visual distinction issue.
Consequences
- Non-Repudiation, Access Control: Hide Activities, Bypass Protection Mechanism
How to prevent it
- Implementation: Perform data validation (e.g. syntax, length, etc.) before interpreting the data.
- Architecture and Design: Create a strategy for presenting information, and plan for how to display unusual characters.
Recent advisories
- GHSA-q84f-53jg-9ppm — better-auth: Device login approval does not show the requesting client or permissions
- GHSA-v3wm-qf9p-c549 — Symfony: HtmlSanitizer URL Parser Deny Gates Underinclusive: Percent-Encoded BiDi Marks and Unicode Whitespace Bypass Visual-Spoofing Defense
- GHSA-xww8-gqvh-92x9 — OpenClaw: Exec approval display truncation could hide the command being approved
- GHSA-h5vq-qfcg-4m6p — Symfony's HtmlSanitizer URL Attributes Pass Through BiDi Override Characters → Visual href Spoofing
- GHSA-rw39-5899-8mxp — OpenClaw: Node-host approvals could show misleading shell payloads instead of the executed argv
- GHSA-7q2j-c4q5-rm27 — OpenClaw macOS deep link confirmation truncation can conceal executed agent message
- DRUPAL-CORE-2025-007 — Drupal core allows Content Spoofing
- GHSA-m3r7-8gw7-qwvc — thorsten/phpmyfaq Unintended File Download Triggered by Embedded Frames
- CVE-2024-43461 — Windows MSHTML Platform Spoofing Vulnerability
- CVE-2024-38112 — Windows MSHTML Platform Spoofing Vulnerability
- GHSA-fmvm-x8mv-47mj — Improper CSP in Image Optimization API for Next.js versions between 10.0.0 and 12.1.0
MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.
Check your repos with MergeHarbor