d4redevil
  • whoami
  • Active Directory
    • Enumeración
    • PowerShell para gestionar Active Directory
    • PowerView & SharpView
    • Ataques a Kerberos
    • Ataque de contraseñas
    • SMB Relay
    • Token Impersonation
    • Golden Ticket
    • LLMNR Poisoning
    • Mimikatz
    • Grupos privilegiados
    • LAPS
  • Linux
    • Enumeración
    • Escalación de privilegios
    • Transferencia de Archivos
  • Windows
    • Enumeración
    • Escalación de privilegios
      • SeImporsonate
      • SeDebugPrivilege
      • SeTakeOwnershipPrivilege
      • Backup Operators
      • DnsAdmins
    • Transferencia de Archivos
  • Scripting
    • Powershell
      • Introducción
      • Cmdlet
      • Alias
      • Comentarios
      • Comandos utiles
      • Variables
      • Tuberías (Pipes)
      • Operaciones
      • Estructuras Condicionales
  • OWASP TOP 10 y Vulnerabilidades Web
    • Inyecciones SQL
      • ¿Qué son las Inyecciones SQL?
      • Laboratorio
      • Inyecciones SQL basada en Uniones
      • Inyecciones SQL basadas en booleanos
      • Inyecciones SQL basadas en tiempo
  • Writeups
    • Hack The Box
      • Linux
        • 🟢Easy
        • 🟡Medium
          • Zipping
        • 🔴Hard
        • ⚫Insane
      • Windows
        • 🟢Easy
          • Devel
          • Grandpa
          • Granny
          • Jerry
          • Optimum
          • Legacy
          • Active
          • Sauna
        • 🟡Medium
        • 🔴Hard
        • ⚫Insane
    • The Hackers Labs
      • Linux
        • 🟢Principiante
          • Papaya
          • Can You Hack Me?
        • 🟡Avanzado
          • Runners
          • El Candidato
          • El Cliente
        • 🔴Profesional
        • ⚫Experto
          • ⚫Thlcppt_v16
      • Windows
        • 🟢Principiante
          • Cocido Andaluz
          • Ensalá Papas
        • 🟡Avanzado
        • 🔴Profesional
          • BlackGold
        • ⚫Experto
    • Dockerlabs
      • 🔵Muy fácil
      • 🟡Fácil
      • 🟠Medio
        • Database
      • 🔴Difícil
    • VulnHub
      • Linux
        • 🟢Easy
        • 🟡Medium
        • 🔴Hard
      • Windows
        • 🟢Easy
        • 🟡Medium
        • 🔴Hard
    • HackMyVM
      • Linux
        • 🟢Easy
        • 🟡Medium
        • 🔴Hard
        • ⚫Insane
      • Windows
        • 🟢Easy
        • 🟡Medium
        • 🔴Hard
        • ⚫Insane
  • Servicios Comunes
    • TCP
    • UDP
    • FTP (21)
    • SMB (445)
    • MySQL (3306)
    • MSSQL (1433)
  • Cheatsheet
    • Reconocimiento
    • Enumeración
    • Enumeración Web
    • Enumeración de CMS
    • Fuerza Bruta
    • Pivoting
    • Msfvenom
    • Utilidades
    • Fuerza bruta
    • Transferencia de Archivos
  • Contenedores
    • Docker
Con tecnología de GitBook
En esta página
  • Importar módulo de Active Directory
  • Sistema
  • Obtener Variables de entorno
  • Obtener funciones en el scope de Powershell
  • Obtener una lista de los modulos de PowerShell cargados
  • Listar comandos para un módulo específico
  • Obtener información del Dominio
  • Obtener ayuda de un cmd-let
  • Obtener el estado actual de Windows Defender
  • Obtener AppLockerPolicy
  • Usuarios
  • Crear un nuevo usuario
  • Filtrar por un nombre de usuario especifico
  • Filtrar por un usuario donde el campo ServicePrincipalName sea distinto de null
  • Crear un nuevo usuario asignado algunos atributos
  • Agregar un usuario a un grupo específico
  • Cambiar la contraseña de un usuario
  • Forzar el cambio de contraseña en el proximo inicio de sesión
  • Obtener los grupos del un usuario
  • Quitar un usuario de un grupo
  • Deshabilitar una cuenta de usuario
  • Habilitar una cuenta de usuario
  • Desbloquear una cuenta de usuario
  • Obtener información detallada de un usuario
  • Grupos
  • Crear un nuevo grupo
  • Listar los miembros de un grupo
  • Obtener información detallada de un grupo
  • Renombrar un grupo
  • Eliminar un grupo
  • Listar los grupos
  • Obtener una lista de todos los grupos en una OU específica
  • Obtener una lista de todos los miembros de un grupo
  • Trusts (Confianzas)
  • Verificar las relaciones de confianza de dominio
  • Computadoras
  • Obtener información detallada de un equipo
  • Obtener una lista de todos los equipos en un dominio
  • Obtener información detallada de un equipo específico
  • Crear un nuevo objeto de equipo en Active Directory
  • Cambiar el nombre de un equipo en Active Directory
  • Deshabilitar una cuenta de equipo
  • Habilitar una cuenta de equipo
  • Eliminar un objeto de equipo de Active Directory
  • Unidades Organizativas
  • Crear una nueva Unidad Organizativa
  • Mover un objeto (usuario, grupo, etc.) a una OU diferente
  • Obtener una lista de todas las unidades organizativas
  • Mover un equipo a una unidad organizativa diferente
  • GPO (Group Policy Object)
  • Obtener una lista de todas las GPO
  • Obtener una lista de todas las GPO en un dominio específico
  • Crear una nueva GPO
  • Cambiar el nombre de una GPO
  • Copiar una GPO
  • Eliminar una GPO
  • Obtener la configuración de una GPO
  • Establecer la configuración de una GPO
  • Enlace de una GPO a una OU específica
  • Desenlace de una GPO de una OU específica
  • Realizar una copia de seguridad y restauración de una GPO
  1. Active Directory

