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

viernes, 12 de agosto de 2016

Pentesting a la abeja (Parte II)

Buenas hackers! En este CTF vamos a hacer un pentesting a esta maquina de Vulnhub
Es una maquina muy completa que permite realizar un test de intrusión al servidor, además de hacer retos de pentesting web tal como SQLi, XSS, LFI etc...



----------------
bee-box - README
----------------

bee-box is a custom Linux VM pre-installed with bWAPP.

With bee-box you have the opportunity to explore all bWAPP vulnerabilities!
bee-box gives you several ways to hack and deface the bWAPP website.
It's even possible to hack the bee-box to get root access...

This project is part of the ITSEC GAMES project. ITSEC GAMES are a fun approach to IT security education. 
IT security, ethical hacking, training and fun... all mixed together.
You can find more about the ITSEC GAMES and bWAPP projects on our blog.

We offer a 2-day comprehensive web security course 'Attacking & Defending Web Apps with bWAPP'.
This course can be scheduled on demand, at your location!
More info: http://goo.gl/ASuPa1 (pdf)

Enjoy!

Cheers

Malik Mesellem
Twitter: @MME_IT
 

Atención Spoiler!!

 
Usaremos hydra para poder obtener la contraseña atacando el servicio VNC por el puerto especificado, pero puede ser usado para muchos servicios; rdp, ftp, smtp, imap o telnet entre otros.
El servicio VNC, básicamente tiene una estructura servidor-cliente el cual permite tomar el control del servidor remotamente a través de un host cliente con un software especifico. Este softwarte es también denominado escritorio remoto.
El diccionario que usaremos sera rockyou disponible en Kali Linux, con el parametro -P por el puerto 5901 y la ip dada.
Una vez encontrado la contraseña, por cierto muy sencilla y usando una politica de contraseñas muy debil en la cual en todo momento cualquier persona o administrador de un sistema tiene que evitar.
En kali linux la herramienta vncviewer esta instalada por defecto.
 
Es mas interesante desde vncviewer conectarnos a nosotros, es decir a mi host mediante el uso de netcat:
Creamos el socket para hacer de servidor y estar a la escucha de peticiones con el parametro -l y un puerto determinado.
Desde el vncviewer hacemos la conexión al puerto especificado y la IP determinada, con un interprete bash de linux.
Obtendremos la shell de root gracias a nc por el puerto especifico. Ahora se ejecuta una serie de comandos y mediante una sentencia en python obtenemos un entorno pseudo terminal importando el modulo pty indicando la ruta del interprete de bash.

Ejecutamos una serie de comandos desde root, el primero para encontrar archivos setuid.
Setuid: Son permisos de acceso que pueden asignarse a archivos o directorios en un sistema operativo basado en Unix.
Se utilizan principalmente para permitir a los usuarios del sistema ejecutar binarios con privilegios elevados temporalmente para realizar una tarea específica.
Esta propiedad es necesaria para que los usuarios normales puedan realizar tareas que requieran privilegios más altos que los que dispone un usuario común, por lo cual es muy interesante cuando tenemos acceso como usuario en un servidor y queremos ejecutar o modificar algun tipo de binario o archivo para poder escalar privilegios. En este caso no es necesario porque somos ya root, pero para otros vídeos de CTF que hice y haré, vereis de la importancia de localizarlos con:

find / -perm -4000 -o -perm -2000 -exec ls -ldb {} \;

También se verá John the Ripper para obtener en texto plano los hashes, del fichero /etc/shadow.


 Un saludo Naivenom


miércoles, 10 de agosto de 2016

Pentesting a la abeja (Parte I)

Buenas hackers! En este CTF vamos a hacer un pentesting a esta maquina de Vulnhub
Es una maquina muy completa que permite realizar un test de intrusión al servidor, además de hacer retos de pentesting web tal como SQLi, XSS, LFI etc...



----------------
bee-box - README
----------------

bee-box is a custom Linux VM pre-installed with bWAPP.

With bee-box you have the opportunity to explore all bWAPP vulnerabilities!
bee-box gives you several ways to hack and deface the bWAPP website.
It's even possible to hack the bee-box to get root access...

This project is part of the ITSEC GAMES project. ITSEC GAMES are a fun approach to IT security education. 
IT security, ethical hacking, training and fun... all mixed together.
You can find more about the ITSEC GAMES and bWAPP projects on our blog.

We offer a 2-day comprehensive web security course 'Attacking & Defending Web Apps with bWAPP'.
This course can be scheduled on demand, at your location!
More info: http://goo.gl/ASuPa1 (pdf)

