Categorías
MetaSploit Networking Services - Software Web Applications

Herramientas para Hacking en Entornos de Red – Hacking con SSH – Parte XIII

Vector de Ataque completo utilizando SSH y Aplicaciones Web Vulnerables.

Esta técnica consiste en la explotación de aplicaciones web con vulnerabilidades XSS y RFI, además de una mala practica en la configuración de un servicio SSH al establecer de forma inadecuada los permisos del fichero “auth.log” (aunque poco frecuente, personalmente he presenciado este tipo de fallos en entornos de “producción” y «altamente confiables»). Este vector de ataque consiste en primera instancia en la localización y explotación de vulnerabilidades RFI (Remote File Include) que dan la posibilidad a un atacante de incluir en el contexto de la navegación cualquier tipo de fichero almacenado en la maquina remota donde se encuentra en ejecución el servidor web, una vez localizada una vulnerabilidad de este tipo, se debe comprobar si es posible navegar por la estructura de directorios hacia el fichero de logs del servidor SSH, como se ha indicado en entradas anteriores el fichero de logs del servidor SSH es /var/log/auth.log en donde se almacenan todos los eventos relacionados con accesos remotos por medio de SSH entre otras cosas.

Categorías
Hacking Networking Services - Software

Herramientas para Hacking en Entornos de Red – Hacking con SSH – Parte XII

Creando Redes VPN utilizando SSH

Con OpenSSH es posible establecer redes virtuales privadas de una forma fácil y segura, una característica que pocas veces se menciona, pero sin embargo es bastante útil en un escenario típico de entornos con firewalls restrictivos. El concepto de red VPN indica que cuando se establece una red privada, el sistema operativo monta una interfaz de red “virtual” que se encuentra completamente abstraída de la(s) interface(s) de red que existan en la maquina, no obstante cuenta con una dirección IP valida que puede efectuar una conexión con una maquina remota.

Categorías
Hacking Networking Services - Software

Herramientas para Hacking en Entornos de Red – Hacking con SSH – Parte XI

ChrootJail con OpenSSH

Cuando se presta un servicio como SSH a usuarios externos (o incluso internos), existen una gran cantidad de riesgos que pueden causar daños importantes desde el robo de información sensible hasta la perdida de control sobre maquinas pertenecientes al segmento de red (cuando un atacante logra comprometer una red interna por medio de ataques inside-out). Todos estos indeseables efectos pueden ser causados simplemente por tener usuarios que “pueden acceder a mas recursos de los deberían”, por ejemplo si un desarrollador necesita ingresar a un servidor SSH, cabe preguntarse que directorios y que comandos podrá ejecutar dicho usuario en la maquina remota, es justo aquí donde entra en juego el concepto de “chroot-jail” el cual consiste básicamente en la definición de comandos, privilegios y directorios a los que puede acceder cada usuario que ingrese al sistema por medio de SSH. Esta no es una tarea trivial y requiere esfuerzo en determinar “la caja de herramientas” que tendrá el usuario enjaulado y los recursos a los que podrá acceder, por este motivo aunque aquí se indique un procedimiento básico para la creación un entorno chrooted, es necesario un análisis previo para determinar “que puede” y “que no puede” hacer el usuario enjaulado..

Categorías
Hacking Networking Services - Software

Herramientas para Hacking en Entornos de Red – Hacking con SSH – Parte X

Después de profundizar en el servicio SSH y OpenSSH de las ultimas entradas de este blog, es la oportunidad de intentar enseñar algunas técnicas empleadas por hackers (al referirnos a hackers, no significa que este colectivo siempre se encuentre en la posición de atacante). Se trata de algunas técnicas empleadas para comprometer/defender este tipo de servicios.

Categorías
Hacking Networking Services - Software

Herramientas para Hacking en Entornos de Red – Conceptos Básicos y Avanzados de SSH – Parte IX

En las entradas anteriores he intentado indicar un poco el uso de las características mas interesantes de OpenSSH y el protocolo SSH, dichas características permiten establecer de forma segura diversos tipos de conexiones y mecanismos de autenticación, así como diversos “tips” que son frecuentemente tomados por los administradores como medidas de seguridad que permiten a un servicio SSH prestarse con unos niveles mínimos de confianza sobre redes no confiables como por ejemplo Internet. En esta ocasión se intentará, como ya se ha dicho, profundizar un poco más en la utilización de SSH.

