• 036 760 04 51
  • [email protected]
RootsecRootsecRootsecRootsec
  • Platform
  • Diensten
    • Penetratietesten
    • Endpoint Protection
    • Security Assessment
    • Vulnerability Assessment
    • Vulnerability Management
  • Kennis
    • Media
    • Blogs
    • Whitepapers
  • Producten
    • Cynet
    • Tenable.io
  • Rootsec
    • Over ons
    • Vacatures
  • Contact
  • Er wordt steeds meer thuisgewerkt, hoe zorg ik ervoor dat al onze medewerkers ook thuis veilig zijn?
  • Er wordt op de werkvloer steeds meer in de Cloud gewerkt, hoe zorg ik ervoor dat dit goed beveiligd is en blijft?
  • Ik wil graag snel inzichtelijk wat de huidige staat van mijn IT-security is. Welke dienst raden jullie aan?
  • Wij twijfelen over welke stappen we moeten zetten op het gebied van IT-security. Kunnen jullie ons hierbij helpen?
  • Ik wil dat jullie mijn systeem tot op de bodem onderzoeken en aanvallen om kwetsbaarheden te ontdekken. Welke dienst past hierbij?
✕
24/7 Incident Response
  • Security Assessment
  • Cynet Endpoint Protection
  • Vulnerability Assessment
  • Penetration testing

Zoekt u misschien naar deze vragen?

  • Er wordt steeds meer thuisgewerkt, hoe zorg ik ervoor dat al onze medewerkers ook thuis veilig zijn?
  • Er wordt op de werkvloer steeds meer in de Cloud gewerkt, hoe zorg ik ervoor dat dit goed beveiligd is en blijft?
  • Ik wil graag snel inzichtelijk wat de huidige staat van mijn IT-security is. Welke dienst raden jullie aan?
  • Wij twijfelen over welke stappen we moeten zetten op het gebied van IT-security. Kunnen jullie ons hierbij helpen?
  • Ik wil dat jullie mijn systeem tot op de bodem onderzoeken en aanvallen om kwetsbaarheden te ontdekken. Welke dienst past hierbij?

Rootsec legt uit | Wat zijn XML External Entities (XXE)?

  • Home
  • Awareness
  • Rootsec legt uit | Wat zijn XML External Entities (XXE)?
Rootsec legt uit
Rootsec legt uit | Wat is Sensitive Data Exposure?
1 december 2020
Rootsec legt uit
Rootsec legt uit | Wat is Broken Access Control?
17 december 2020
Published by Paul Franken on 9 december 2020
Categories
  • Awareness
  • Dreigingen
  • Endpoint Protection
  • Onderzoek
  • Pentesting
  • Phishing
  • Security
Tags
Rootsec legt uit

Alweer de vierde in een reeks van 10 artikelen waarin we de OWASP top-10 ontleden. In tegenstelling tot andere websites doen we dit in oer-Hollands- en simpel Nederlands. Het idee is dat iedereen na het lezen van dit korte artikel weet wat het is. Kortom, nerd-praat in Jip en Janneke taal. Vandaag kijken we naar XML External Entities. Hele mond vol, klopt. Maar wat is dit eigenlijk en waarom staat het 4e in de lijst?

Wat zijn XML External Entities (XXE)?

Om dit uit te leggen dienen we te beginnen met een stukje uitleg over ‘XML’. Dit staat voor ‘Extensible Markup Language’. Dit mag u voor het grootste deel weer vergeten, enkel het ‘language’ stukje is belangrijk. XML is namelijk een taal. En deze taal gebruikt elementen en attributen om gegevens te structureren. Laten we dit illustreren met een voorbeeld. Mensen maken al eeuwenlang documenten en hierbij wordt gebruik gemaakt van een opmaak. Deze opmaak definieert de structuur, betekenis en weergave van de informatie. In het geval van computers is opmaak uitgegroeid tot codeopmaak. Hierbij worden codes gebruikt om de structuur, de weergave en, in het geval van XML, de betekenis van gegevens te definiëren.  Kortom, XML is een taal die u niet hoeft te kennen en die u eigenlijk ook niet ziet, maar die er voor zorgt dat alles voor u leesbaar en begrijpelijk is. Kortom, het geeft betekenis.