Enjoy!

Cheers

Malik Mesellem
Twitter: @MME_IT
 

Atención Spoiler!!

Se verá dirbuster para realizar una busqueda mediante fuerza bruta en directorios y archivos del servidor. Existen distintos diccionarios en la carpeta wordlists sobre esta herramienta.
Una vez visto con dirbuster el listado de directorios obtenidos y garantizado un metodo de acceso para poder subir un backdoor, vamos a iniciar el metasploit para comprobar FTP por el puerto 21, y asi un medio de subida al servidor.
Con el usuario anonymous se aprecia que tiene permisos de lectura y escritura, y por tanto que esta habilitado este tipo de usuario en el servidor FTP, muy usado en las organizaciones para acceso publico.
Se crea un backdoor en php, para poder obtener una shell reversa, con msfvenom.
Una vez subido necesitamos tener el exploit multi/handler a la escucha de la conexión inversa o payload creado con msfvenom en php. Por tanto tenemos que elegir el payload que usamos para crear ese rabbit.php
Una vez a la escucha, abrimos el navegador y enviamos una peticion http clickeando el archivo rabbit.php y asi se nos abrira una sesion meterpreter a nivel usuario del servidor.


Un saludo Naivenom

lunes, 11 de abril de 2016

Guia Metasploitable 2: Parte 3


Hola hackers!!

Ésta es la tercera y última parte de la guía Metasploitable 2. En la segunda parte vimos como explotar las diferentes aplicaciones web que nos ofrece Metasploitable.
Retomaremos  la guía en el puerto 445, que es el siguiente en el escaneo con Nmap realizado en la primera parte de la guía.


PUERTO 445 SAMBA

Samba es el equivalente al SMB de Windows en los sistemas Unix. Permite compartir archivos e impresoras en una red local.
Para este puerto disponemos de varios escáneres en Metasploit mediante los que obtener información del servicio.

  • smb_version: nos muestra la versión del SMB.

Establecemos la IP de la máquina objetivo en RHOSTS y ejecutamos el escáner con el comando run. En este caso se trata de Samba 3.0.20-Debian.

  • smb_enumusers: mediante este escáner obtenemos los nombres de usuario de Metasploitable.

Hemos obtenido una buena lista de nombres de usuario con los que crear un diccionario por ejemplo para realizar un futuro ataque de fuerza bruta.

  • smb_enumshares: obtendremos las carpetas compartidas del objetivo.


Además de los escaneres, disponemos de un exploit mediante el cual obtendremos una shell con privilegios root.

Configuración del exploit.

Shell con privilegios root.



PUERTOS 512, 513, 514 SERVICIOS "r"

Estos servicios son herramientas con una parte cliente y otra servidor que permiten la conexión remota entre máquinas (terminal remota y trasferencia de archivos).

El puerto 513 corresponde a rlogin y se utiliza como terminal virtual (parecido a telnet).
El puerto 514 (rsh) es utilizado para ejecutar comandos en una máquina remota sin necesidad de acceder a ella.

Estos servicios han sido configurados erróneamente para permitir el acceso remoto desde cualquier máquina. Para aprovechar ésta mala configuración, nos conectaremos al puerto 513 mediante el cliente rsh-client y como usuario root (al no ser necesario introducir la contraseña).

 Conexión por el puerto 513.


PUERTO 1099 JAVA-RMI

Se trata de un mecanismo de Java para invocar un método de forma remota. Proporciona una forma simple de comunicación entre servidores en aplicaciones basadas exxclusivamente en Java (para la comunicación entre otras tecnologías debe utilizarse CORBA o SOAP).

Para la explotación de este puerto disponemos de un exploit en Metasploit.

 Configuración del exploit.

 Shell obtenida con privilegios root.



PUERTO 2049 NFS 

Este puerto se utiliza para que cualquier aplicación pueda acceder al sistema de archivos NFS (Network File System). Un atacante podría utilizar este puerto para montar un disco virtual y accceder a éste como si fuera de manera local permitiéndole ver y modificar archivos.

Para poner esto en práctica, primero veremos los directorios compartidos del equipo remoto mediante el comando showmount.

 Directorios compartidos.

 En este caso tiene el directorio raiz / compartido. Lo siguiente será crear una carpeta en nuestro equipo y montar el directorio remoto en ella.


Como podéis ver en la captura anterior, una vez tenemos el directorio montado, podemos acceder a él y ver o modificar lo que queramos como si se tratara de una carpeta de nuestro pc.


PUERTO 3306 MYSQL