Categorías
Hacking Networking Services - Software

Herramientas para Hacking en Entornos de Red – Conceptos Básicos y Avanzados de SSH – Parte VIII

Forwarding de Conexiones SSH

SSH permite redireccionar muchos tipos de información desde un punto hacia otro de forma segura utilizando un canal cifrado (como todas las comunicaciones con SSH) este mecanismo también es conocido como port-forwarding y permite a clientes y servidores SSH abrir puertos para enrutar el trafico hacia un algún destino en la red.

Este mecanismo es utilizado con frecuencia para evadir restricciones de firewall y filtros establecidos en la red, de esta manera es posible recibir y enviar paquetes desde destinos que no se encuentran permitidos por firewalls o proxies de manera explicita. En general, la analogía del “enrutador de llamadas” en una linea telefónica clásica puede ser un ejemplo perfecto de este mecanismo, donde una conexión de entrada es recibida por un intermediario que lo único que hace es enviar la llamada a su correspondiente destino, esto es justo lo que hace un túnel SSH (port-forwarding). Ahora bien existen 3 tipos de túneles distintos estos son: Local, Remoto y Dinámico, La diferencia entre estos tipos de túneles radica principalmente en la dirección de la comunicación.

Categorías
Hacking Networking Services - Software

Herramientas para Hacking en Entornos de Red – Conceptos Básicos y Avanzados de SSH – Parte VII

Utilización de SSH-AGENT y SSH-ADD

En la entrada anterior de esta serie, se ha visto como establecer un mecanismo de autenticación basado en claves publicas y privadas utilizando RSA como algoritmo de cifrado, sin embargo con OpenSSH este mecanismo puede ser optimizado gracias a las utilidades SSH-AGENT y SSH-ADD que permiten cargar en la maquina del cliente la clave para conectarse con el servidor para que de esta forma, no sea necesario ingresar una y otra vez la passphrase de la clave. SSH-AGENT permite cachear las credenciales de acceso para establecer una sesión con un servidor SSH, es un programa que almacena las claves privadas de un cliente para utilizar autenticación publica utilizando RSA o DSA. Por otro lado SSH-ADD es utilizado para adicionar identidades RSA o DSA al agente de autenticación.

Categorías
Hacking Networking Services - Software

Herramientas para Hacking en Entornos de Red – Conceptos Básicos y Avanzados de SSH – Parte VI

Continuando con esta serie de entradas correspondientes a OpenSSH/SSH en esta entrada se tratarán otras características interesantes en OpenSSH relacionadas con las medidas de seguridad que se pueden llevar a cabo, túneles y conceptos relacionados con generación de claves entre otras cosas.

Categorías
Hacking Networking Services - Software

Herramientas para Hacking en Entornos de Red – Conceptos Básicos y Avanzados de SSH – Parte V

En ocasiones un administrador de sistemas tiene que realizar actividades de mantenimiento o acceso a información que se encuentra ubicada en servidores remotos, antiguamente, como ya se ha comentado en post anteriores, para el acceso a maquinas remotas se solía implementar soluciones como Telnet, sin embargo debido a las vulnerabilidades encontradas en dicha herramienta, rápidamente los administradores de sistemas optarón por un enfoque distinto donde la seguridad en el canal de comunicación y la transmisión de datos tuviera unos mínimos de seguridad, con esta idea, surgió SSH (Secure Shell).

Categorías
Hacking Networking Services - Software

Herramientas para Hacking en Entornos de Red – Tipos de Conexiones Avanzadas con Socat (SSL, Sockets, Proxy)- Parte IV

En las entradas anteriores se ha indicado el uso de Socat con algunos ejemplos básicos que permiten comprender su funcionamiento de una forma sencilla y practica, sin embargo, Socat es una herramienta bastante sofisticada para diferentes tareas en un entorno de red, por este motivo se van a dedicar unas cuantas entradas enfocadas en Socat y en sus funcionalidades un poco más avanzadas, con esto se definirán las bases de un próximo post que es bastante interesante, será sobre como utilizar Socat y otras herramientas para evadir IDS, Firewalls y proxys en un entorno de red restrictivo, como frecuentemente es un entorno de red empresarial, donde los empleados tienen fuertes restricciones de conectividad a determinados servicios y sitios en internet, utilizando Socat y siendo un poco creativos se pueden conseguir unos resultados muy interesantes.