> ## Documentation Index
> Fetch the complete documentation index at: https://docs.codeant.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Saxreader xmlreader constructor

<AccordionGroup>
  <Accordion title="saxreader-xmlreader-constructor">
    The application is using an XML parser that has not been safely configured. This might lead to XML External Entity (XXE) vulnerabilities when parsing user-controlled input. An attacker can include document type definitions (DTDs) which can interact with internal or external hosts. XXE can lead to other vulnerabilities, such as Local File Inclusion (LFI), Remote Code Execution (RCE), and Server-side request forgery (SSRF), depending on the application configuration. An attacker can also use DTDs to expand recursively, leading to a Denial-of-Service (DoS) attack, also known as a Billion Laughs Attack. The constructor for SAXReader has an optional XMLReader argument. However, configuring this XMLReader before using it in the constructor has no effect on the security of the SAXReader. The SAXReader itself needs to be configured to prevent XXE vulnerabilities. For more information, see: [Java XXE prevention](https://semgrep.dev/docs/cheat-sheets/java-xxe/)<br />**Likelihood**: MEDIUM<br />**Confidence**: MEDIUM<br />**CWE**: <br />- CWE-611: Improper Restriction of XML External Entity Reference
    <br />- CWE-776: Improper Restriction of Recursive Entity References in DTDs ('XML Entity Expansion')
    <br />**OWASP**: <br />- A04:2017 - XML External Entities (XXE)
    <br />- A05:2021 - Security Misconfiguration
  </Accordion>
</AccordionGroup>
