A tu propio ritmo

Explora nuestra extensa colección de cursos diseñados para ayudarte a dominar varios temas y habilidades. Ya seas un principiante o un aprendiz avanzado, aquí hay algo para todos.

Bootcamp

Aprende en vivo

Únete a nosotros en nuestros talleres gratuitos, webinars y otros eventos para aprender más sobre nuestros programas y comenzar tu camino para convertirte en desarrollador.

Próximos eventos en vivo

Catálogo de contenidos

Para los geeks autodidactas, este es nuestro extenso catálogo de contenido con todos los materiales y tutoriales que hemos desarrollado hasta el día de hoy.

Tiene sentido comenzar a aprender leyendo y viendo videos sobre los fundamentos y cómo funcionan las cosas.

Buscar en lecciones


IngresarEmpezar
← Regresar a lecciones
Editar en Github

Comandos CMD de Windows para Hacking Remoto

1. Navegación por el Sistema de Archivos
  • Propósito:

Muchos nuevos hackers provienen de entornos Windows pero rara vez (si acaso) utilizan sus herramientas de línea de comandos integradas. Como hacker, a menudo necesitarás controlar el sistema objetivo usando solo comandos de Windows sin depender de una interfaz gráfica.

Aunque herramientas como Meterpreter de Metasploit ofrecen capacidades extensas, no siempre están disponibles. Algunos exploits solo otorgan un shell CMD en el sistema Windows objetivo. En estos casos, comprender cómo controlar el sistema estrictamente a través del símbolo del sistema es esencial.

Esta lección demuestra comandos esenciales de Windows CMD ejecutándolos desde un sistema Kali remoto en el objetivo.

1. Navegación por el Sistema de Archivos

Propósito:

Comandos:

  • cd \
    Navegar al directorio raíz.

    1cd \
  • cd ..
    Subir un nivel de directorio.

    1cd ..
  • dir
    Listar el contenido del directorio actual.

    1dir
  • md <directorio>
    Crear un nuevo directorio (equivalente a mkdir en Linux).

    1md nuevo_directorio

Después de crear un nuevo directorio, ejecutar dir mostrará el directorio recién creado.

2. Gestión de Archivos

Propósito:

Gestionar archivos creando, visualizando y eliminándolos dentro del sistema de archivos.

Comandos:

  • del <nombre_archivo>
    Eliminar un archivo especificado.

    1del confidencial.txt

    Buffer 22

    Después de la eliminación, intentar mostrar el contenido del archivo resultará en:

    El sistema no puede encontrar el archivo especificado.
    
  • type <nombre_archivo>
    Mostrar el contenido de un archivo especificado (similar a cat en Linux).

    1type confidencial.txt
  • copy <origen> <destino> (Adición Opcional)
    Copiar archivos de una ubicación a otra.

    1copy archivo1.txt D:\backup\archivo1.txt
  • move <origen> <destino> (Adición Opcional)
    Mover o renombrar archivos.

    1move archivo1.txt D:\documentos\

3. Gestión de Procesos

Propósito:

Monitorear y controlar los procesos en ejecución en el sistema objetivo para gestionar el comportamiento del sistema o interrumpir servicios.

Comandos:

  • tasklist
    Listar todos los procesos en ejecución.

    1tasklist

    Buffer 26

  • tasklist | findstr <nombre_proceso>
    Filtrar la lista de procesos para encontrar uno específico (similar a grep en Linux).

    1tasklist | findstr explorer

    Buffer 27

  • taskkill /PID <ProcessID> /F
    Terminar un proceso usando su ID de Proceso (PID) con fuerza (/F).

    1taskkill /PID 1532 /F

    Buffer 28

4. Redes

Propósito:

Reunir información relacionada con la red y gestionar las conexiones de red en el sistema objetivo.

Comandos:

  • ipconfig
    Mostrar la configuración de red del sistema (similar a ifconfig en Linux).

    1ipconfig

    Buffer 24

  • netstat
    Mostrar conexiones de red activas y puertos en escucha.

    1netstat

    Buffer 25

  • ping <dirección> (Adición Opcional)
    Probar la accesibilidad de un host en la red.

    1ping www.google.com
  • tracert <dirección> (Adición Opcional)
    Rastrear la ruta que toman los paquetes para llegar a un host en la red.

    1tracert www.google.com

