sábado, 19 de octubre de 2002

Elevación de privilegios en tareas web de SQL Server

Se ha anunciado la existencia de una vulnerabilidad en SQL Server 7.0 y
2000 debido a fallos en la funcionalidad de tareas web de los servidores
de bases de datos de Microsoft que permitirán a un atacante elevar sus
privilegios.

SQL Server 7.0 y 2000 proporcionan la capacidad de uso de procedimientos
almacenados que son una colección de declaraciones Transact-SQL
almacenadas bajo un nombre y procesadas como un grupo. El procedimiento
almacenado xp_runwebtask falla al realizar la asignación de permisos
cuando se ejecuta y corre con los privilegios de SQL Server.

xp_runwebtask puede ser ejecutado por 'PUBLIC', de igual forma los
permisos de la tabla que almacena las tareas web, msdb.dbo.mswebtasks,
están mal asignados permitiendo a cualquiera realizar inserciones,
actualizaciones, borrados o consultas (INSERT, UPDATE, DELETE y SELECT).
Un atacante sin privilegios podrá emplear la combinación del
procedimiento xp_runwebtask y la debilidad de los permisos sobre la
tabla msdb.dbo.mswebtasks para conseguir elevar sus privilegios y
ejecutar comandos del sistema o incluirse dentro del grupo SYSADMIN.

Microsoft ha publicado los parches necesarios para evitar esta
vulnerabilidad disponibles en:
Microsoft SQL Server 7.0:
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q327068&sd=tech
Microsoft SQL Server 2000:
http://support.microsoft.com/default.aspx?scid=kb;en-us;Q316333&sd=tech


Antonio Ropero
antonior@hispasec.com


Más información:

Elevation of Privilege in SQL Server Web Tasks
http://www.microsoft.com/technet/security/bulletin/MS02-061.asp

Microsoft SQL Server Webtasks privilege elevation
http://www.nextgenss.com/advisories/mssql-webtasks.txt