Wat zijn XML External Entities?

Ook een online quiz bestaat uit XML

Maar wat zijn XML External Entities (XXE) dan? Nu dat we weten wat XML is kunnen we wat verder in de geschiedenis duiken. Zo is XML een jaar of tien geleden de standaard geworden en sindsdien is, zoals te verwachten was, het gebruik flink toegenomen. Hierdoor is het ook voor de cybercriminelen een stuk interessanter geworden. En een van die kwetsbaarheden die XML met zich meebrengt zijn dus XML External Entities, ofwel XXE.

Helaas heb ik slechts nieuws voor u, want het wordt nog technischer. Het is namelijk mogelijk om in XML via de syntax (in dit geval is de syntax een taalregel) <!ENTITY entity-name SYSTEM “URI/URL”> een eigen identiteit te creëren. Dit kan op twee manieren gedaan worden, via een internal entity in het document zelf. Of door een extern document te importeren via een URL waarin deze definitie staat, een external entity. En dit laatste geval dat is waar de kwetsbaarheid XXE gebruik van maakt.

Bij een typische XXE-aanval wordt op de plaats van de URL een XML bestand meegegeven waarin kwaadwillige code staat. In plaats van nare code kan het echter ook een verwijzing zijn naar een bepaald bestandspad. Dus bijvoorbeeld “c://users//admin/pass.docx” om toegang te krijgen tot bepaalde waardevolle data. Kortom, er zijn nogal wat opties.

Wat zijn de gevolgen van een XXE-aanval?

Dat ligt er echt maar net aan waar de aanvaller naar op zoek is. Er zijn namelijk vele mogelijkheden om deze kwetsbaarheid te benutten. Enkele algemene gevolgen van XXE-exploitatie zijn:

  • Het vergaren van (gevoelige) data
  • De gehele interne structuur van je bedrijf wordt blootgesteld
  • Een Ddos-aanval
  • En veel meer andere aanvallen die via remote requests gedaan kunnen worden.

Beveiligen tegen een XML External Entities (XXE) aanval

Dit is waar we u het goede nieuws brengen. Deze kwetsbaarheid doet zich namelijk maar voor op éen specifieke plek. Dit maakt het in theorie heel gemakkelijk om deze dreiging permanent te verwijderen. Hoe dan? Nou door geen XML te gebruiken en over te schakelen naar een simpeler data format, zoals JSON. Maar wat nou als jouw applicatie of web-service vol zit met XML? Dan wordt het een lastiger verhaal. Het enige dat je dan kunt doen is het nemen van stappen ter preventie van een XXE. Denk hierbij aan XML-validatie, zodat niet zomaar ongecontroleerd alle XML geparsed (verwerkt) wordt.

Maakt u veel gebruik van XML voor uw applicatie of web-service en heeft u geen idee hoe het met de veiligheid hiervan gesteld is? Natuurlijk kunt u ook bij Rootsec terecht om dit eens te laten uitpluizen. Wij maken snel voor u inzichtelijk of er kwaadaardige XML-files aanwezig zijn en vertellen u precies wat u kunt doen om deze te verwijderen en om dit in de toekomst te voorkomen. Voor meer informatie verwijs ik u graag naar onze website of naar ons telefoonnummer 036 760 0451.

 

Share
0
Paul Franken
Paul Franken

Geef hackers geen kans

Laat uw systemen beveiligen door Rootsec

Neem Contact Op

Rootsec B.V.

Randstad 21 – 45,
1314BG Almere

                            036 760 04 51
                          [email protected]

                           Privacy  Voorwaarden

 

                      

           © 2023 Rootsec B.V.

Klachtenformulier Disclaimer

 

 

 

24/7 Incident Response