Buenos días, el día de hoy vamos a ver como usar herramientas de hacking para vulnerar Bludit (https://www.bludit.com/es/). Bludit es una aplicación web para construir nuestro propio sitio web o blog en segundos; Es completamente gratuito y de código abierto, podemos encontrar el repositorio en GitHub (https://github.com/bludit/bludit). Bludit es un CMS de archivo plano, que (en este caso) significa que Bludit usa archivos en formato JSON para almacenar el contenido. No necesita instalar o configurar una base de datos; solo necesita un servidor web con soporte PHP.
Para iniciar con el proceso de hacking de esta aplicación iniciaremos con el reconocimiento tenemos que identificar toda la información relevante de la aplicación, como, en que lenguaje esta programada, quienes son los desarrolladores, si tiene exploit conocidos, si existen vulnerabilidades conocidas, etc.
Como parte de tu investigación debes de considerar consultar las siguientes fuentes https://cve.mitre.org/ , https://www.cvedetails.com/ , https://www.exploit-db.com/
, además de consultar los issues y pull requests del repositorio oficial para comprobar si se reportaron o solucionaron vulnerabilidades en el código fuente y en qué versiones fueron solucionadas.
En el caso de bludit tenemos suerte ya que todo lo que necesitamos se encuentra en los issues del repositorio.
Nos dirigimos al repositorio de bludit en la sección de issues y filtramos por vulnerability buscamos las que mas nos interesen
En los resultados de la búsqueda nos llama la atención un bypass que nos permite realizar ataques de fuerza bruta y que se solucionaron muchas vulnerabilidades que respecto al método para subir archivos las cuales tienen la capacidad de desencadenar ejecución de código.
Bypass anti-brutefoce https://github.com/bludit/bludit/pull/1090
Upload files https://github.com/bludit/bludit/issues/1079
Bypass anti-brutefoce
El usuario @rastating hizo un excelente trabajo documentando los detalles de esta vulnerabilidad. El usuario reporto: Debido a la forma en que se maneja la detección de la dirección IP, el mecanismo puede omitirse por completo. Los headers X-Fordered-For y Client-IP se verifican (para intentar detectar la dirección IP de las personas detrás de los servidores proxy). Desafortunadamente, ambos headers se pueden suplantar fácilmente, y para un atacante que ejecuta una ataque de fuerza bruta automatizado. El mismo usuario compartió un script en Python el cual modificaremos para nuestras necesidades.
En el script sustituiremos el host, el usuario y el customword. (Pro-Tip: si estas aquí buscando una solución para cierta maquina de un famoso laboratorio de pentest puedes usar nikto o wfuzz para encontrar los archivos .txt en el server y usa cewl para generar una lista de posibles contraseñas ;) ).
Ahora que tenemos acceso a la aplicación podemos explotar otra vulnerabilidad, en concreto la que nos permite subir archivos de forma insegura.
Upload files https://github.com/bludit/bludit/issues/1079
Para conseguirlo vamos a seguir los pasos que indica el usuario christasa
el usuario describe que la vulnerabilidad radica en la función upload "/admin/ajax/upload-files" los usuarios con el rol de editor pueden subir archivos de imágenes, un atacante puede modificar esta petición y modificar el nombre de la imagen y el contenido para subir código malicioso.
Vamos a abrir una nueva sesión en nuestro ZAP proxy y le vamos a dar en escaneo manual y launch browser.
Abrimos nuestro bludit e iniciamos sesión, abrimos new content
Hacemos clic en images para subir una nueva imagen y buscamos cualquier imagen de nuestra maquina, la seleccionamos y la subimos.
hacemos clic en insert.
Ahora vamos a ZAP para ver la captura de trafico de la función "/admin/ajax/upload-files"
Buscamos la petición en la sección del historial y la vamos a reenviar.
Modificamos el contenido de la imagen por nuestro archivo php y le damos send y subiremos el archivo .htaccess.
RewriteEngine off
Con estos pasos guardamos nuestros archivos en /bl-content/tmp/
Estoy encontrando cosas nuevas en esto que comienzo de aplicaciones, algo así decían en evento en Guadalajara y ahora si veo como aplicar los codigos.
ResponderBorrar