Esta mañana los señores de Acronis tuvieron la gentileza de hacer público el reporte de una vulnerabilidad que les notifiqué allá por el mes de Abril. A este reporte le tengo especial cariño ya que se trató de mi primer reporte válido en la plataforma HackerOne y no menos importante, de mis primeras recompensas económica en este mundillo del Bug Bounty. Fue verdaderamente gratificante para ser honesto y por supuesto me motivó a continuar por este sendero.

Quiero aprovechar este post para además de comentaros los detalles de la vulnerabilidad, también comentaros sobre este programa de Bug Bounty y las posibilidades que disponéis para también buscaros la oportunidad, si así lo deseáis.

Detalles de la vulnerabilidad

La vulnerabilidad que identifiqué es bastante simple de entender y explicar, se trata de un Cross-Site Scripting (XSS) persistente o almacenado en el producto Acronis Cyber Protect en su versión 15.0.31791. Esto concretamente se produce en el campo «Plan name» del apartado «Protection«, dentro de la sección «Plans«. Es aquí donde podemos añadir nuestro payload, que para fines de prueba simplemente he puesto el siguiente:

<img src=x onerror=alert(/Stored_XSS/)>

Lo indico en el reporte (https://hackerone.com/reports/1940788), para llegar a este apartado tenemos que crear un nuevo plan, añadir un dispositivo válido y posteriormente procedemos a editar el nombre de dicho plan, que por defecto nos lo titulará como «New protection plan«.
Luego salvamos los cambios y esperamos unos minutos para que se materialice el plan creado.
Cuando ya tengamos el plan creado, se nos generará un nuevo registro en la tabla de «Protection plans» y al seleccionar nuestro plan creado se nos desplegará un listado de opciones o acciones que podremos ejecutar para este plan seleccionado.
Estratégicamente seleccionaremos el botón de «Stop«. ¿Qué por qué? ahora lo verás…
Al pulsar dicho botón, se nos desplegará un mensaje para que confirmemos la acción, de hacerlo, conseguiremos que además de iniciar la acción, se nos despliegue en la parte inferior derecha de la pantalla una burbuja emergente, que acarrea el nombre de nuestro plan, que en este caso, como hemos indicado código arbitrario, éste será renderizado por la aplicación y por tanto conseguiremos que se dispare el JS de nuestro payload. Observemos el resultado que os comento:

Como veis, no hay un gran misterio detrás de este hallazgo, simplemente he tenido la oportunidad de hallarlo un poco antes y notificarlo de forma oportuna, espero que esto que os comento os pueda alentar a intentarlo. Como dice el dicho: El «Dupe», ya lo tenemos!

Programa de Bug Bounty

Como también he comentado anteriormente, quiero aprovechar la ocasión también para hablaros de este programa de Bug Bounty de Acronis.
Al momento de evaluar este producto, una vez que obtuve los primeros hallazgos, me dispuse a revisar la política de divulgación responsable de este fabricante y para ello inicialmente localicé el famoso fichero security.txt, dentro del directorio oculto .well-known, como la buena práctica RFC 9116 (A File Format to Aid in Security Vulnerability Disclosure) describe:

Por tanto, así es como llegaríamos a este programa público de Acronis:

Obviamente para poder reportar necesitaremos estar registrados y autenticados en H1.

Creo que este es un programa bastante atractivo, la política completa también está disponible para todo el público, y respecto a sus horquillas de recompensas, éstas reflejan lo siguiente:

Por cierto, no os preocupéis si no tenéis acceso a este producto para evaluarlo, en su mayoría de situaciones, podréis solicitar algunas versiones demo o acceso a sus instancia de prueba que están en la nube, por tanto creo que nos lo dejan bastante fácil para apoyarles y que nos veamos recompensados por los reportes de calidad que les enviemos.

Por último y un dato netamente subjetivo que os dejo, en base a mi experiencia con ellos, es que son bastante cercanos, responden con cierta agilidad, obviamente no debemos desesperarnos si pasan los días, hay que entender que no siempre seremos un correo prioritario y que pueden existir avalanchas de trabajos, eso siendo comprensivos lo entenderemos, pero siempre podemos dejarle un respetuoso y cálido recordatorio.

Divulgación responsable

Un aspecto que en ocasiones nuestras frenéticas agendas y vidas en general no nos permiten compatibilizar con el cumplimiento estricto de las políticas de divulgación responsable de cada fabricante y a su vez el seguimiento que detrás conlleva, pero que en algún momento debemos razonar y «obligarnos» a su cumplimiento, son elementos que nos permitirán cimentar ciertas garantías de éxito o al menos nos aseguraremos de no «cabrear/enfadar» a nadie. En el caso de Acronis, ellos a través de su conocida como «Advisory Database» publicarán a sus clientes y publico en general todas las vulnerabilidades que hayan podido conocer, tratar y neutralizar. En el caso de esta vulnerabilidad que les reporté, finalmente publicaron la siguiente entrada:

Que como veis en esta captura, siendo ellos además un CNA (CVE Numbering Authorities) de MITRE Corporation:

Cuentan con las competencias necesarias para registrar la vulnerabilidad y asignarte un CVE:

Por tanto y ya veis, que todos son ventajas, XD

No quiero terminar este post sin comentar mi disposición para cualquier tipo de duda o necesidad que se os presente con este fabricante, siempre estoy abierto a colaboraciones o si fuera necesario asesoramiento puntual. No dudéis en mandarme un ping!

Referencias