Az - PTA - Pass-through Authentication
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
From the docs: Azure Active Directory (Azure AD) パススルー認証は、ユーザーが同じパスワードを使用してオンプレミスおよびクラウドベースのアプリケーションにサインインできるようにします。この機能は、ユーザーにとってより良い体験を提供し、覚えるべきパスワードが1つ減るため、ITヘルプデスクのコストを削減します。ユーザーがAzure ADを使用してサインインすると、この機能はオンプレミスのActive Directoryに対して直接ユーザーのパスワードを検証します。
PTAではアイデンティティは同期されますが、パスワードは同期されません(PHSのように)。
認証はオンプレミスのADで検証され、クラウドとの通信はオンプレミスサーバーで実行される認証エージェントによって行われます(オンプレミスのDC上である必要はありません)。
ログインするために、ユーザーはAzure ADにリダイレクトされ、ユーザー名とパスワードを送信します。
資格情報は暗号化され、Azure ADのキューに設定されます。
オンプレミス認証エージェントがキューから資格情報を収集し、復号化します。このエージェントは**「パススルー認証エージェント」またはPTAエージェント**と呼ばれます。
エージェントはオンプレミスADに対して資格情報を検証し、応答をAzure ADに返します。応答が肯定的であれば、ユーザーのログインを完了します。
If an attacker compromises the PTA he can see the all credentials from the queue (in clear-text). He can also validate any credentials to the AzureAD (similar attack to Skeleton key).
Azure AD ConnectサーバーにPTA エージェントが実行されている状態で管理者アクセスがある場合、AADInternalsモジュールを使用して、入力されたすべてのパスワードを検証するバックドアを挿入できます(すべてのパスワードが認証に対して有効になります):
インストールが失敗した場合、これはおそらくMicrosoft Visual C++ 2015 Redistributablesが不足しているためです。
次のcmdletを使用して、前のバックドアがインストールされたマシンでPTAエージェントに送信された平文のパスワードを見ることも可能です:
このバックドアは以下を行います:
隠しフォルダー C:\PTASpy
を作成します
PTASpy.dll
を C:\PTASpy
にコピーします
PTASpy.dll
を AzureADConnectAuthenticationAgentService
プロセスに注入します
AzureADConnectAuthenticationAgent サービスが再起動されると、PTASpy は「アンロード」され、再インストールする必要があります。
クラウドで GA 権限 を取得した後、攻撃者が制御するマシン に設定することで 新しい PTA エージェントを登録 することが可能です。エージェントが 設定 されると、以前の 手順を 繰り返して 任意のパスワードを使用して認証 し、さらに パスワードを平文で取得 することができます。
PTA を使用してシームレス SSO を利用することが可能ですが、他の悪用に対して脆弱です。詳細は以下を確認してください:
AWS ハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCP ハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)