MOSH, mas allá del SSH

A día de hoy, no creo que sea necesario mencionar qué es el protocolo SSH (Secure Socket Shell) ya que sería realmente complicado vivir actualmente sin él. Por ello, se considera SSH a nivel global como la “mega” herramienta indispensable para cualquier labor de administración. Entre las ventajas de su uso podemos encontrar: acceso seguro a máquinas remotas, acceso a servicios en otras máquinas mediante la creación de túneles directos o reversos, creación de proxy socks, creación de canales seguros para la encapsulación de trafico de aplicaciones no seguras… etc.

Entre las inumerables ventajas de este protocolo, existe un punto que en ocasiones puede ser un gran inconveniente, el rendimiento de la conexión.

Para intentar dar solución a éste problema y añadir mejoras, surgió Mosh (mobile shell), aplicación que aporta diversas ventajas sobre la conexión SSH tradicional. Fue presentada en el USENIX Annual Technical Conference 2012 por Keith Winstein & Hari Balakrishnan, M.I.T. Computer Science and Artificial Intelligence Laboratory.

[Read more…]

Bastionando SSH II

dg0Hoy en día existen multitud de máquinas que funcionan con un sistema operativo derivado de Unix como puede ser BSD, MacOS, HP-UX, Solaris, Linux (y derivados de ellos). Aparte de los sistemas mencionados, existe una gran cantidad de dispositivos que funcionan bajo un sistema Linux embebido, como por ejemplo un router/AP Wifi. Una de las principales ventajas que siempre he encontrado en todos los sistemas mencionados es que normalmente siempre tienen accesible una consola de administración remota, lo que comúnmente se ha llamado “un ssh”.

Puesto que este servicio da acceso a la máquina y “potencialmente” a las entrañas del sistema, es necesario darle un repaso a su configuración y “perder” tiempo en bastionarlo adecuadamente para evitar sustos.

Normalmente se hace más hincapié en bastionar servidores, pero no hay que olvidar que un router con el servicio ssh no bastionado y publicado al mundo exterior puede ser el punto de entrada a nuestra organización.

[Read more…]

¿Seguro que lo has borrado?

En estos tiempos que corren no creo que nadie se extrañe por decir que los ficheros eliminados de un sistema se pueden recuperar. De manera muy breve, diremos que cuando se elimina un fichero, lo único que se pierde es el acceso al mismo, es decir, se marcan los clúster o bloques como disponibles, pero el contenido íntegro del fichero sigue estando en el disco duro, pendrive, tarjeta de memoria o cualquiera que sea el medio de almacenamiento hasta que sea sobrescrito. Si hacemos el típico símil con una biblioteca, al eliminar un fichero, lo único que se destruye es la ficha que nos apunta hacia el libro en la estantería, pero el libro sigue en el mismo sitio y si somos meticulosos y pacientes, acabaremos por encontrarlo.

Independientemente de si al borrar seleccionamos enviarlo a la papelera de reciclaje  o eliminarlo de manera permanente, el fichero en ninguno de los dos casos desaparecerá del soporte de almacenamiento.

[Read more…]

Recopilación de información (Information gathering) sobre Logs de Proxy (II)

La semana pasada estuvimos viendo LightSquid y SquidAnalyzer como herramientas de análisis de logs para Squid. Una tercera herramienta interesante es:

SARG (Squid Analysis Report Generator)

Esta aplicación se encuentra implantada en multitud de organizaciones y al igual que SquidAnalyzer se encuentra actualmente en desarrollo. Como punto fuerte, podemos señalar la velocidad de procesamiento, gracias a que se trata de una aplicación compilada.

[Read more…]

Recopilación de información (Information gathering) sobre Logs de Proxy (I)

Uno de los elementos principales a la hora de gestionar el tráfico de una red es mediante la implantación de un proxy. De manera muy simple podemos considerarlo como un sistema que hará de “intermediario” entre clientes y servidores. Es decir, el cliente no accederá directamente a Internet, sino que a la hora de visitar un sitio web, realizará una petición al proxy y será éste el que navegue hacia el sitio web y le reenvíe la respuesta al cliente.

Tener implantado un proxy implica que todo el tráfico de los clientes que accedan a Internet, pasará a través de él y (por tanto) estará siendo monitorizado. Podemos pensar que la implantación de un proxy en una organización tiene como objeto llevar un control de la navegación de los usuarios, y aunque en parte puede ser cierto (lo que tiene sus implicaciones legales que no vamos a tratar aquí), también hay que decir que mediante una configuración adecuada de éste se puede evitar que los empleados accedan a sitios no permitidos, ya sea porque no sean recursos necesarios para el desempeño correcto de su trabajo o porque conlleven un peligro para la seguridad de la infraestructura de la organización.

Debemos recordar que con el simple hecho de acceder a un sitio web, si éste está contaminado y alberga un kit de exploits para diferentes navegadores y versiones, el cliente puede quedar automáticamente infectado en el caso de que su navegador o alguno de sus plugins posea alguna vulnerabilidad no parcheada. Lo que, como todos sabemos, es más frecuente de lo deseable.

Entremos en materia. Imaginemos que hace unos días, a partir de una revisión rutinaria del log del proxy, se detectó que varios empleados de la empresa estaban haciendo un consumo de decenas de gigabytes diarios cada uno. Lógicamente, esta revisión no se hace de manera manual y para ello existen diferentes alternativas que podremos usar para tener la información del proxy categorizada y ordenada. En este y el siguiente post veremos tres aplicaciones de análisis de logs para squid. Para llevar a cabo las pruebas se ha utilizado Kali sobre la que se han desplegado las aplicaciones. El objeto de este post no es detallar el proceso de instalación por lo que este paso queda como ejercicio para el lector (ejercicio sencillo, en cualquier caso).

LightSquid

LightSquid se trata de un conjunto de cgi y scripts en perl que se despliegan en el servidor web, y aunque a priori no ofrezca una interfaz muy moderna ni elegante, se trata de un buen aliado por rapidez y sencillez.

Si accedemos al día en particular nos aparecerá un listado con los usuarios.

Una funcionalidad interesante de lightsquid es que muestra una tabla con las horas de navegación de cada usuario.

La aplicación también mantiene listados de sitios navegados por mayor número de usuarios, ficheros de mayor tamaño descargado, así como listados de usuarios que han visitado determinado sitio. Lamentablemente es una aplicación sin desarrollo actualmente.

SquidAnalyzer

SquidAnalyzer es otro analizador de logs de squid hecho en perl, con mayores funcionalidades que el anterior y con una interfaz más elegante y cuidada (que vale, eso tampoco es muy difícil). Una vez seleccionado el periodo, nos aparecerá una pantalla resumen de la actividad durante el mismo.

En la parte superior, tendremos un menú en el que se nos mostrarán estadísticas de usuarios, URLs, dominios, recursos (agrupados por mimetype).

Una de las características más interesantes de este analizador es que es capaz de agrupar las peticiones por segmento de red, con lo que obtendremos un punto más de granularidad a la hora de hacer estadísticas de uso.

Accediendo a través de las subredes, obtendremos un listado de actividad de usuarios, tiempos de navegación, peticiones realizadas…

Una vez seleccionado el usuario, nos mostrará en detalle la actividad del mismo.

Aparte, podemos obtener estadísticas de tipo de ficheros mas descargados.

Por último podremos tener una vista general de sitios web con mayor actividad.

En la próxima entrada veremos SARG (Squid Analysis Report Generator) y analizaremos cómo encaja todo esto con el mundo de la seguridad.