Дополнительные главы практической безопасности (2021)/XXE
< Дополнительные главы практической безопасности (2021)
Перейти к навигации
Перейти к поиску
Версия от 21:00, 1 марта 2021; Asterite (обсуждение | вклад)
Почему эксплуатация XXE out-of-band выглядит именно так
Итак, нам нужно как то отправить себе значение сущности (украденные с помощью внешней сущности данные) в условиях когда сервер нам в ответ никакие данные не возвращает. Для этого можно использовать parameter entitiy - сущность, значение которой можно подставлять в DTD, она тоже может быть внешней. Идея такая: считать данные в parameter entitity и подставить её значение в объявление другой внешней сущности, чтобы это значение стало частью урла. Тогда, когда эта другая сущность будет резолвиться, на этот урл сделается запрос и как его часть пошлются и украденные данные. Если урл ведёт на наш сервер, мы их получим.