The XML external entities (XXE) attack targets applications that parse XML input. This attack occurs when XML input containing a reference to an external entity is processed by a weakly configured XML parser. It takes advantage of a feature of XML that allows you to build documents dynamically at the time of processing, using an XML message that can provide data explicitly or by pointing to an URI where the data exists.
In the XXE attack technique, external entities may replace the entity value with malicious data; alternately, referrals may compromise the security of the data that the server/XML application has access to. This attack can lead to the disclosure of confidential data, denial of service, server-side request forgery, port scanning from the perspective of the machine where the parser is located, and other system impacts.