Дата публикации: | 16.08.2002 |
Всего просмотров: | 2218 |
Опасность: | |
Наличие исправления: | |
Количество уязвимостей: | 1 |
CVE ID: | Нет данных |
Вектор эксплуатации: | |
Воздействие: | |
CWE ID: | Нет данных |
Наличие эксплоита: | Нет данных |
Уязвимые продукты: | |
Описание: | Microsoft SQL Server включает вспомогательную службу, SQL Server agent. Agent отвечает за перезапуск базы данных, если она остановилась по каким то причинам, участвует в репликации и выполняет намеченные задания (scheduled jobs). Роль “public” в SQL сервере позволяет создавать задания, которые будут выполнены SQL агентом. Он это делает, используя комбинацию нескольких сохраненных процедур в базе данных msdb, типа sp_add_job и sp_add_job_step, и т.д. Так как SQL Agent значительно более привилегирован, чем простой пользователь, система должна гарантировать, что представленное T-SQL задание не может неправильно эксплуатироваться. Используется следующая защита: SETUSER N'guest' WITH NORESET Это фактически понижает высокий уровень привилегий, так что никакая низкопривилегированная учетная запись не сможет выполнить что-либо подобно: exec master..xp_cmdshell 'dir' Однако это может тривиально обойдено, вызывая SQL Agent повторно после того, как он понизил привилегии. Пример прилагается. Уязвимость обнаружена в Microsoft SQL Server 2000 и 7 |
Ссылки: | Proof of Concept |