Apache Example Servlet leads to $
Last updated
Last updated
https://infosecwriteups.com/apache-example-servlet-leads-to-61a2720cac20
¡Hola amigos, espero que estén bien durante estos días de cuarentena! Ha pasado bastante tiempo que blogueé sobre algo.
Entonces, ¡hay una vulnerabilidad interesante que encontré últimamente y quiero compartirla con ustedes!
Pero primero, ¡conozcamos qué son los ejemplos de Apache!
Los ejemplos de Apache Tomcat son parte de la página de instalación predeterminada de Tomcat que aparece justo cuando instala la aplicación por primera vez. Se recomienda eliminar esta página lo antes posible para estar más seguro.
Ruta: sitio.com/ejemplos
O site.com/tomcat-dir/examples
En primer lugar, me gustaría hacer referencia a otra publicación de blog de Rapid7:
Tiene una lista de páginas potencialmente vulnerables a problemas de XSS. Aunque en mi caso no tuve tanta suerte :/
De todos modos, había 3 servlets disponibles:
Ejemplos de servlets
Ejemplos JSP
Ejemplos de WebSockets
Primero, busqué los ejemplos de Websocket.
Había una funcionalidad como se describe a continuación, que permitía conectarse a un servidor WSS (WebSocket) externo y posiblemente mostrar mensajes aquí. Pero dado que esto estaba en un subdominio aislado, lejos de la aplicación principal, CSWSH (Cross-Site-Websocket-Hijacking) no tendría mucho impacto aquí. Aún así, se inició una conexión externa aquí (explotable al conectarse a su propio servidor WSS)
Tuve una charla rápida con hakluke sobre el impacto, dijo lo mismo y aclaró mis dudas con algunas preguntas suyas y compartió algo de su valiosa experiencia: D.
¡Hacia adelante! Miré el JSP Servlet para encontrar algo más que XSS
¡Hmmm! Interesante pero nada tan impactante. Es muy posible que haya vulnerabilidades en este Servlet JSP, pero no encontré ningún campo de entrada receptivo. ¡Tan, DESTRUIDO!
Luego, finalmente pasé a los Ejemplos de Servlets.
Primero, probé el ejemplo del contador de bytes, ya que tenía una funcionalidad de carga. Pero pero pero pero pero mala suerte :( No hay éxito aquí también. Si ustedes encuentran esto en la naturaleza, siéntanse libres de usar sus ideas, traten de obtener un exploit aquí y quizás también me hagan un ping) :P
Por último, me centré en el Ejemplo de sesión y el Ejemplo de cookie.
¡Interesante! Pero dado que está en un submarino aislado, no es tan impactante.
Luego, verifiqué el ejemplo de cookie y ¡fue dorado!
¡Las cookies del sitio principal se reflejaban aquí! Rápidamente pensé en un escenario, sobre cómo se puede explotar esto. Me vino a la mente el secuestro de clics. Rápidamente me dirijo a SecurityHeaders y ddddd como se esperaba: D
Escribí un código apresurado (que obviamente se puede mejorar aún más, jaja)
[NOTA: puede reducir la opacidad al mínimo y agregar un elemento superpuesto para hacerlo más convincente. No lo hice por falta de tiempo/¿soy demasiado perezoso?]
¡¡¡Aquí viene!!! Ahora, simplemente pegue la cookie codificada en URL en un decodificador y ¡listo!
COOKIES == ROBADO
¡Gracias chicos por leer hasta el final! ¡Espero que les haya gustado!