Exploiting XXE using external entities to retrieve files
Link: https://portswigger.net/web-security/xxe/lab-exploiting-xxe-to-retrieve-files
Description:
This lab has a "Check stock" feature that parses XML input and returns any unexpected values in the response.
To solve the lab, inject an XML external entity to retrieve the contents of the /etc/passwd file.
Proof of concept:
Analisa web target

Dari hasil analisa didapati fitur
Check stockuntuk melihat ketersediaan produk. Dan ketika dilihat request yang diberikan ketika melakukan pengecekan stok tersebut, request tersebut menggunakan XML pada body requestnya
Karena menggunakan XML, ada kemungkinan dapat dilakukan XML Injection atau XXE Injection. Untuk memastikannya, tambahkan payload XXE pada body request dan panggil variabel
entpada dataproductIdkarena output request endpoint tersebut berasal dari dataproductId. Jika telah dilakukan penambahan dan perubahan pada XML yang ada, maka akan terlihat seperti berikut

Kirim request tersebut, dan dengan menggunakan XML berhasil membaca atau membuka file yang berada pada server target


Thanks, Stay Ethical & Happy Hacking! 🍻
Last updated