¡Hola a todos! Después de muuuucho tiempo, vuelvo con una entrada al blog. En esta ocasión no traigo una entrada en la que vayamos a abordar de manera técnica una máquina o reto, sino que os quiero contar que he conseguido mi primer CVE, el CVE-2021-41728.
Para empezar, debéis saber qué es un CVE, aunque si habéis leído writeups o resuelto máquinas os sonará porque muchas veces los empleamos para la resolución de las mismas. Estas tres letras corresponden a unas siglas: Common Vulnerabilities and Exposures y, ¿esto qué quiere decir? Bueno, es un registro en el que se catalogan vulnerabilidades de forma pública de forma que se facilite la identificación del software al que corresponde, versión, tipo y más. El formato del identificador de un CVE es el siguiente:
En concreto, como veis, este CVE corresponde a este año y es el que se ha asignado a un XSS que encontré hace algo más de un mes, el CVE-2021-41728 cuya información podéis ver en la web de mitre.
La idea de tener un CVE me empezó a rondar en la cabeza desde hacía un tiempo pero no fue hasta que vi un tweet de PentestPlanet que me decidí. El tweet era un enlace a un post de 0xboku en el que hablaba sobre cómo había conseguido él empezar a conseguir CVEs, 0days y exploits publicados en exploitdb.
Cuando leí la entrada me animé más y fije mi objetivo en el mismo lugar que Bobby, algún CMS open source publicado en sourcecodester, así que elegí uno (news247) y lo monté en mi máquina víctima. Lo primero que se me ocurrió probar fue un XSS en la barra de búsqueda y descubrí que era vulnerable, no tuve que revisar código ni tardé en investigar, sólo me hizo falta decidirme.
Ahí tenéis la captura en la que se ve la ejecución del payload, en este caso, en un servidor de ejemplo proporcionado por el creador ya que yo había borrado ya la máquina virtual.
En cuanto a cómo reporté esto, el proceso aunque ha sido más largo de lo que esperaba, es simple. Para empezar (después de informar al creador) , rellené el formulario de Mitre y una vez que me mandaron un email de confirmación de la petición, sólo quedaba esperar.
El siguiente email por su parte llegó el martes y en él me confirmaron la vulnerabilidad y asignaron el identificador, sólo quedaba que hiciese alguna publicación para dejar constancia del error, por lo que seguí el formato de los exploits que se mandan a exploitdb, lo mandé a offsec y lo subí a mi repositorio de Github.
Con el repositorio disponible ya tenía algo que mandar a Mitre para la publicación del CVE, así que mandé un correo y ayer estaba hecho público.
Decidí reportar sólo esto y no seguir investigando para realizar la prueba de forma tranquila ya que pensaba que sería algo más complicado de seguir.
Algunos os preguntaréis el por qué de querer un CVE, y era simplemente porque desde que empecé en este mundo he estado viendo y usando los CVEs que habían conseguido otras personas y me hacía ilusión conseguir uno para hacer ese aporte y sentir esa realización.
Sé que no es un gran CVE como los que hemos podido usar al resolver máquinas de CTFs anteriores que nos permiten un account takeover, una SQLi o un RCE, pero espero que este sea el primero de muchos y mejores.
Muchas gracias a todos por leerme un día más. Sé que he estado mucho tiempo inactivo pero quería volver y compartir esto con todos ya que me alegró el día ver cómo me aceptaron el reporte.
Referencias del CVE:
- https://github.com/Dir0x/CVE-2021-41728
- https://cve.report/CVE-2021-41728
No hay comentarios:
Publicar un comentario