5. Gestión de Usuarios y Cuentas

Propósito:

Ver y gestionar cuentas de usuario en el sistema objetivo, lo cual puede ser crucial para la escalada de privilegios o el movimiento lateral.

Comandos:

  • net user
    Mostrar una lista de cuentas de usuario en el sistema.

    1net user

    Buffer 29

  • net user <nombre_usuario> (Adición Opcional)
    Mostrar información detallada sobre una cuenta de usuario específica.

    1net user administrador
  • whoami (Adición Opcional)
    Mostrar el usuario actual conectado.

    1whoami

6. Ejecución de Aplicaciones

Propósito:

Ejecutar aplicaciones en el sistema objetivo para realizar tareas o desplegar cargas adicionales.

Comandos:

  • iexplore <URL>
    Lanzar Internet Explorer y navegar a una URL especificada.

    1iexplore www.google.com

    Este comando abre Internet Explorer en el sistema objetivo y navega a google.com, útil para desplegar cargas útiles a través de enlaces maliciosos o dirigir al objetivo a un servidor web controlado.

  • start <aplicación> (Adición Opcional)
    Iniciar una aplicación especificada (por ejemplo, Notepad).

    1start notepad.exe

7. Información del Sistema y Diagnósticos (Sección Opcional)

Propósito:

Reunir información detallada sobre la configuración del hardware y software del sistema.

Comandos:

  • systeminfo
    Mostrar información detallada sobre la configuración del ordenador y su sistema operativo.

    1systeminfo
  • wmic (Windows Management Instrumentation Command-line)
    Interactuar con Windows Management Instrumentation para consultar detalles del sistema.

    1wmic cpu get name, maxclockspeed, currentclockspeed

8. Escalada de Privilegios (Sección Opcional)

Propósito:

Obtener permisos de nivel superior en el sistema objetivo para realizar acciones restringidas.

Comandos:

  • runas /user:<nombre_usuario> <comando>
    Ejecutar un comando con credenciales de usuario diferentes.

    1runas /user:Administrador cmd.exe
  • whoami /groups
    Listar los grupos a los que pertenece el usuario actual, ayudando a identificar rutas de escalada de privilegios.

    1whoami /groups

9. Consideraciones Éticas

Entender y utilizar estos comandos conlleva responsabilidades éticas significativas. Siempre asegúrate de tener permiso explícito para realizar cualquier actividad de pruebas de penetración o control del sistema. El acceso no autorizado o el control de sistemas es ilegal y poco ético. Utiliza estas habilidades para mejorar la seguridad y proteger sistemas, no para explotar vulnerabilidades de manera ilegal.

Caso de Uso: Enumeración de Información del Sistema y Gestión de Procesos para Acceso Encubierto

Objetivo:

Obtener una visión completa de la configuración del sistema objetivo y los procesos en ejecución, identificar posibles objetivos para escalada de privilegios y terminar procesos relacionados con la seguridad para mantener un acceso encubierto.

Escenario:

Has establecido con éxito un shell CMD remoto en un sistema Windows objetivo. Tu objetivo es recopilar información del sistema, enumerar cuentas de usuario, identificar procesos de seguridad en ejecución y terminar esos procesos para evitar la detección y mantener un acceso persistente.

Guía Paso a Paso:


1. Recolectar Información del Sistema

Propósito:
Entender la configuración del sistema objetivo, incluyendo la versión del sistema operativo, actualizaciones instaladas y detalles del hardware. Esta información es crucial para identificar vulnerabilidades y planificar acciones adicionales.

Comandos:

  • systeminfo
    Muestra información detallada sobre la configuración del ordenador y su sistema operativo.

    1systeminfo
  • wmic cpu get name, maxclockspeed, currentclockspeed
    Recupera información sobre la CPU, incluyendo su nombre y velocidades de reloj.

    1wmic cpu get name, maxclockspeed, currentclockspeed

Explicación:
Al ejecutar estos comandos, obtienes una visión general del entorno de hardware y software del sistema, lo cual es esencial para identificar posibles vulnerabilidades y comprender las capacidades del sistema.


2. Enumerar Cuentas de Usuario

Propósito:
Identificar todas las cuentas de usuario en el sistema objetivo para encontrar posibles objetivos para la escalada de privilegios o movimiento lateral.