Éste puerto es el utilizado por el servidor de bases de datos MySQL. Actualmente es el sistema de gestión de bases de datos más popular, principalmente en sitios de internet.

Si le pasamos un escáner de vulnerabilidades como Nessus, éste nos indica que es posible conectarse a la db sin necesidad de contraseña.


Una vez dentro podemos hacer lo que queramos puesto que disponemos de privilegios root.



PUERTO 5432 POSTGRESQL

PostgreSQL es un sistema de gestión de bases de datos relacional orientada a objetos y de código abierto.

En Metasploit disponemos de un auxiliar con el que hacer un ataque por fuerza bruta para intentar obtener usuario y contraseña.


  • PASS_FILE: archivo con la lista de contraseñas para probar (una contraseña por linea).
  • USERPASS_FILE: archivo con una lista de usuario contraseña (separados por un espacio y un par usuario/contraseña por linea).
  • USER_FILE: archivo con una lista de nombres de usuario (uno por linea).
Además de las opciones anteriores, debemos establecer RHOSTS con la IP del objetivo y los THREADS (número de palabras que probará cada vez) para que, en caso de tener unas listas muy extensas, no tarde mucho en comprobarlas.

 Usuario y contraseña encontrados!!

Además del auxiliar visto, disponemos de un exploit mediante el cual obtendremos la tan ansiada shell.

 Configuración del exploit.

Aprovechamos  que tenemos los credenciales obtenidos con el auxiliar e introducimos usuario y contraseña en las opciones del exploit, junto con RHOST.

Con todo configurado, lanzamos el exploit.

 Shell sin privilegios.

Ahora mismo no disponemos de privilegios root, para ello, en esta ocasión, vamos a utilizar el exploit udev_netlink. 

En la captura anterior podéis ver que el último comando introducido es background, esto es así porque para usar el siguiente exploit, es necesario tener una sesión previa, con background dejamos la sesión en segundo plano pero abierta.

 Shell con privilegios root.


Establecemos el número de la sesión (opción SESSION) obtenida anteriormente y que tenemos en background (para ver el número de sesión utilizamos el comando sessions -l), y una carpeta (opción WritableDir) con permisos para escritura(/tmp).

Lanzamos el exploit y ya tendremos la shell con privilegios root.


PUERTO 5900 VNC

VNC es un software libre de escritorio remoto, basado en una estructura cliente-servidor el cual permite tomar el control del servidor remotamente a través del cliente, pudiendo compartir la pantalla, controlar el ratón y teclado, en definitiva como si estuviéramos en frente del pc.

Analizando la máquina Metasploitable 2 con Nessus, éste nos indica que la contraseña para el servicio VNC es "password". Nos conectaremos con un cliente vncviewer.

VNCViewer con privilegios root. 


PUERTO 6667 IRC

Se llama IRC a una red de comunicación en tiempo real en la que puedes hablar con varios usuarios a la vez. Estos usuarios están conectados a una de las redes IRC como puede ser freenode, Hispano, etc. Éstas a su vez están divididas en canales de diferentes temáticas.

Existe un exploit en Metasploit que aprovecha un backdoor malicioso añadido al archivo Unreal3.2.8.1.tar.gz entre Noviembre 2009 y Junio 2010.

Configuración del exploit.

Shell con privilegios root.


PUERTO 8180 TOMCAT

Apache Tomcat funciona como un contenedor web con soporte de servlets (servlet: clase en el lenguaje de programación Java utilizada para ampliar las capacidades de un servidor). Tomcat puede funcionar como un servidor web por sí mismo.

Primero intentaremos obtener algo de información mediante el auxiliar tomcat_administration.

Credenciales obtenidos.

Con los credenciales en nuestro poder, podemos usar el exploit Apache Tomcat Manager Application Deployer Authenticated Code Execution. Éste exploit puede usarse tanto en plataformas Windows como Unix, cambiando el payload acorde a la plataforma.

Configuración del exploit.

Configuramos los campos PASSWORD y USERNAME con los credenciales obtenidos anteriormente, los típicos RHOST/RPORT con la IP y puerto de la máquina objetivo y LHOST/LPORT con la IP y puerto de la máquina atacante. Lanzamos el exploit.

Shell obtenida sin privilegios.

Para escalar privilegios podemos usar el exploit visto anteriormente (udev_netlink).


Hasta aquí la última entrega de ésta guía Metasploitable 2. Espero que os haya sido de utilidad y hayáis aprendido con ella. Como siempre está hecha con fines únicamente educativos, no nos hacemos responsables del mal uso que se le pueda dar. 

Un saludo.

Google Analytics