Доброго времени суток! Сегодня я хочу презентовать непопулярную инъекцию как ESII (Edge Side Include Injection)
Данную атаку можно реализовать тегом в HTML <esi> (Edge Side Includes). Так же, это новый вид атаки на некоторые кэш-серверы.
ТЕОРИЯ
Что же такое ESI, и как его используют?
Взгляните на простенькую веб-страницу:
На данной странице, есть 2 типа элементов:
То есть, теги ESI используются для указания обратного прокси (или кэш-сервера) для получения дополнительной информации о веб-странице, для которой шаблон уже кэширован.
Эта информация может поступать с другого сервера перед его обслуживанием клиенту. Это позволяет полностью кэшировать страницы, содержащие динамический элементы.
Пример:
------------>
По этому, мы можем экплуатировать это вот так:
<esi:vars>$(VARIABLE_NAME)</esi:vars>
И таким образом мы можем узнать любую информацию:
$(HTTP_USER_AGENT)------->Mozilla/5,0 (X11;[…]
$(QUERY_STRING)--------------->city=Moscow&fromat=…
$(HTTP_COOKIE)----------------->_ga=[…]&_ulma=[...]
Пример:
Стоит заметить, что иногда, что-то может блокироваться, как например HTTP_COOKIE{PHPSSSSID}, по этому стоит искать другие варианты:
ПРАКТИКА
Пример использования ESII (Edge Side Include Injection)
Отправляем «фотографию»:
Фотография прогружается у жертвы, и мы получаем куки
Вставляем в любой редактор куки:
И захватываем сессию
СТОИТ ЗАМЕТИТЬ!
К сожалению, мы таким образом можем захватывать только HTTPOnly cookie
Возоможна так же атака с использованием JS:
Но для этого, js файл должен находиться на сервере, что не всегда удобно.
jquery.js имеет следующее содержание:
Получаем куки:
И в итоге получаем ссылку с сессией
ЗАЩИТА
На данный момент ESII распознают такие инструменты:
Burp Upload Scanner
Вся информация была взята с сайта компании
И с видео, где выступал официальный представитель этой же компании. К видео прилагаются файлы с самого выступления -
П.С. Во время перевода нашел интересную
Данную атаку можно реализовать тегом в HTML <esi> (Edge Side Includes). Так же, это новый вид атаки на некоторые кэш-серверы.
Статья для участия в конкурсе Тестирование Веб-Приложений на проникновение
ТЕОРИЯ
Что же такое ESI, и как его используют?
Взгляните на простенькую веб-страницу:
На данной странице, есть 2 типа элементов:
То есть, теги ESI используются для указания обратного прокси (или кэш-сервера) для получения дополнительной информации о веб-странице, для которой шаблон уже кэширован.
Эта информация может поступать с другого сервера перед его обслуживанием клиенту. Это позволяет полностью кэшировать страницы, содержащие динамический элементы.
Пример:
По этому, мы можем экплуатировать это вот так:
<esi:vars>$(VARIABLE_NAME)</esi:vars>
И таким образом мы можем узнать любую информацию:
$(HTTP_USER_AGENT)------->Mozilla/5,0 (X11;[…]
$(QUERY_STRING)--------------->city=Moscow&fromat=…
$(HTTP_COOKIE)----------------->_ga=[…]&_ulma=[...]
Пример:
Стоит заметить, что иногда, что-то может блокироваться, как например HTTP_COOKIE{PHPSSSSID}, по этому стоит искать другие варианты:
ПРАКТИКА
Пример использования ESII (Edge Side Include Injection)
Отправляем «фотографию»:
Фотография прогружается у жертвы, и мы получаем куки
Вставляем в любой редактор куки:
И захватываем сессию
СТОИТ ЗАМЕТИТЬ!
К сожалению, мы таким образом можем захватывать только HTTPOnly cookie
Возоможна так же атака с использованием JS:
Но для этого, js файл должен находиться на сервере, что не всегда удобно.
jquery.js имеет следующее содержание:
Получаем куки:
И в итоге получаем ссылку с сессией
ЗАЩИТА
На данный момент ESII распознают такие инструменты:
Ссылка скрыта от гостей
Burp Upload Scanner
Ссылка скрыта от гостей
Вся информация была взята с сайта компании
Ссылка скрыта от гостей
.И с видео, где выступал официальный представитель этой же компании. К видео прилагаются файлы с самого выступления -
Ссылка скрыта от гостей
П.С. Во время перевода нашел интересную
Ссылка скрыта от гостей
по поводу этой иньеции