PowerShell para gestionar Active Directory

Listado de Cmdlets utiles para realizar operaciones y enumeración básica en Active Directory.

Importar módulo de Active Directory

Para utilizar la mayoria de los Cmdlets listados en este artículo, debemos importar en primer lugar el modulo ActiveDirectory.

Import-Module ActiveDirectory

Sistema

Obtener Variables de entorno

Get-ChildItem Env:

Obtener funciones en el scope de Powershell

Get-Command -CommandType Function

Obtener una lista de los modulos de PowerShell cargados

Get-Module

Listar comandos para un módulo específico

Get-Command -Module ActiveDirectory

Obtener información del Dominio

Get-ADDomain

Obtener ayuda de un cmd-let

Get-Help <cmd-let>

Obtener el estado actual de Windows Defender

Get-MpComputerStatus

Obtener AppLockerPolicy

Get-AppLockerPolicy -Effective | select -ExpandProperty RuleCollections

Usuarios

Crear un nuevo usuario

New-ADUser -Name "NombreUsuario" -SamAccountName "NombreUsuario" -UserPrincipalName "NombreUsuario@dominio.com" -AccountPassword (ConvertTo-SecureString -AsPlainText "Contraseña" -Force)

Filtrar por un nombre de usuario especifico

Get-ADUser -Filter * | Where-Object {$_.SamAccountName -eq "NombreUsuario"}

En este comando:

  • Get-ADUser -Filter * obtiene todos los usuarios de Active Directory.

  • Where-Object se utiliza para filtrar los resultados.

  • {} delimita el script de bloque para la condición de filtro.

  • $_ representa el objeto actual en el pipeline (en este caso, cada usuario obtenido por Get-ADUser).

  • .SamAccountName es la propiedad que contiene el nombre de usuario.

  • -eq "NombreUsuario" es el operador de igualdad para comparar el valor de la propiedad SamAccountName con el nombre de usuario que deseas buscar.

Filtrar por un usuario donde el campo ServicePrincipalName sea distinto de null

Get-ADUser -Filter {ServicePrincipalName -ne "$null"} -Properties ServicePrincipalName

Crear un nuevo usuario asignado algunos atributos

New-ADUser -Name "first last" -Accountpassword (Read-Host -AsSecureString "Super$ecurePassword!") -Enabled $true -OtherAttributes @{'title'="Analyst";'mail'="f.last@domain.com"}

Agregar un usuario a un grupo específico

Add-ADGroupMember -Identity "NombreGrupo" -Members "NombreUsuario"

Cambiar la contraseña de un usuario

Set-ADAccountPassword -Identity "NombreUsuario" -NewPassword (ConvertTo-SecureString -AsPlainText "NuevaContraseña" -Force) -Reset

Forzar el cambio de contraseña en el proximo inicio de sesión

Set-ADUser -Identity amasters -ChangePasswordAtLogon $true

Obtener los grupos del un usuario

$user = Get-ADUser -Identity "NombreUsuario"
$groups = Get-ADPrincipalGroupMembership -Identity $user
$groups | Select-Object -ExpandProperty Name

Quitar un usuario de un grupo

Remove-ADGroupMember -Identity "NombreGrupo" -Members "NombreUsuario"

Deshabilitar una cuenta de usuario

Disable-ADAccount -Identity "NombreUsuario"

Habilitar una cuenta de usuario

Enable-ADAccount -Identity "NombreUsuario"

Desbloquear una cuenta de usuario

Unlock-ADAccount -Identity "NombreUsuario"

Obtener información detallada de un usuario

Get-ADUser -Identity "NombreUsuario" -Properties *

