Microsoft SQL Server
TMA-MSSQL-3.9
Ensure Windows BUILTIN groups are not SQL Logins
说明
Prior to SQL Server 2008, the BUILTIN\Administrators group was added as a SQL Server login with sysadmin privileges during installation by default. Best practices promote creating an Active Directory level group containing approved DBA staff accounts and using this controlled AD group as the login with sysadmin privileges. The AD group should be specified during SQL Server installation and the BUILTIN\Administrators group would therefore ... On AWS RDS a lone [BUILTIN]\Administrators login is acceptable. Default: By default, no BUILTIN groups are added as SQL logins. Runs one sqlcmd query with its defaults (Windows authentication to the local default instance); set SQLCMDSERVER, SQLCMDUSER and SQLCMDPASSWORD for another instance or SQL authentication. Needs VIEW SERVER STATE / sysadmin-level read access.
检查方式
审计方法: SQL 查询
sqlcmd -b -h -1 -W -Q "SET NOCOUNT ON; SELECT COUNT(*) FROM sys.server_principals pr JOIN sys.server_permissions pe ON pr.principal_id = pe.grantee_principal_id WHERE pr.name LIKE 'BUILTIN%';"- 预期输出
0
修复方式
修复方法: 操作指南或基础设施补丁
1. For each BUILTIN login, if needed create a more restrictive AD group containing only the required user accounts. 2. Add the AD group or individual Windows accounts as a SQL Server login and grant it the permissions required. 3. Drop the BUILTIN login using the syntax below after replacing <name> in [BUILTIN\<name>]. USE [master] GO DROP LOGIN [BUILTIN\<name>] GO
属性
- 操作系统
- 任意
- 标签
- mssqldatabaseprivileges
- 参考
- CIS Microsoft SQL Server 2025 Benchmark v1.0.0 - 3.9 Ensure Windows BUILTIN groups are not SQL Logins
检查本机
请在您有权审计的机器上运行此命令。扫描为只读操作。
tmaegis scan --target mssql