Resources
Aquí encontrarás herramientas de Ethical Hacking, y algún librillo o tutorial:
Configuración inicial de Kali Linux: primeros pasos después de instalarlo
¿Acabas de instalar Kali Linux? Antes de comenzar a utilizar sus herramientas, conviene actualizar el sistema y realizar algunas configuraciones básicas.
1. Actualizar Kali Linux
Abre una terminal y ejecuta:
sudo apt update
sudo apt full-upgrade -yKali Linux utiliza un modelo de actualización continua, por lo que full-upgrade permite actualizar correctamente los paquetes y gestionar cambios en sus dependencias.
Cuando termine, elimina paquetes que ya no sean necesarios:
sudo apt autoremove -y
sudo apt autocleanSi el sistema indica que es necesario reiniciar, ejecuta:
sudo reboot2. Comprobar los repositorios
En las versiones recientes de Kali, la configuración principal de los repositorios se encuentra en:
/etc/apt/sources.list.d/kali.sourcesPuedes revisarla con:
cat /etc/apt/sources.list.d/kali.sourcesUna instalación estándar de Kali Rolling debería utilizar el repositorio oficial http.kali.org, la rama kali-rolling y los componentes main, contrib, non-free y non-free-firmware.
No agregues repositorios de Ubuntu, Debian u otras distribuciones, porque podrían provocar conflictos entre paquetes.
3. Configurar el idioma y la zona horaria
Para cambiar el idioma del sistema:
sudo dpkg-reconfigure localesPara configurar la zona horaria:
sudo dpkg-reconfigure tzdataTambién puedes establecer directamente la zona horaria de Argentina:
sudo timedatectl set-timezone America/Argentina/Buenos_AiresComprueba la configuración:
timedatectl4. Cambiar el nombre del equipo
Consulta el nombre actual:
hostnamectlPara cambiarlo, reemplaza kali-lab por el nombre que prefieras:
sudo hostnamectl set-hostname kali-labDespués, revisa el archivo de hosts:
sudo nano /etc/hostsAsegúrate de que el nuevo nombre aparezca en una línea similar a esta:
127.0.1.1 kali-lab5. Instalar herramientas básicas
Puedes agregar algunas utilidades de uso cotidiano:
sudo apt install -y git curl wget vim nano htop tree unzipComprueba que se hayan instalado correctamente:
git --version
curl --version6. Utilizar Kali Tweaks
Kali incluye una herramienta para modificar configuraciones frecuentes:
kali-tweaksDesde su menú puedes gestionar repositorios, metapaquetes, virtualización, ajustes de seguridad y algunas opciones del entorno de escritorio.
7. Verificar la red
Consulta las interfaces y direcciones IP:
ip addrComprueba la conexión a Internet:
ping -c 4 kali.orgConsulta la puerta de enlace:
ip routePara mostrar únicamente las direcciones IP asignadas al equipo:
hostname -I8. Revisar el usuario actual
Kali crea durante la instalación un usuario preparado para utilizar privilegios administrativos mediante sudo.
Comprueba tu usuario:
whoamiConsulta los grupos a los que pertenece:
groupsEvita trabajar permanentemente como root. Utiliza sudo únicamente cuando una tarea necesite privilegios administrativos.
9. Crear una carpeta para el laboratorio
Mantener los archivos organizados ayuda a separar prácticas, scripts y evidencias:
mkdir -p ~/laboratorio/{scripts,resultados,notas,descargas}Comprueba la estructura:
tree ~/laboratorio10. Consultar la versión instalada
Finalmente, verifica la versión del sistema:
cat /etc/os-releaseTambién puedes revisar el kernel:
uname -rY obtener un resumen general:
hostnamectlConclusión
Con estos pasos tendrás una instalación de Kali Linux actualizada, organizada y preparada para comenzar a trabajar.
Recuerda utilizar sus herramientas exclusivamente en sistemas propios, laboratorios controlados o entornos para los que tengas autorización expresa.
El rincón secreto del hacker: aprender, experimentar y comprender la tecnología desde adentro.
---
Para que un laboratorio virtual de Ethical Hacking sea seguro, debes aislar las máquinas vulnerables de Internet y de tu red doméstica, permitiendo únicamente la comunicación necesaria entre Kali Linux y los objetivos del laboratorio.
Cómo asegurar la conexión de un laboratorio virtual de Ethical Hacking
Un laboratorio de Ethical Hacking suele incluir varias máquinas virtuales:
Kali Linux como sistema auditor.
Metasploitable, DVWA, OWASP Broken Web Apps o máquinas similares como objetivos.
Una máquina Ubuntu o Windows para pruebas defensivas.
El equipo anfitrión, llamado host, donde se ejecuta VirtualBox o VMware.
El principal riesgo consiste en configurar incorrectamente las interfaces de red y permitir que una máquina intencionalmente vulnerable quede expuesta a Internet o pueda comunicarse con otros dispositivos de la vivienda, oficina o universidad.
La regla fundamental es:
Las máquinas vulnerables nunca deben utilizar una interfaz de red en modo puente.
1. Modos de red disponibles
NAT
En modo NAT, la máquina virtual puede acceder a Internet utilizando la conexión del equipo anfitrión.
La máquina virtual queda detrás de un mecanismo de traducción de direcciones. Normalmente, otros dispositivos de la red física no pueden iniciar conexiones directamente hacia ella.
Ejemplo habitual:
Internet
|
Router doméstico
|
Equipo anfitrión
|
NAT de VirtualBox
|
Kali Linux
NAT es apropiado para:
Actualizar Kali Linux.
Instalar paquetes.
Descargar repositorios.
Consultar documentación.
Navegar desde una máquina que no sea deliberadamente vulnerable.
Ejemplo de actualización:
sudo apt update
sudo apt full-upgrade -y
Comprobación de la dirección IP:
ip address
Comprobación de la ruta predeterminada:
ip route
Salida típica:
default via 10.0.2.2 dev eth0
10.0.2.0/24 dev eth0 proto kernel scope link src 10.0.2.15
En VirtualBox, la red NAT tradicional suele asignar direcciones dentro de 10.0.2.0/24, aunque esto puede variar según la configuración.
Riesgos del modo NAT
NAT no equivale a aislamiento absoluto. La máquina virtual todavía puede:
Conectarse a Internet.
Descargar archivos.
Comunicarse con servicios externos.
Enviar información fuera del laboratorio.
Recibir conexiones si se configura redirección de puertos.
Por ese motivo, una máquina como Metasploitable no debería tener NAT activo mientras se utiliza como objetivo.
2. Red NAT
VirtualBox distingue entre el modo NAT tradicional y una red NAT.
En una red NAT, varias máquinas virtuales pueden:
Comunicarse entre ellas.
Acceder a Internet.
Permanecer parcialmente separadas de la red física.
Ejemplo:
Internet
|
Equipo anfitrión
|
Red NAT
10.20.30.0/24
/ \
Kali Ubuntu
Puede ser útil para laboratorios donde varias máquinas necesitan Internet, pero no es la opción más segura para objetivos vulnerables.
Creación de una red NAT desde la terminal del host:
VBoxManage natnetwork add \
--netname LabNAT \
--network "10.20.30.0/24" \
--enable \
--dhcp on
Inicio de la red:
VBoxManage natnetwork start --netname LabNAT
Asignación a una máquina virtual:
VBoxManage modifyvm "Kali Linux" \
--nic1 natnetwork \
--nat-network1 "LabNAT"
Listado de redes NAT:
VBoxManage list natnetworks
La red NAT debe evitarse para Metasploitable, Windows XP vulnerable u otros objetivos sin soporte, salvo que sea estrictamente necesario y se apliquen controles adicionales.
3. Adaptador solo-anfitrión o Host-Only
Host-Only crea una red privada entre:
El equipo anfitrión.
Las máquinas virtuales conectadas a esa interfaz.
Las máquinas virtuales no tienen acceso directo a Internet mediante esa interfaz.
Ejemplo:
Equipo anfitrión
192.168.56.1
|
Red Host-Only
192.168.56.0/24
/ \
Kali Linux Metasploitable
192.168.56.10 192.168.56.20
Esta configuración permite que Kali ataque el objetivo sin exponerlo directamente a Internet.
Configuración recomendada
Kali Linux:
Adaptador 1: NAT.
Adaptador 2: Host-Only.
Máquina vulnerable:
Adaptador 1: Host-Only.
Sin NAT.
Sin modo puente.
Representación:
Internet
|
NAT
|
Kali Linux
|
Host-Only
|
Metasploitable
Kali puede actualizarse mediante NAT y comunicarse con el objetivo mediante Host-Only. Metasploitable solo puede comunicarse con Kali y con el host.
Identificación de interfaces en Kali
ip -brief address
Salida posible:
lo UNKNOWN 127.0.0.1/8
eth0 UP 10.0.2.15/24
eth1 UP 192.168.56.10/24
En este ejemplo:
eth0corresponde a NAT.eth1corresponde a Host-Only.
Visualización de rutas:
ip route
Salida:
default via 10.0.2.2 dev eth0
10.0.2.0/24 dev eth0 proto kernel scope link src 10.0.2.15
192.168.56.0/24 dev eth1 proto kernel scope link src 192.168.56.10
Prueba de comunicación con el objetivo:
ping -c 4 192.168.56.20
Descubrimiento de hosts dentro del laboratorio:
sudo nmap -sn 192.168.56.0/24
Escaneo básico autorizado:
sudo nmap -sV 192.168.56.20
Es importante especificar siempre la red del laboratorio y evitar rangos pertenecientes a la red doméstica o institucional.
4. Red interna o Internal Network
La red interna ofrece un aislamiento mayor que Host-Only.
Solo pueden comunicarse entre sí las máquinas virtuales conectadas a la misma red interna. El equipo anfitrión no participa directamente.
Ejemplo:
Kali Linux
10.10.10.10
|
Red interna: laboratorio
10.10.10.0/24
|
Metasploitable
10.10.10.20
Esta configuración es apropiada para:
Análisis de malware controlado.
Explotación de máquinas muy vulnerables.
Simulación de redes empresariales.
Pruebas de movimiento lateral.
Laboratorios sin necesidad de Internet.
Configuración mediante VBoxManage:
VBoxManage modifyvm "Kali Linux" \
--nic2 intnet \
--intnet2 "laboratorio"
Para Metasploitable:
VBoxManage modifyvm "Metasploitable" \
--nic1 intnet \
--intnet1 "laboratorio"
Las dos máquinas deben utilizar exactamente el mismo nombre de red interna:
laboratorio
Configuración manual de IP
Si la red interna no dispone de DHCP, puedes asignar las direcciones manualmente.
En Kali:
sudo ip address add 10.10.10.10/24 dev eth1
sudo ip link set eth1 up
En Linux objetivo:
sudo ip address add 10.10.10.20/24 dev eth0
sudo ip link set eth0 up
Prueba desde Kali:
ping -c 4 10.10.10.20
No debe configurarse una puerta de enlace predeterminada en la máquina vulnerable, salvo que el diseño del laboratorio lo requiera.
5. Modo puente o Bridged Adapter
En modo puente, la máquina virtual aparece como un dispositivo más dentro de la red física.
Ejemplo:
Router
192.168.1.1
|
|--- Equipo anfitrión: 192.168.1.10
|--- Teléfono: 192.168.1.15
|--- Smart TV: 192.168.1.25
|--- Máquina virtual: 192.168.1.40
Esto significa que la máquina virtual puede:
Comunicarse con otros equipos físicos.
Recibir conexiones desde la red local.
Ser visible para otros dispositivos.
Acceder potencialmente a impresoras, routers, televisores y servidores.
Quedar expuesta si el router tiene reglas inseguras.
Cuándo no utilizar modo puente
No debes usarlo con:
Metasploitable.
DVWA sin asegurar.
Windows XP o Windows 7 sin soporte.
Máquinas de VulnHub.
Laboratorios de malware.
Sistemas con servicios deliberadamente vulnerables.
Máquinas que ejecutan exploits o listeners.
El modo puente solo debería emplearse cuando sea imprescindible realizar una prueba autorizada contra dispositivos físicos de una red controlada.
6. Configuración segura recomendada
Una arquitectura equilibrada consiste en utilizar dos interfaces en Kali y una interfaz aislada en el objetivo.
Kali Linux
Adaptador 1: NAT
Adaptador 2: Host-Only
Metasploitable
Adaptador 1: Host-Only
Esquema
Internet
|
NAT
|
+-------------+
| Kali Linux |
| 10.0.2.15 |
| 192.168.56.10
+-------------+
|
Host-Only
192.168.56.0/24
|
+------------------+
| Metasploitable |
| 192.168.56.20 |
+------------------+
Kali tiene salida a Internet, pero Metasploitable no.
7. Comprobar que el objetivo no tenga Internet
En Metasploitable o en el objetivo Linux:
ip route
Una configuración aislada debería mostrar únicamente la ruta local:
192.168.56.0/24 dev eth0 proto kernel scope link src 192.168.56.20
No debería existir una línea como:
default via 192.168.56.1
Prueba de acceso externo:
ping -c 3 1.1.1.1
El comando debería fallar.
También puede comprobarse DNS:
ping -c 3 example.com
Debería aparecer un error de resolución o de conectividad.
Desde Kali, en cambio, la prueba mediante la interfaz NAT debería funcionar:
ping -c 3 1.1.1.1
8. Evitar que Kali reenvíe tráfico
Aunque el objetivo no tenga NAT, Kali podría convertirse accidentalmente en un router si se habilita el reenvío IP.
Comprobación:
sysctl net.ipv4.ip_forward
Resultado seguro:
net.ipv4.ip_forward = 0
Desactivación temporal:
sudo sysctl -w net.ipv4.ip_forward=0
Desactivación persistente:
echo 'net.ipv4.ip_forward=0' |
sudo tee /etc/sysctl.d/99-lab-isolation.conf
Aplicación:
sudo sysctl --system
También debe comprobarse IPv6:
sysctl net.ipv6.conf.all.forwarding
Para desactivarlo:
sudo sysctl -w net.ipv6.conf.all.forwarding=0
9. Bloqueo adicional con nftables
Kali puede utilizar nftables para impedir que el tráfico procedente de la red del laboratorio llegue a Internet.
Supongamos:
eth0 = NAT
eth1 = Host-Only
Red del laboratorio = 192.168.56.0/24
Creación de una tabla de filtrado:
sudo nft add table inet lab_filter
Creación de una cadena para tráfico reenviado:
sudo nft add chain inet lab_filter forward \
'{ type filter hook forward priority 0; policy drop; }'
Bloqueo explícito del tráfico desde Host-Only hacia NAT:
sudo nft add rule inet lab_filter forward \
iifname "eth1" oifname "eth0" drop
Visualización de reglas:
sudo nft list ruleset
Para eliminar la tabla:
sudo nft delete table inet lab_filter
Una política drop en la cadena forward impide que Kali funcione como puente o router entre ambas redes.
10. Bloqueo mediante iptables
En sistemas que todavía utilizan iptables:
sudo iptables -P FORWARD DROP
Bloqueo específico:
sudo iptables -A FORWARD \
-i eth1 \
-o eth0 \
-s 192.168.56.0/24 \
-j DROP
Comprobación:
sudo iptables -L FORWARD -n -v
No debes ejecutar reglas copiadas sin verificar previamente los nombres de las interfaces:
ip -brief link
Los nombres podrían ser:
eth0
eth1
enp0s3
enp0s8
ens33
ens37
11. Escuchar únicamente en la interfaz del laboratorio
Al iniciar un servidor web, listener o servicio de pruebas, conviene vincularlo a la dirección Host-Only y no a todas las interfaces.
Configuración insegura:
python3 -m http.server 8000 --bind 0.0.0.0
0.0.0.0 significa que el servicio escucha en todas las interfaces disponibles, incluida la interfaz NAT.
Configuración más segura:
python3 -m http.server 8000 --bind 192.168.56.10
Comprobación:
ss -lntp
Resultado esperado:
LISTEN 0 5 192.168.56.10:8000 0.0.0.0:*
Resultado menos seguro:
LISTEN 0 5 0.0.0.0:8000 0.0.0.0:*
También puede comprobarse una interfaz específica con:
sudo tcpdump -i eth1
Captura limitada a tráfico del laboratorio:
sudo tcpdump -i eth1 net 192.168.56.0/24
12. Redirección de puertos en NAT
VirtualBox permite redirigir un puerto del host hacia una máquina virtual NAT.
Ejemplo:
VBoxManage modifyvm "Kali Linux" \
--natpf1 "ssh,tcp,127.0.0.1,2222,,22"
Esto redirige:
127.0.0.1:2222 -> Kali:22
La dirección 127.0.0.1 limita la conexión al propio host.
Conexión:
ssh -p 2222 kali@127.0.0.1
Una configuración menos segura sería:
VBoxManage modifyvm "Kali Linux" \
--natpf1 "ssh,tcp,,2222,,22"
Al omitir la dirección del host, el puerto podría quedar escuchando en varias interfaces físicas.
Para eliminar la regla:
VBoxManage modifyvm "Kali Linux" \
--natpf1 delete "ssh"
No deben configurarse redirecciones hacia máquinas vulnerables salvo que exista una razón específica y controlada.
13. Desactivar IPv6 cuando no se utiliza
Un laboratorio configurado únicamente para IPv4 podría mantener conectividad IPv6 accidental.
Comprobación:
ip -6 address
Desactivación temporal:
sudo sysctl -w net.ipv6.conf.all.disable_ipv6=1
sudo sysctl -w net.ipv6.conf.default.disable_ipv6=1
Configuración persistente:
cat << 'EOF' |
sudo tee /etc/sysctl.d/98-disable-ipv6-lab.conf
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
EOF
Aplicación:
sudo sysctl --system
No es obligatorio desactivar IPv6, pero sí debe considerarse dentro del modelo de aislamiento.
14. Comprobaciones antes de iniciar las prácticas
En Kali:
ip -brief address
ip route
En el objetivo:
ip -brief address
ip route
Desde Kali, identificar los hosts del segmento aislado:
sudo nmap -sn 192.168.56.0/24
Comprobar que Kali tenga Internet:
curl -I https://example.com
Comprobar que el objetivo no tenga Internet:
curl --connect-timeout 5 https://example.com
Comprobar que el reenvío esté deshabilitado:
sysctl net.ipv4.ip_forward
Comprobar los puertos expuestos por Kali:
sudo ss -lntup
Verificar la configuración de VirtualBox:
VBoxManage showvminfo "Kali Linux"
Filtrar información relacionada con la red:
VBoxManage showvminfo "Kali Linux" |
grep -iE 'NIC|Attachment|Network'
15. Uso de instantáneas
Antes de realizar una prueba, conviene crear una instantánea de las máquinas virtuales.
Desde VirtualBox:
VBoxManage snapshot "Metasploitable" \
take "Estado limpio"
Listado:
VBoxManage snapshot "Metasploitable" list
Restauración:
VBoxManage snapshot "Metasploitable" \
restore "Estado limpio"
Las instantáneas permiten:
Revertir modificaciones.
Recuperar archivos dañados.
Deshacer cambios de configuración.
Restaurar servicios vulnerables.
Repetir una práctica desde el mismo estado.
No reemplazan una copia de seguridad, pero son esenciales en un laboratorio.
16. Carpetas compartidas, portapapeles y arrastrar archivos
La red no es el único canal de comunicación entre el host y las máquinas virtuales.
También deben controlarse:
Carpetas compartidas.
Portapapeles compartido.
Arrastrar y soltar.
Dispositivos USB.
Montaje automático.
Integraciones del hipervisor.
En una máquina vulnerable o utilizada para análisis de malware, es recomendable:
Portapapeles compartido: Desactivado
Arrastrar y soltar: Desactivado
Carpetas compartidas: Ninguna
USB: Desactivado
Para Kali puede utilizarse una carpeta compartida, pero debería contener únicamente archivos destinados al laboratorio.
Nunca deben compartirse directamente:
Documentos personales.
Claves SSH.
Contraseñas.
Repositorios privados.
Carteras digitales.
Directorios completos del usuario.
Archivos laborales o académicos sensibles.
17. DNS y resolución de nombres
En una red aislada puede asignarse un nombre local a cada máquina mediante /etc/hosts.
En Kali:
sudo nano /etc/hosts
Contenido:
192.168.56.20 metasploitable.lab
192.168.56.30 dvwa.lab
192.168.56.40 windows-lab.lab
Prueba:
ping -c 2 metasploitable.lab
Escaneo:
sudo nmap -sV metasploitable.lab
Esto evita depender de servidores DNS externos para identificar los sistemas del laboratorio.
18. Evitar rangos que coincidan con la red real
Si la red doméstica utiliza:
192.168.1.0/24
no conviene utilizar el mismo rango en Host-Only.
Es preferible elegir un rango diferente:
192.168.56.0/24
10.10.10.0/24
172.22.50.0/24
Comprobación de la red física del host en Windows:
ipconfig
Comprobación en Linux:
ip address
ip route
Ejemplo de conflicto:
Red doméstica: 192.168.1.0/24
Red del laboratorio: 192.168.1.0/24
Este solapamiento puede provocar:
Rutas incorrectas.
Escaneos contra equipos reales.
Dificultad para distinguir objetivos.
Pérdida de conectividad.
Exposición accidental.
19. Configuración avanzada con una máquina firewall
Para laboratorios más completos puede utilizarse una máquina virtual con pfSense, OPNsense o Linux como router controlado.
Ejemplo:
Internet
|
NAT
|
Firewall virtual
/ \
Red atacante Red víctima
10.10.10.0/24 10.20.20.0/24
| |
Kali Windows/Ubuntu
El firewall permite practicar:
Segmentación.
Reglas de entrada y salida.
Registros.
IDS e IPS.
Filtrado DNS.
Enrutamiento.
Simulación de DMZ.
Control del tráfico entre subredes.
Las máquinas vulnerables pueden permanecer en una red interna sin acceso directo a Internet.
20. Arquitecturas recomendadas
Laboratorio básico
Kali:
- NAT
- Host-Only
Objetivo:
- Host-Only
Laboratorio completamente aislado
Kali:
- Red interna
Objetivo:
- Red interna
Laboratorio segmentado
Kali:
- Red interna atacante
Firewall:
- Red interna atacante
- Red interna objetivo
- NAT opcional
Objetivo:
- Red interna objetivo
Laboratorio de malware
Analista:
- Red interna
Máquina infectada:
- Red interna
Internet:
- Desactivado
Carpetas compartidas:
- Desactivadas
Portapapeles:
- Desactivado
Lista final de seguridad
Antes de iniciar el laboratorio, verifica:
La máquina vulnerable no utiliza modo puente.
La máquina vulnerable no tiene NAT.
Kali utiliza NAT solo para actualizarse.
Kali y el objetivo se comunican por Host-Only o red interna.
El objetivo no tiene una ruta predeterminada hacia Internet.
El reenvío IP está desactivado.
No existen reglas de redirección de puertos innecesarias.
Los servicios escuchan únicamente en la interfaz del laboratorio.
Las carpetas compartidas están desactivadas o limitadas.
El portapapeles compartido está desactivado en máquinas de riesgo.
Se ha creado una instantánea limpia.
La red del laboratorio no coincide con la red doméstica.
Los escaneos se dirigen únicamente al rango autorizado.
Las máquinas virtuales y el hipervisor están actualizados.
No se almacenan archivos personales dentro de las máquinas vulnerables.
La configuración más recomendable para comenzar es utilizar NAT y Host-Only en Kali, y únicamente Host-Only en la máquina vulnerable. Para pruebas de mayor riesgo, debe utilizarse una red interna sin acceso al host ni a Internet.
Comentarios
Publicar un comentario