Обмен технологиями

[Сетевая безопасность] Функции Microsoft Azure SSRF

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

репост без согласия запрещен.

Каталог статей

текст

Функции Azure — это служба бессерверных вычислений, которая по запросу предоставляет всю необходимую инфраструктуру и ресурсы для запуска приложений. Его можно использовать для создания веб-API, реагирования на изменения базы данных, обработки потоков данных Интернета вещей, управления очередями сообщений и других целей.

Сначала создайте приложение-функцию:

имг

Создать код функции:

имг

После нажатия «Функции» перейдите на следующую страницу для настройки:

имг

Введите название образца и выберите шаблон:

имг

После создания приложения-функции выберите «Код + Тест». Клиент отправляет различные запросы, включая два специальных запроса:

1、https://functions.azure.com/api/passthrough 
2、https://functions.azure.com/api/debug
  • 1
  • 2

имг

При поиске в библиотеке GitHub код ключа выглядит следующим образом:

имг

Как видно из пакета запроса, соответствующего этому коду, браузер отправляет нашу настроенную функцию (BlobTrigger1.dat) отправил GET-запрос:

имг

При прочтении документации следующие два параметра используются для аутентификации на function.azure.com и необходимы для выполнения запроса:

имг

Это означает, что после удаления этих двух заголовков мы можем отправить любой запрос.

Затем мы изменили URL-адрес и получили адрес сервера функций Azure:

имг

Отправив запрос на https://www.nba.com, ответ будет следующим:

имг

Оказывается, приложение-функция используется для выполнения нашего запроса.

При этом информация об IP-адресе получается путем отправки запроса на https://www.infobyip.com/, а отображаемый User-Agent — axios/0.21.4, поэтому функция представляет собой Node JS-модуль:

имг

После выяснения функций и характеристик программы-функции вы можете использовать ее в дальнейшем.

эксплуатировать

Пытался получить доступ к службе IMDS, но не смог.но может перечислить потенциально открытый внутренний порт41692

имг

В результате дальнейшего перебора было подтверждено, что внутренняя конечная точка достижима, как показано ниже:

имг
]

В результате дальнейшего перебора было подтверждено, что внутренняя конечная точка достижима, как показано ниже:

имг

Первоисточник: https://orca.security/resources/blog/ssrf-vulnerabilities-azure-functions-app/