Az - PTA - Pass-through Authentication

Підтримайте HackTricks

Основна інформація

З документації: Azure Active Directory (Azure AD) Pass-through Authentication дозволяє вашим користувачам входити в обидва додатки, що знаходяться на місці та в хмарі, використовуючи ті ж самі паролі. Ця функція забезпечує вашим користувачам кращий досвід - один пароль менше для запам'ятовування, і знижує витрати на IT-допомогу, оскільки ваші користувачі менш ймовірно забудуть, як увійти. Коли користувачі входять за допомогою Azure AD, ця функція перевіряє паролі користувачів безпосередньо проти вашого локального Active Directory.

У PTA ідентичності синхронізуються, але паролі не синхронізуються, як у PHS.

Аутентифікація перевіряється в локальному AD, а зв'язок з хмарою здійснюється за допомогою агента аутентифікації, що працює на локальному сервері (не обов'язково на локальному DC).

Потік аутентифікації

  1. Для входу користувач перенаправляється до Azure AD, де він відправляє ім'я користувача та пароль

  2. Облікові дані шифруються і ставляться в чергу в Azure AD

  3. Локальний агент аутентифікації збирає облікові дані з черги та дешифрує їх. Цей агент називається "агент аутентифікації Pass-through" або PTA агент.

  4. Агент перевіряє облікові дані проти локального AD і відправляє відповідь назад до Azure AD, який, якщо відповідь позитивна, завершує вхід користувача.

Якщо зловмисник компрометує PTA, він може бачити всі облікові дані з черги (у відкритому тексті). Він також може перевіряти будь-які облікові дані до AzureAD (подібна атака до Skeleton key).

Локальний -> хмара

Якщо у вас є адміністративний доступ до Azure AD Connect сервера з PTA агентом, що працює, ви можете використовувати модуль AADInternals для вставки бекдора, який буде перевіряти ВСІ введені паролі (тобто всі паролі будуть дійсними для аутентифікації):

Install-AADIntPTASpy

Якщо встановлення не вдається, це, ймовірно, через відсутність Microsoft Visual C++ 2015 Redistributables.

Також можливо побачити паролі у відкритому тексті, надіслані до PTA agent за допомогою наступної команди на машині, де було встановлено попередній бекдор:

Get-AADIntPTASpyLog -DecodePasswords

Цей бекдор буде:

  • Створює приховану папку C:\PTASpy

  • Копіює PTASpy.dll до C:\PTASpy

  • Впроваджує PTASpy.dll в процес AzureADConnectAuthenticationAgentService

Коли служба AzureADConnectAuthenticationAgent перезапускається, PTASpy "вивантажується" і його потрібно встановити знову.

Cloud -> On-Prem

Після отримання GA привілеїв у хмарі, можливо зареєструвати новий PTA агент, встановивши його на машині, контрольованій атакуючим. Після налаштування агента ми можемо повторити попередні кроки для автентифікації з використанням будь-якого пароля і також отримати паролі у відкритому тексті.

Seamless SSO

Можливо використовувати Seamless SSO з PTA, що є вразливим до інших зловживань. Перевірте це в:

Az - Seamless SSO

References

Підтримайте HackTricks

Last updated