> For the complete documentation index, see [llms.txt](https://securitylayer.gitbook.io/securitylayer/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://securitylayer.gitbook.io/securitylayer/pentesting-tools/tools/ldapsearch.md).

# LdapSearch

***Ver maquinas:*** [***Timelapse***](/securitylayer/maquinas-y-modulos-de-htb/windows-easy/timelapse.md) ***(HTB),*** [***Support***](/securitylayer/maquinas-y-modulos-de-htb/windows-easy/support.md) ***(HTB),*** [***RetroTwo***](/securitylayer/maquinas-y-modulos-de-htb/windows-easy/retrotwo.md) ***(HTB)***

`ldapsearch` *permite realizar búsquedas dentro de un árbol de directorio LDAP utilizando filtros. Es especialmente útil para:*

* *Enumerar usuarios, grupos y computadoras.*
* *Obtener atributos específicos de objetos en el directorio.*
* *Verificar configuraciones del dominio.*
* *Automatizar la recolección de información desde AD sin necesidad de credenciales elevadas (cuando es posible el acceso anónimo o de bajo privilegio).*

{% code fullWidth="true" %}

```vim
ldapsearch -x -H ldap://<IP> -D "<usuario>" -w <contraseña> -b "<baseDN>" "<filtro>" <atributos>
```

{% endcode %}

#### *Parámetros comunes*

* *`-x` → Usa autenticación simple (bind simple) en lugar de SASL. Es el modo más habitual.*
* *`-H ldap://<IP>` → Especifica la URL del servidor LDAP al que se conecta. Puede ser `ldap://` o `ldaps://` si es LDAP sobre TLS.*
* *`-D "<usuario>"` → Usuario con el que autenticarse (por ejemplo: `cn=ldap,dc=empresa,dc=com`).*
* *`-w <contraseña>` → Contraseña correspondiente al usuario especificado con `-D`.*
* *`-W` → En lugar de especificar la contraseña en la línea, la pedirá de forma interactiva.*
* *`-b "<baseDN>"` → DN (Distinguished Name) desde donde empezar la búsqueda (ejemplo: `dc=empresa,dc=com`).*
* *`"<filtro>"` → Filtro LDAP para buscar objetos específicos (por ejemplo: `(objectClass=user)`).*
* *`<atributos>` → Lista de atributos a recuperar, como `sAMAccountName`, `mail`, `memberOf`, etc.*

#### *Filtros comunes*

* *`(objectClass=user)` → Busca todos los objetos de clase usuario.*
* *`(objectClass=computer)` → Busca todos los objetos de clase computadora.*
* *`(objectClass=group)` → Busca todos los grupos.*
* *`(sAMAccountName=usuario1)` → Busca un usuario específico.*
* *`(cn=*)` → Busca todos los objetos con CN (Common Name), es decir, prácticamente todo.*

#### Ejemplos prácticos

**1. Enumerar todos los usuarios:**

{% code fullWidth="true" %}

```vim
ldapsearch -x -H ldap://10.10.10.1 -D "ldap" -w 'pass123' -b "dc=empresa,dc=com" "(objectClass=user)" sAMAccountName
```

{% endcode %}

**2. Obtener todos los grupos:**

{% code fullWidth="true" %}

```vim
ldapsearch -x -H ldap://10.10.10.1 -D "ldap" -w 'pass123' -b "dc=empresa,dc=com" "(objectClass=group)"
```

{% endcode %}

**3. Obtener todos los atributos de un usuario específico:**

{% code fullWidth="true" %}

```vim
ldapsearch -x -H ldap://10.10.10.1 -D "ldap" -w 'pass123' -b "dc=empresa,dc=com" "(sAMAccountName=soporte01)"
```

{% endcode %}

**4. Con acceso anónimo (si está habilitado):**

{% code fullWidth="true" %}

```vim
ldapsearch -x -H ldap://10.10.10.1 -b "dc=empresa,dc=com" "(objectClass=*)" sAMAccountName
```

{% endcode %}

**5. Identificación del Dominio**

{% code fullWidth="true" expandable="true" %}

```viml
ldapsearch -x -H ldap://10.129.232.128 -s base namingcontexts
```

{% endcode %}

**6. Enumeración del Objeto Raíz del Dominio**

{% code fullWidth="true" expandable="true" %}

```viml
ldapsearch -x -H ldap://10.129.232.128 -s base -b 'dc=sequel,dc=htb'
```

{% endcode %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://securitylayer.gitbook.io/securitylayer/pentesting-tools/tools/ldapsearch.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