Comandos:

  • net user
    Muestra una lista de las cuentas de usuario en el sistema.

    1net user
  • whoami
    Muestra el usuario actualmente conectado.

    1whoami
    1whoami /groups

Explicación:
Listar todas las cuentas de usuario ayuda a identificar cuentas administrativas o usuarios con privilegios elevados. El comando whoami revela la identidad del usuario actual y las membresías de grupo, lo cual es vital para evaluar el nivel de acceso y las posibles rutas de escalada.


3. Identificar y Terminar Procesos de Seguridad

Propósito:
Localizar y terminar procesos relacionados con la seguridad (por ejemplo, software antivirus) para reducir las posibilidades de detección e interferir con los mecanismos de defensa del sistema.

Comandos:

  • tasklist
    Lista todos los procesos en ejecución.

    1tasklist
  • tasklist | findstr "antivirus"
    Filtra la lista para encontrar procesos relacionados con software antivirus.

    1tasklist | findstr "antivirus"
    1tasklist | findstr "explorer"
  • taskkill /PID <ProcessID> /F
    Termina un proceso específico usando su ID de Proceso (PID) con fuerza.

    1taskkill /PID 1532 /F

Explicación:
Al identificar y terminar procesos de seguridad, puedes minimizar el riesgo de que tus actividades sean detectadas por software antivirus u otro software de seguridad. Este paso es crucial para mantener el acceso encubierto y prevenir que el sistema inicie contramedidas.


4. Navegar por el Sistema de Archivos y Gestionar Archivos

Propósito:
Organizar tus herramientas y cargas útiles dentro del sistema objetivo para asegurar un acceso y ejecución fáciles durante sesiones futuras.

Comandos:

  • md C:\Windows\Temp\Payloads
    Crea un nuevo directorio llamado "Payloads" dentro de la carpeta Temp.

    1md C:\Windows\Temp\Payloads
  • copy payload.exe C:\Windows\Temp\Payloads\
    Copia el ejecutable de la carga útil al nuevo directorio creado.

    1copy payload.exe C:\Windows\Temp\Payloads\

Explicación:
Crear un directorio dedicado para tus herramientas asegura que estén organizadas y sean fácilmente accesibles. Copiar cargas útiles a este directorio prepara el sistema para ejecutar comandos adicionales o establecer un acceso persistente.


5. Ejecutar Aplicaciones para Mantener el Acceso

Propósito:
Ejecutar tu carga útil o puerta trasera para establecer una conexión persistente o realizar actividades maliciosas en el sistema objetivo.

Comandos:

  • start C:\Windows\Temp\Payloads\payload.exe
    Lanza el ejecutable de la carga útil.

    1start C:\Windows\Temp\Payloads\payload.exe
  • tasklist | findstr "payload"
    Verifica que la carga útil esté en ejecución.

    1tasklist | findstr "payload"

Explicación:
Ejecutar tu carga útil es esencial para establecer una puerta trasera o mantener acceso al sistema objetivo. Verificar que la carga útil esté en ejecución asegura que tus acciones hayan sido exitosas y que puedas confiar en este acceso para operaciones futuras.


6. Limpieza y Ocultación de Rastro

Propósito:
Eliminar cualquier rastro de tus actividades para evitar la detección y mantener un acceso a largo plazo sin levantar sospechas.

Comandos:

  • del C:\Windows\Temp\Payloads\payload.exe
    Elimina el ejecutable de la carga útil después de la ejecución.

    1del C:\Windows\Temp\Payloads\payload.exe
  • rmdir C:\Windows\Temp\Payloads
    Elimina el directorio Payloads.

    1rmdir C:\Windows\Temp\Payloads

Explicación:
Limpiar eliminando tus cargas útiles y eliminando directorios ayuda a borrar evidencia de tu presencia en el sistema. Este paso es crucial para mantener el encubrimiento y reducir las posibilidades de que tus actividades sean descubiertas durante auditorías del sistema o escaneos de seguridad.


Resumen de Comandos Usados:

  • Navegación y Gestión del Sistema de Archivos:
    • md
    • copy
    • del
    • rmdir
  • Información del Sistema:
    • systeminfo
    • wmic
  • Gestión de Usuarios y Cuentas:
    • net user
    • whoami
    • whoami /groups
  • Gestión de Procesos:
    • tasklist
    • findstr
    • taskkill
    • start