Grupos

Crear un nuevo grupo

New-ADGroup -Name "NombreGrupo" -GroupCategory Security -GroupScope Global -DisplayName "Nombre Descriptivo del Grupo" -Description "Descripción del Grupo"

Listar los miembros de un grupo

Get-ADGroupMember -Identity "NombreGrupo" | Select-Object Name, SamAccountName

Obtener información detallada de un grupo

Get-ADGroup -Identity "NombreGrupo" -Properties *

Renombrar un grupo

Rename-ADObject -Identity "CN=NombreGrupo,OU=Origen,DC=dominio,DC=com" -NewName "NuevoNombreGrupo"

Eliminar un grupo

Remove-ADGroup -Identity "NombreGrupo"

Listar los grupos

Get-ADGroup -Filter * | select name

Obtener una lista de todos los grupos en una OU específica

Get-ADGroup -Filter * -SearchBase "OU=NombreOU,DC=dominio,DC=com"

Obtener una lista de todos los miembros de un grupo

Get-ADGroupMember -Identity "NombreGrupo"

Trusts (Confianzas)

Verificar las relaciones de confianza de dominio

Get-ADTrust -Filter *

Este cmdlet imprimirá las relaciones de confianza que tenga el dominio. Podemos determinar si son confianzas dentro de nuestro bosque o con dominios de otros bosques, el tipo de confianza, la dirección de la confianza y el nombre del dominio con el que está la relación.


Computadoras

Obtener información detallada de un equipo

Get-ADComputer -Identity "NombreEquipo" -Properties *

Obtener una lista de todos los equipos en un dominio

Get-ADComputer -Filter *

Obtener información detallada de un equipo específico

Get-ADComputer -Identity "NombreEquipo" -Properties *

Crear un nuevo objeto de equipo en Active Directory

New-ADComputer -Name "NombreEquipo" -Path "OU=NombreOU,DC=dominio,DC=com"

Cambiar el nombre de un equipo en Active Directory

Rename-ADObject -Identity "CN=NombreEquipo,OU=Origen,DC=dominio,DC=com" -NewName "NuevoNombreEquipo"

Deshabilitar una cuenta de equipo

Disable-ADAccount -Identity "NombreEquipo"

Habilitar una cuenta de equipo

Enable-ADAccount -Identity "NombreEquipo"

Eliminar un objeto de equipo de Active Directory

Remove-ADComputer -Identity "NombreEquipo"

Unidades Organizativas

Crear una nueva Unidad Organizativa

New-ADOrganizationalUnit -Name "NombreOU" -Path "OU=ParentOU,DC=dominio,DC=com"

Mover un objeto (usuario, grupo, etc.) a una OU diferente

Move-ADObject -Identity "CN=NombreObjeto,OU=Origen,DC=dominio,DC=com" -TargetPath "OU=Destino,DC=dominio,DC=com"

Obtener una lista de todas las unidades organizativas

Get-ADOrganizationalUnit -Filter *

Mover un equipo a una unidad organizativa diferente

Move-ADObject -Identity "CN=NombreEquipo,OU=Origen,DC=dominio,DC=com" -TargetPath "OU=Destino,DC=dominio,DC=com"

GPO (Group Policy Object)

Obtener una lista de todas las GPO

Get-GPO -All

Obtener una lista de todas las GPO en un dominio específico

Get-GPO -All -Domain "NombreDominio"

Crear una nueva GPO

New-GPO -Name "NombreGPO"

Cambiar el nombre de una GPO

Rename-GPO -Name "NombreActualGPO" -NewName "NuevoNombreGPO"

Copiar una GPO

Copy-GPO -SourceName "NombreGPOOrigen" -TargetName "NombreGPODestino"

Eliminar una GPO

Remove-GPO -Name "NombreGPO"

Obtener la configuración de una GPO

Get-GPOReport -Name "NombreGPO" -ReportType XML

Establecer la configuración de una GPO

Set-GPRegistryValue -Name "NombreGPO" -Key "HKEY_CURRENT_USER\Software\Ejemplo" -ValueName "Ejemplo" -Type String -Value "ValorEjemplo"

Enlace de una GPO a una OU específica

New-GPLink -Name "NombreGPO" -Target "OU=NombreOU,DC=dominio,DC=com"

Desenlace de una GPO de una OU específica

Remove-GPLink -Name "NombreGPO" -Target "OU=NombreOU,DC=dominio,DC=com"

Realizar una copia de seguridad y restauración de una GPO

Para realizar una copia de seguridad:

Backup-GPO -Name "NombreGPO" -Path "C:\Ruta\Backup"

Para restaurar desde una copia de seguridad:

Restore-GPO -Name "NombreGPO" -Path "C:\Ruta\Backup"

AnteriorEnumeraciónSiguientePowerView & SharpView

Última actualización hace 5 meses