Mantra es una colección de más de 40 herramientas gratuitas y libres integradas en un Navegador Web. Es decir, es un navegador web, gratis y de código abierto, diseñado para pruebas de seguridad. Se trata de un proyecto amparado por OWASP (Open Web Application Security Project), y liderado por Abhi M Balakrishnan y Yashartha Chaturvedi.
Se trata de una herramienta muy útil para penetration testers, desarrolladores de aplicaciones web, profesionales de la seguridad de la información o incluso administradores de sistemas, dada la variedad de utilidades que están incluidas. Nos va a permitir gestionar y modificar la información de las cookies, utilizarlo en una auditoria de seguridad durante la etapa de fingerprinting para recopilar información, interceptar las peticiones GET/POST, modificar el campo User-Agent del navegador o conectarnos a nuestras máquinas por SSH o FTP, entre otras cosas.
Mantra está desarrollado a partir de Firefox, modificando la apariencia original de este, y añadiéndole una serie de plugins que nos van a permitir:
- Manipular cabeceras HTTP
- Fingerprinting WEB (similar a Wappalyzer)
- Interceptación de peticiones GET y POST
- Manipular inputs de entrada
- Sustitución del User-Agent
- Capacidad para operar con Proxys
- Editar cookies del navegador (cookies manager +)
- Comprobaciones (básicas) de inyecciones
Descargar e instalar Mantra
En la página de descargas de Mantra encontraremos versiones para Windows, Linux y Mac:
La instalación en windows es bastante sencilla. Al hacer doble click en el instalador vamos a poder elegir el idioma en el que queremos que se instale, y la ruta dónde queremos instalarlo. En esa ruta nos va a crear una carpeta con la versión 'portable' de mantra.
Qué pruebas podemos hacer con Mantra
Mantra pone a nuestra disposición una selección de las mejores extensiones de Firefox para pruebas de seguridad web, en un sentido muy amplio. Nos va a permitir modificar cabeceras, manipular cadenas de entrada, reemplazar peticiones GET y POST, editar cookies, utilizar diferentes tipos de proxy y obtener mucha información de los sitios web que probamos, de una manera más rápida y sencilla.
Al abrir el navegador Mantra y navegar a cualquier sitio web empezaremos a obtener información interesante:
Como podéis ver, a la derecha de la barra de navegación ya nos está mostrando información interesante sobre las tecnologías usadas en esta web: Google Analytics, comScore analytics, Backbone.js, Chartbeat, jQuery, Modernizr, RequireJS, Underscore.js, y la ubicación del servidor.
Hackbar es una herramienta creada por Johan Adriaans y Pedro Laguna para facilitar ciertas pruebas de inyección de código que requieren saltarse filtros de codificación. Entre otras cosas, este plugin te va a permitir codificar y decodificar diferentes tipos de cifrado. Aquí tenéis un vídeo con más información sobre cómo usar Hackbar.
Foxy Proxy es un plugin de tipo proxy para Firefox. Proporciona una configuración bastante más completa que la del propio navegador por defecto, ampliándola por ejemplo para generar listas blancas/negras, o incluso permitiendo incorporar patrones de direcciones con expresiones regulares, asteriscos, etc. Lo habitual será configurar Foxy Proxy de manera que nos permita, por ejemplo, simular una ubicación diferente de la nuestra. Otro proxy incluido con Mantra es Proxy Tool, un potente proxy orientado a facilitar nuestro anonimato en internet, con rotación automática de proxys:
El último proxy incluido es Tamper Data. Tamper Data nos permite ver y modificar las cabeceras HTTP/HTTPS y modificar los parámetros POST. Puede ser muy útil a la hora de comprobar que las validaciones se hacen tanto en el lado del cliente como en el servidor.
Live HTTP Headers nos permite ver la información de las cabeceras HTTP de los sitios que visitemos. La información que obtengamos con este plugin puede ser utilizada después en combinación con otras herramientas, o puede mostrarnos errores en la configuración de nuestros servidores.
Con Cookies Manager + podremos gestionar nuestras cookies, de manera que podamos visualizar la configuración de nuestras sesiones, o suplantar cookies durante un ataque de tipo hijacking de sesión.
FireSSH convierte nuestro navegador en un cliente SSH. De esta forma no necesitamos salir de nuestro navegador ni siquiera para conectarnos a las máquinas por SSH. Su uso es muy sencillo, basta con introducir en las casillas los datos de conexión del servidor SSH.
Por supuesto, si no necesitamos salir del navegador para conectarnos por SSH, pues tampoco para conectarnos por FTP, gracias al plugin FireFTP. Soporta comparación de directorios, SFTP, SSL, hashing, etc.
Si lo que queremos es hacer pruebas de tipo SQL Injection, podemos usar SQL Inject Me. Esta herramienta sustituye los valores de los formularios web por valores representativos de un ataque SQL Injection, envía el formulario, y busca mensajes de error renderizados dentro del HTML de la página. Es un plugin que nos ayuda a encontrar posibles puntos vulnerables a este tipo de ataque.
User Agent Switcher es un plugin con el que podemos modificar el user agent con el que navegamos, de manera que podamos verificar cómo se comporta el sitio web bajo pruebas ante determinados casos, como dispositivos móviles, web crawlers de los buscadores, lectores de pantalla o navegadores en Braille usados por personas con discapacidades.
Más herramientas interesantes incluidas son QuickNote, DomainTools y Netcracft. También nos da la posibilidad de lanzar Fiddler desde el navegador. Os dejo un enlace a la lista de todas las herramientas incluidas en Mantra.
Aspectos positivos
Dicho todo lo anterior, resumiría los aspectos positivos en que Mantra pone a nuestra disposición un montón de herramientas muy útiles para determinadas pruebas sobre aplicaciones y sitios web, sin necesidad de realizar nosotros esa búsqueda de herramientas, y sin tener que instalarlas.
Otro aspecto interesante de Mantra está en su sección de marcadores, que tras su instalación ya contiene un montón de recursos muy útiles sobre revistas de hacking, metodologías, OSINT, y otros enlaces interesantes relacionados con la seguridad web.
Aspectos negativos
El principal problema de Mantra es que el proyecto está bastante parado. Además de esto, está basado en una versión de Firefox que podríamos considerar casi obsoleta y, aunque nos da la opción de actualizar, esto acaba generando un error que hace que deje de funcionar.
Una alternativa podría ser instalar todos estos plugins, o al menos los que necesitemos, en una versión actual de Firefox.
Existe una versión de Mantra sobre Chrome, sólo disponible para Windows, y está en una fase de desarrollo muy inicial. Dicho esto, si queremos una "alternativa" a Mantra, pero en Chrome, podemos instalar algunas de estas extensiones, o similares, disponibles para este navegador. Algunas de las extensiones más interesantes para Chrome serían: