Exploiting blind XXE to retrieve data via error messages
Link: https://portswigger.net/web-security/xxe/blind/lab-xxe-with-data-retrieval-via-error-messages
Last updated
Link: https://portswigger.net/web-security/xxe/blind/lab-xxe-with-data-retrieval-via-error-messages
Last updated
Description:
This lab has a "Check stock" feature that parses XML input but does not display the result.
To solve the lab, use an external DTD to trigger an error message that displays the contents of the /etc/passwd
file.
The lab contains a link to an exploit server on a different domain where you can host your malicious DTD.
Proof of concept:
Analisa web target
Dari hasil analisa, didapati terdapat fitur Check stock
yang menggunakan XML pada request body. Hal tersebut memungkinkan untuk dilakukan XXE Injection
Seperti yang telah dijelaskan oleh judul lab, maka cari tahu payload basic XXE Error Based menggunakan remote DTD. Didapatkan payload seperti gambar dibawah atau bisa di akses di
Pada exploit server, masukan payload untuk di file DTDnya seperti gambar dibawah
Jika sudah, pada endpoint Check stock
, gunakan payload XXE Injection untuk mentrigger file DTD yang telah dibuat pada server exploit dengan mengarahkan ke URL server exploit. Jika sudah kirim request tersebut, maka data /etc/passwd
pada server target berhasil diakses secara tidak sah dan dengan demikian tantangan lab ini berhasil diselesaikan
Thanks, Stay Ethical & Happy Hacking! 🍻