Variant · Low-Medium

CWE-827: Improper Control of Document Type Definition

The product does not restrict a reference to a Document Type Definition (DTD) to the intended control sphere. This might allow attackers to reference arbitrary DTDs, possibly causing the product to ex...

CWE-827 · Variant Level ·1 CVEs

Description

The product does not restrict a reference to a Document Type Definition (DTD) to the intended control sphere. This might allow attackers to reference arbitrary DTDs, possibly causing the product to expose files, consume excessive system resources, or execute arbitrary http requests on behalf of the attacker.

As DTDs are processed, they might try to read or include files on the machine performing the parsing. If an attacker is able to control the DTD, then the attacker might be able to specify sensitive resources or requests or provide malicious content. For example, the SOAP specification prohibits SOAP messages from containing DTDs.

Potential Impact

Confidentiality

Read Files or Directories

Availability

DoS: Resource Consumption (CPU), DoS: Resource Consumption (Memory)

Integrity, Confidentiality, Availability, Access Control

Execute Unauthorized Code or Commands, Gain Privileges or Assume Identity

Real-World CVE Examples

CVE IDDescription
CVE-2010-2076Product does not properly reject DTDs in SOAP messages, which allows remote attackers to read arbitrary files, send HTTP requests to intranet servers, or cause a denial of service.

Frequently Asked Questions

What is CWE-827?

CWE-827 (Improper Control of Document Type Definition) is a software weakness identified by MITRE's Common Weakness Enumeration. It is classified as a Variant-level weakness. The product does not restrict a reference to a Document Type Definition (DTD) to the intended control sphere. This might allow attackers to reference arbitrary DTDs, possibly causing the product to ex...

How can CWE-827 be exploited?

Attackers can exploit CWE-827 (Improper Control of Document Type Definition) to read files or directories. This weakness is typically introduced during the Implementation phase of software development.

How do I prevent CWE-827?

Follow secure coding practices, conduct code reviews, and use automated security testing tools (SAST/DAST) to detect this weakness early in the development lifecycle.

What is the severity of CWE-827?

CWE-827 is classified as a Variant-level weakness (Low-Medium abstraction). It has been observed in 1 real-world CVEs.