PT-2011-21: Внедрение операторов SQL в OneOrZero AIMS
Уязвимое ПО
OneOrZero AIMS
Версия 2.7.0, возможно, более ранние
Ссылка на приложение:
http://www.oneorzero.com/
Рейтинг опасности
Уровень опасности: Высокий
Воздействие: Внедрение операторов SQL
Вектор атаки: Удаленный
CVSS v2:
Base Score: 7.5
Vector: (AV:N/AC:L/Au:N/C:P/I:P/A:P)
CVE: отсутствует
Описание программного обеспечения
Система OneOrZero AIMS представляет собой help desk приложение. Данное решение предоставляется бесплатно.
Описание уязвимости
Positive Research Center обнаружил множество уязвимостей внедрение операторов SQL в OneOrZero AIMS.
Приложение некорректно проверяет данные, поступившие от пользователя, которые в дальнейшем используются для генерации SQL-запросов. Злоумышленник получает возможность модифицировать запрос к SQL-серверу, отправляемый приложением. В результате злоумышленник получает возможность работать с SQL-сервером в обход логики приложения, получать произвольную информацию от SQL-сервера в рамках привилегий Web-приложения, в том числе, к критическим данным: логинам и паролям администраторов. В следствии этого возможно проведение атаки "Внедрение операторов SQL".
"Внедрение операторов SQL" – способ нападения на базу данных в обход межсетевой защиты. В этом методе, параметры, передаваемые к базе данных через Web приложения, изменяются таким образом, чтобы изменить выполняемый SQL запрос. Например, добавляя различные символы к параметру, можно выполнить дополнительный запрос совместно с первым.
Злоумышленник может получить доступ к данным, которые обычно недоступны, или получить данные конфигурации системы, которые могут использоваться для дальнейших нападений. Например, измененный запрос может возвратить хешированные пароли пользователей, которые в последствии могут быть расшифрованы методом перебора.
Пример: скрипт lib\ooz_access.php:
Строка 136:
$sql = "SELECT * FROM " . OOZ_SET_TABLE_PREFIX . "users WHERE user_name = '" . $cookieName . "'";
$userResult = DB::query($sql, DSN, OOZ_SET_SHOW_SQL);
Отсутствует фильтрация переменной $cookieName.
Решение
Cпециалисты нашей компании рекомендуют добавить фильтр данных поступающих от пользователя.
Статус уведомления
08.07.2011 - Производитель уведомлен
23.08.2011 - Детали уязвимости отправлены в CERT
19.10.2011 - Публикация уязвимости
Благодарности
Уязвимость обнаружил Юрий Гольцев (Исследовательcкий центр Positive Research компании Positive Technologies)
Ссылки
http://www.securitylab.ru/lab/PT-2011-21
http://www.kb.cert.org/vuls/id/800227
Список отчетов о ранее обнаруженных уязвимостях Positive Research:
http://www.ptsecurity.ru/advisory.asp
http://www.securitylab.ru/lab/