CVE-2020-8923 in Dartinfo

Summary

by MITRE

An improper HTML sanitization in Dart versions up to and including 2.7.1 and dev versions 2.8.0-dev.16.0, allows an attacker leveraging DOM Clobbering techniques to skip the sanitization and inject custom html/javascript (XSS). Mitigation: update your Dart SDK to 2.7.2, and 2.8.0-dev.17.0 for the dev version. If you cannot update, we recommend you review the way you use the affected APIs, and pay special attention to cases where user-provided data is used to populate DOM nodes. Consider using Element.innerText or Node.text to populate DOM elements.

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Analysis

by VulDB Data Team • 05/10/2025

The vulnerability identified as CVE-2020-8923 represents a critical security flaw in the Dart programming language SDK that affects versions up to 2.7.1 and development versions up to 2.8.0-dev.16.0. This issue stems from inadequate HTML sanitization mechanisms within the Dart runtime environment, creating a pathway for malicious actors to bypass security controls through DOM Clobbering techniques. The flaw specifically impacts applications that process user-provided content and render it within web interfaces, making it particularly dangerous in web applications where dynamic content generation is prevalent.

The technical implementation of this vulnerability exploits the improper handling of HTML content during sanitization processes. When Dart processes HTML content through its DOM manipulation APIs, the sanitization logic fails to properly validate or escape certain elements that can be manipulated through DOM Clobbering attacks. This technique allows attackers to manipulate DOM properties and attributes in ways that circumvent the intended sanitization checks, effectively enabling the injection of malicious HTML and JavaScript code. The vulnerability operates at the intersection of improper input validation and weak output escaping mechanisms, creating a window for cross-site scripting attacks that can compromise user sessions and execute unauthorized code.

The operational impact of CVE-2020-8923 extends beyond simple XSS exploitation, as it fundamentally undermines the security assumptions of applications relying on Dart's HTML processing capabilities. Attackers can leverage this vulnerability to steal session cookies, perform unauthorized actions on behalf of users, or redirect victims to malicious websites. The attack vector is particularly concerning because it requires minimal privileges to exploit and can be automated, making it attractive to threat actors. Applications using Dart's web frameworks or those that dynamically generate HTML content are at risk, with the potential for widespread compromise across multiple user sessions and data repositories.

Security professionals should consider this vulnerability in the context of established frameworks such as CWE-79, which classifies cross-site scripting as a fundamental weakness in web application security. The issue also aligns with ATT&CK technique T1203, which describes the use of web application vulnerabilities for privilege escalation and data exfiltration. Organizations must prioritize updating their Dart SDK installations to versions 2.7.2 and 2.8.0-dev.17.0 to mitigate the risk. When immediate updates are not feasible, administrators should implement defensive measures including thorough review of API usage patterns, particularly those involving user input processing. The recommended mitigation strategy emphasizes the use of safer text manipulation methods such as Element.innerText or Node.text, which bypass the vulnerable HTML parsing pathways. Additionally, organizations should conduct comprehensive security audits of their Dart applications to identify all potential entry points where user data might be processed through vulnerable APIs, ensuring complete remediation of the identified vulnerability.

Responsible

Google Inc.

Reservation

02/12/2020

Moderation

accepted

CPE

ready

EPSS

0.00316

KEV

no

Activities

very low

Sources

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!