Task 5:
**https://portswigger.net/web-security/all-labs#xml-external-entity-xxe-injection**
XML File (Extensible Markup Language) (Ngôn ngữ đánh dấu mở rộng) đơn giản là các file văn bản thuần túy được mã hóa, dùng thẻ tùy chỉnh rồi được cấu trúc lại để mô tả nhằm hỗ trợ cho việc chuyển giao dữ liệu giữa các hệ thống hoặc các ứng dụng.
Đây là 1 đoạn code XML File cơ bản:
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book category="fiction">
<title lang="en">Harry Potter</title>
<author>J.K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
</bookstore>
Các cấu trúc được phân ra rất rõ ràng, đơn giản, cho phép người dùng tự do tạo ra các loại thẻ khác nhau rồi từ đó mô tả dữ liệu bên trong.
Đây là ví dụ rõ nhất mô tả sơ đồ cây của XML File:
XML File ngoài việc được dùng để mô tả dữ liệu và truyền dữ liệu giữa các hệ thống thì còn cho phép tạo ra bản vẽ hoàn thiện về dữ liệu.
DTD (Document Type Definition) trong XML có tác dụng giúp định nghĩa cấu trúc và các quy tắc của tài liệu XML nó xác định cách mà các phần tử, thuộc tính, thực thể và ký hiệu trong tài liệu XML nên được sắp xếp và kết nối với nhau nhằm hợp độ validity của XML.
DTD được chia làm 2 loại là External và Internal: