This page looks best with JavaScript enabled

CrackmapExec II: Protocolos, Módulos y Base de Datos

 ·   ·   5 min read  ·  Autor - Snifer

La entrada anterior aprendimos a realizar la instalación de Crackmapexec, configurar y ver algunos comandos básicos de inicialización del programa.

A continuacion estaremos con que protocolos Crackmapexec puede trabajar, como interactuaremos con los Módulos según el protocolo que estemos trabajando; entendiendo como ver un mayor detalle de cada uno de ellos y ademas veremos la forma que podemos movernos en la base de datos.

Protocolos

Si ejecutamos el comando crackmapexec o cme podemos identificar 5 protocolos los cuales nos permite interactuar.

  • smb
  • ldap
  • winrm
  • ssh
  • mssql

Para interactuar con ellos solo necesitamos ejecutar el siguiente comando.

1
crackmapexec <PROTOCOLO> -h

Permitiéndonos listar las opciones respectivas del protocolo que necesitamos utilizar, después de ello para interactuar con alguno servicio en particular tenemos que brindar la dirección IP, Usuario y Contraseña.

1
crackmapexec <PROTOCOLO> <IP> -u <Usuario> -p <Password>

En el campo que corresponde a la dirección IP podemos registrar un segmento para realizar la tarea con la herramienta.

PASS THE HASH

Del mismo modo Crackmapexec nos permite realizar una autenticación haciendo uso de los hashes para ello solo necesitamos ejecutar con el flag -h.

1
2

crackmapexec smb <IP> -u -H <HASH> 

Tipos de Autenticacion

Cuando deseamos autenticarnos contaremos la mayoría de las veces dos tipos de autenticación que son local o dominio, por lo tanto, es sumamente importante tener en cuenta el tipo de autenticación antes de ejecutar, ya que podríamos bloquear algún usuario en Dominio por intentar autenticarnos.

Autenticación Local.

Para autenticarnos localmente en un equipo o más de uno y no se autentique como usuario de dominio debemos de hacer uso de la flag --local-auth.

Autenticación por Dominio.

Para autenticarnos con un usuario por dominio por ejemplo tenemos que hacer uso con el flag -d DOMINIO en vez de el flag --local-auth.

Null Session

Del mismo modo CrackmapExec nos permite autenticarnos con sesiones nulas es decir sin entregar un usuario y contraseña esto nos sirve para hacer una enumeración del sistema operativo de los equipos disponibles en la red.

Módulos

Cada protocolo que llegamos a interactuar desde CrackmapExec, cuenta con algunos módulos que pueden ser utilizados, para ello si deseamos listar todos del protocolo respectivo es realizado de la siguiente manera.

1
crackmapexec <PROTOCOLO> -L

A continuación veremos de SMB.

  1. Nos muestra el nombre del módulo.
  2. Descripción del módulo.

Si llegamos a repetir el mismo comando para el resto de los protocolos tendremos la misma respuesta.

Para ver que parámetros adicionales necesita algún módulo en particular es realizado de la siguiente forma.

1
crackmapexec <Protocolo> -M <MODULO> --options

CMEDB - Base de Datos

Cualquier ejecución que realicemos en Crackmapexec esta se vera registrada en la base de datos, por defecto se almacena en el workspace default es decir que podríamos mezclar resultados entre pruebas en una sola base de datos, por ejemplo después de ejecutar por SMB una autenticación obtenemos los siguientes resultados

Te das cuenta de que mientras más recursos identifiques este espacio ira creciendo y mezclando dominios, servicios y hosts que deberían de estar totalmente aislados entre ellos, por lo cual en este apartado aprenderemos los comandos de la base de datos.

Al iniciar cmedb nos mostrará directamente un acceso, los comandos básicos iniciales en la base de datos son help, proto, back y workspace

Para la navegación entre los diferentes protocolos dentro de la base de datos, debemos de hacerlo proto [SERVICIO], en caso de no hacerlo no podremos ver el detalle que contemos en la base de datos de otros servicios.

Como ven en la captura anterior tuve el problema de no indicar Back para acceder a otro servicio.

Creación de un base de datos

Para evitar la confusión y estar con una mezcla en una sola base de datos contamos con la opción de crear una nueva con el comando.

1
workspace create <NOMBRE BD>

Antes debemos de ir con el comando back y recien crear la base de datos no estando dentro de un protocolo.

Una vez tengamos creada la base de datos todo lo que ejecutemos sé ira almacenando sobre esta, manteniendo por defecto la última base de datos que nos encontramos abierta.

Si deseamos pasar entre una u otra base de datos lo hacemos de la siguiente manera.

1
workspace <NOMBRE BD>

Visualización de datos

Entre los comandos correspondientes a SMB contamos con back, creds, exit, export, groups, hosts, import, shares

Creds

Después de autenticarnos o hacer uso de algun credencial o hash si ingresamos el comando creds, obtenemos lo siguiente.

Detallamos a continuación los campos:

  • CredID: El identificador unico de los datos de un usuario.
  • Admin On: En cuantos equipos es administrador esa credencial
  • CredType: Tipo de credencial Plaintext o Hash.
  • Domain: Si forma parte o no de un dominio
  • Username: Nombre de usuario
  • Password: Contraseña

Hosts

En el caso de Hosts tenemos adicionalmente algunos campos como se muestra a continuacion.

  • HostID: Identificador único de cada equipo registrado
  • Admins: Cuantos usuarios tienes permisos administrativos sobre este equipo.
  • IP: La dirección IP.
  • Hostname: Nombre del equipo.
  • Domain: El dominio que se encuentra el equipo.
  • OS: Descripción del sistema Operativo del equipo.

Shares

Llegamos a visualizar los directorios compartidos que llegamos a tener acceso con CrackmapExec.


Te dejo con la entrada anterior donde iniciamos este camino de Crackmapexec.

Serie de Entradas de CrackmapExec

  1. CrackmapExec: Instalación, Configuración y Comandos básicos de uso.
  2. CrackmapExec II: Protocolos, Módulos y Base de datos

Regards
Snifer

Share on
Support the author with

Avatar
WRITTEN BY
Snifer
Creador del proyecto Snifer@L4b's, Consultor en Seguridad Informática.