GWS - Admin Directory Sync
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)
GCDSを使用してユーザーを同期するこの方法の主な違いは、GCDSは手動でダウンロードして実行する必要があるバイナリを使用するのに対し、Admin Directory Syncはサーバーレスで、Googleによって管理されていることです。https://admin.google.com/ac/sync/externaldirectoriesで利用可能です。
この執筆時点で、このサービスはベータ版であり、2種類の同期をサポートしています:Active DirectoryからとAzure Entra IDから:
Active Directory: これを設定するには、GoogleにあなたのActive Directory環境へのアクセスを許可する必要があります。GoogleはGCPネットワーク(VPCコネクタ経由)にのみアクセスできるため、コネクタを作成し、そのコネクタからADを利用可能にする必要があります。GCPネットワーク内のVMに配置するか、Cloud VPNまたはCloud Interconnectを使用します。その後、ディレクトリに対する読み取りアクセスを持つアカウントの資格情報と、LDAPS経由で連絡するための証明書を提供する必要があります。
Azure Entra ID: これを構成するには、ポップアップで表示されるGoogleの指示に従って、読み取りアクセスを持つユーザーでAzureにログインするだけです。GoogleはEntra IDに対する読み取りアクセスを持つトークンを保持します。
正しく構成されると、両方のオプションはWorkspaceにユーザーとグループを同期することを可能にしますが、WorkspaceからADまたはEntraIDにユーザーとグループを構成することはできません。
この同期中に許可される他のオプションは次のとおりです:
新しいユーザーにログインするためのメールを送信
彼らのメールアドレスをWorkspaceで使用されているものに自動的に変更します。したがって、Workspaceが@hacktricks.xyz
を使用し、EntraIDユーザーが@carloshacktricks.onmicrosoft.com
を使用している場合、@hacktricks.xyz
がアカウント内で作成されたユーザーに使用されます。
同期されるユーザーを含むグループを選択します。
同期するグループを選択し、Workspaceに作成します(またはすべてのグループを同期するように指示します)。
ADまたはEntraIDを侵害することができれば、Google Workspaceと同期されるユーザーとグループを完全に制御できます。 ただし、Workspaceでユーザーが使用しているパスワードは同じである可能性もあれば、そうでない可能性もあります。
同期が行われると、ADからすべてのユーザーを同期するか、特定のOUからのみ同期するか、またはEntraIDの特定のグループのメンバーのみを同期する可能性があります。これは、同期されたユーザーを攻撃するためには、まずどのユーザーが同期されているかを特定する必要があることを意味します。
ユーザーはADまたはEntraIDからパスワードを再利用している可能性がありますが、これはユーザーのパスワードを侵害してログインする必要があることを意味します。
ユーザーのメールにアクセスできる場合、既存のユーザーのWorkspaceパスワードを変更するか、新しいユーザーを作成し、それが同期されるのを待ってアカウントを設定できます。
Workspace内のユーザーにアクセスすると、デフォルトでいくつかの権限が付与される可能性があります。
最初にどのグループが同期されているかを特定する必要があります。すべてのグループが同期されている可能性があります(Workspaceはこれを許可しています)。
グループとメンバーシップがWorkspaceにインポートされても、ユーザー同期で同期されていないユーザーは、グループ同期中に作成されません。たとえ彼らが同期されたグループのメンバーであってもです。
AzureからのどのグループがWorkspaceまたはGCPで権限を割り当てられているかを知っていれば、侵害されたユーザー(または新しく作成されたユーザー)をそのグループに追加し、その権限を取得できます。
Workspace内の既存の特権グループを悪用する別のオプションがあります。たとえば、グループgcp-organization-admins@<workspace.email>
は通常、GCPに対して高い権限を持っています。
たとえば、EntraIDからWorkspaceへの同期がインポートされたオブジェクトのドメインをWorkspaceのメールに置き換えるように構成されている場合、攻撃者はEntraIDにグループgcp-organization-admins@<entraid.email>
を作成し、そのグループにユーザーを追加し、すべてのグループの同期が行われるのを待つことができます。
ユーザーはグループgcp-organization-admins@<workspace.email>
に追加され、GCPでの権限が昇格します。
Workspaceは、ユーザーとグループを同期するためにADまたはEntraIDに対する読み取り専用アクセスの資格情報を必要とします。したがって、Google Workspaceを悪用してADまたはEntraIDに変更を加えることはできません。したがって、現時点ではこれは不可能です。
また、GoogleがADの資格情報やEntraIDトークンをどこに保存しているかはわからず、同期を再構成してもそれらを回復することはできません(ウェブフォームには表示されず、再度提供する必要があります)。ただし、ウェブからは現在の機能を悪用してユーザーとグループをリストすることが可能かもしれません。
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)