Created
December 12, 2018 06:33
-
-
Save cosminpopescu14/9399465abec9fa28c114747b589cd2eb to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Xml; | |
using System.Xml.Linq; | |
namespace ConsoleApp22 | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
XmlReaderSettings settings = new XmlReaderSettings | |
{ | |
DtdProcessing = DtdProcessing.Parse //this will REALYY parse xml file. https://www.owasp.org/index.php/XML_External_Entity_(XXE)_Processing | |
}; | |
XmlReader reader = XmlReader.Create("xml.xml", settings); | |
reader.MoveToContent(); | |
while (reader.Read()) | |
{ | |
switch (reader.NodeType) | |
{ | |
case XmlNodeType.Element: | |
Console.Write("<{0}>", reader.Name); | |
break; | |
case XmlNodeType.Text: | |
Console.Write(reader.Value); | |
break; | |
case XmlNodeType.CDATA: | |
Console.Write("<![CDATA[{0}]]>", reader.Value); | |
break; | |
case XmlNodeType.ProcessingInstruction: | |
Console.Write("<?{0} {1}?>", reader.Name, reader.Value); | |
break; | |
case XmlNodeType.Comment: | |
Console.Write("<!--{0}-->", reader.Value); | |
break; | |
case XmlNodeType.XmlDeclaration: | |
Console.Write("<?xml version='1.0'?>"); | |
break; | |
case XmlNodeType.Document: | |
break; | |
case XmlNodeType.DocumentType: | |
Console.Write("<!DOCTYPE {0} [{1}]", reader.Name, reader.Value); | |
break; | |
case XmlNodeType.EntityReference: | |
Console.Write(reader.Name); | |
break; | |
case XmlNodeType.EndElement: | |
Console.Write("</{0}>", reader.Name); | |
break; | |
} | |
} | |
Console.ReadLine(); | |
} | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version='1.0' encoding='utf-8'?> | |
<!DOCTYPE test [ | |
<!ENTITY file SYSTEM 'file:///c:/xampp/htdocs/test.txt'> ]> | |
<test> | |
<x>&file;</x> | |
</test> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
https://www.owasp.org/index.php/XML_External_Entity_(XXE)_Processing