Cyberseguridad - Conceptos básicos
Cyberseguridad
Conceptos básicos
enum4linux
-
Es una herramienta de enumeración de servicios Windows/Samba desde sistemas Linux.
-
Se usa mucho en auditorías de seguridad para obtener información de máquinas Windows sin autenticación o con credenciales débiles.
-
Permite obtener información como usuarios, grupos, shares, políticas de contraseñas, etc.
Opciones de enum4linux
-U → Enumera usuarios del sistema objetivo:
Lista de cuentas de usuario
Permisos de acceso
Nombres de usuario válidos
Información de cuentas
-S → Enumera shares (recursos compartidos):
Carpetas compartidas en red
Permisos de acceso
Recursos SMB/Samba disponibles
Ejemplo de uso
enum4linux -a <IP-del-objetivo>
- El parámetro
-aactiva todas las opciones de enumeración disponibles, proporcionando una gran cantidad de información sobre el objetivo.
- Script básico de enumeración con enum4linux para enumeración de puertos con enum4linux y lo guardamos como
recon.sh:
#!/bin/bash
# Verify that nmap and enum4linux are installed.
command -v nmap >/dev/null 2>&1 || { echo "nmap is not installed"; exit 1; }
command -v enum4linux >/dev/null 2>&1 || { echo "enum4linux is not installed"; exit 1; }
# Validate IP format
if [[ ! "$1" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "Invalid IP format"
exit 1
fi
# Check if IP of target is entered
if [ -z "$1" ]
then
echo "Correct usage is ./recon.sh <IP>"
exit 1 # output with error (error generico)
else
echo "Target IP $1"
echo "Running Nmap..."
# Run Nmap scan on target and save results to file
nmap -sV $1 > scan_results.txt
echo "Scan compete. Results saved to scan_results.txt"
fi
# If the Samba port 445 is found and open , run enum4Linux
if grep 445 scan_results.txt | grep -iq open
then
echo "Samba found. Enumeration started..."
enum4linux -U -S $1 >> scan_results.txt
echo "Enumeration complete."
echo "Results added to scan_results.txt"
echo "To view the results, cat the file"
else
echo "Open SMB share ports not found"
fi
-
Después de guardarlo y le damos permisos de ejecución con
chmod +x recon.sh, este script realizará un escaneo de puertos con Nmap y si encuentra el puerto 445 abierto, ejecutaráenum4linuxpara enumerar información relacionada con Samba.Los resultados se guardarán en un archivo llamado
scan_results.txt. -
Este script realiza un escaneo de puertos con Nmap y si encuentra el puerto 445 abierto, ejecuta
enum4linuxpara enumerar información relacionada con Samba.
- Ejecutamos el script con la IP del objetivo , en este caso estamos utilizando una máquina vulnerable creada con Docker con la IP
10.6.6.23
# ./recon.sh <IP-del-objetivo>
./recon.sh 10.6.6.23
- Realizamos un cat del archivo
scan_results.txtpara ver los resultados obtenidos por el script:
cat scan_results.txt
- Nos aparece la información obtenida por el script , entre la información obtenida podemos ver que el puerto 445 está abierto y que el servicio Samba está corriendo en la máquina objetivo.
Starting Nmap 7.94 ( https://nmap.org ) at 2026-03-04 17:10 UTC
Nmap scan report for gravemind.vm (10.6.6.23)
Host is up (0.00017s latency).
Not shown: 994 closed tcp ports (conn-refused)
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.3
22/tcp open ssh OpenSSH 7.9p1 Debian 10+deb10u2 (protocol 2.0)
53/tcp open domain ISC BIND 9.11.5-P4-5.1+deb10u5 (Debian Linux)
80/tcp open http nginx 1.14.2
139/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp open netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
Service Info: Host: GRAVEMIND; OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 11.41 seconds
Starting enum4linux v0.9.1 ( http://labs.portcullis.co.uk/application/enum4linux/ ) on Wed Mar 4 17:11:09 2026
=========================================( Target Information )=========================================
Target ...........
RID Range ........ 500-550,1000-1050
Username ......... ''
Password ......... ''
Known Usernames .. administrator, guest, krbtgt, domain admins, root, bin, none
=============================( Enumerating Workgroup/Domain on 10.6.6.23 )=============================
[E] Can't find workgroup/domain
=====================================( Session Check on 10.6.6.23 )=====================================
[+] Server 10.6.6.23 allows sessions using username '', password ''
==================================( Getting domain SID for 10.6.6.23 )==================================
Domain Name: WORKGROUP
Domain Sid: (NULL SID)
[+] Can't determine if host is part of domain or part of a workgroup
=========================================( Users on 10.6.6.23 )=========================================
index: 0x1 RID: 0x3e8 acb: 0x00000015 Account: masterchief Name: Desc:
index: 0x2 RID: 0x3e9 acb: 0x00000015 Account: arbiter Name: Desc:
user:[masterchief] rid:[0x3e8]
user:[arbiter] rid:[0x3e9]
===================================( Share Enumeration on 10.6.6.23 )===================================
Sharename Type Comment
--------- ---- -------
homes Disk All home directories
workfiles Disk Confidential Workfiles
print$ Disk Printer Drivers
IPC$ IPC IPC Service (Samba 4.9.5-Debian)
Reconnecting with SMB1 for workgroup listing.
Server Comment
--------- -------
Workgroup Master
--------- -------
[E] Can't understand response:
tree connect failed: NT_STATUS_BAD_NETWORK_NAME
//10.6.6.23/homes Mapping: N/A Listing: N/A Writing: N/A
//10.6.6.23/workfiles Mapping: OK Listing: OK Writing: N/A
//10.6.6.23/print$ Mapping: OK Listing: OK Writing: N/A
[E] Can't understand response:
NT_STATUS_OBJECT_NAME_NOT_FOUND listing \*
//10.6.6.23/IPC$ Mapping: N/A Listing: N/A Writing: N/A
enum4linux complete on Wed Mar 4 17:11:20 2026
Dirección IP del objetivo:
10.6.6.11
10.6.6.12
10.6.6.13
10.6.6.14
10.6.6.23
172.17.0.2
- Ejecutamos el comando
containerpara ver los contenedores que tenemos corriendo en Docker y copiamos todas las direcciones IP de los contenedores para guardarlas en un archivo llamadohosts.txty luego ejecutar el comandonmappara hacer un escaneo de ping a todas las direcciones IP que tenemos en el archivohosts.txtpara ver cuáles están activas.
nmap -sn -iL hosts.txt
-
-snPing scan (solo detecta si el host está activo, NO escanea puertos)
-
-iL <archivo.txt>como por ejemplohosts.txtLee la lista de IPs desde el archivo hosts.txt
(kali㉿Kali)-[~]
└─$ sudo nmap -sn -iL to_scan.txt
Starting Nmap 7.94 ( https://nmap.org ) at 2026-03-04 17:58 UTC
Nmap scan report for 10.6.6.1
Host is up.
Nmap scan report for webgoat.vm (10.6.6.11)
Host is up (0.0000080s latency).
MAC Address: 02:42:0A:06:06:0B (Unknown)
Nmap scan report for juice-shop.vm (10.6.6.12)
Host is up (0.000061s latency).
MAC Address: 02:42:0A:06:06:0C (Unknown)
Nmap scan report for dvwa.vm (10.6.6.13)
Host is up (0.000011s latency).
MAC Address: 02:42:0A:06:06:0D (Unknown)
Nmap scan report for mutillidae.vm (10.6.6.14)
Host is up (0.0000080s latency).
MAC Address: 02:42:0A:06:06:0E (Unknown)
Nmap scan report for gravemind.vm (10.6.6.23)
Host is up (0.000010s latency).
MAC Address: 02:42:0A:06:06:17 (Unknown)
Nmap scan report for 10.6.6.100
Host is up (0.000010s latency).
MAC Address: 02:42:0A:06:06:64 (Unknown)
Nmap scan report for metasploitable.vm (172.17.0.2)
Host is up (0.000035s latency).
MAC Address: 02:42:AC:11:00:02 (Unknown)
Nmap done: 8 IP addresses (8 hosts up) scanned in 0.33 seconds
- Datos de los hosts encontrados:
| IP | Hostname | ¿Qué es? |
|---|---|---|
| 10.6.6.1 | — | Gateway/Router de la red |
| 10.6.6.11 | webgoat.vm | App vulnerable para practicar (OWASP WebGoat) |
| 10.6.6.12 | juice-shop.vm | App vulnerable de OWASP (tienda online) |
| 10.6.6.13 | dvwa.vm | Damn Vulnerable Web App |
| 10.6.6.14 | mutillidae.vm | App web vulnerable (NOWASP Mutillidae) |
| 10.6.6.23 | gravemind.vm | Target principal del curso |
| 10.6.6.100 | — | Host adicional del entorno |
Deja un comentario