# Домашняя работа №9 (Задачи XML external entity (XXE) injection на portswigger)
###### tags: `Домашние задания Web Application Penetration Testing`
1) Задача: Exploiting XXE using external entities to retrieve files
В описании сказано, что по запросу "Check Stock" отрабатывает парсер XML. Проверим это.

Переходим в Burp и проверяем запрос там, для поиска уязвимости в XML запросе.

Мы знаем, что приложение уязвимо к XXE, поэтому просто добавим элемент DOCTYPE для обращения к файловой системе сервера.

Задача выполнена.
2) Задача: Exploiting XXE to perform SSRF attacks
В данной задаче мы будем использовать ту же XXE, но для реализации SSRF.
Итак, выполняем те же действия что и в предыдущей задаче, но добавим как рекомендуют в описании адрес эндпоинта.

Сразу не срабатывает, сервер отвечает, что не указан нужный путь, прописываем что он требует. В результате получается цепочка до пути admin.

Задача выполнена.
3) Задача: Blind XXE with out-of-band interaction
Переходим к следующему типу XXE слепые XXE.
Исходя из описания нужно будет использовать collaborator для решения.
Итак, приступим. Выполняем все действия как и ранее. И сразу запустим collaborator.

Предыдущий запрос не отрабатывает.
Используем такой же запрос как и ранее, но только добавим ссылку на наш клиент collaborator в запросе.
Не смотря на ошибку запросы мы видим в нашем collaborator.

Задача выполнена.
4) Задача: Blind XXE with out-of-band interaction via XML parameter entities
Данная задача аналогична предыдущей, но тут для обхода рекомендовано использовать сущности параметров XML.
Выполняем аналогичные предыдущей задаче действия.

Как видим стоит защита. Используем сущности.

Задача выполнена.