Microsoft SQL Server
TMA-MSSQL2022-3.9
Ensure Windows BUILTIN groups are not SQL Logins
Description
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 have no need to be a login. The BUILTIN groups (Administrators, Everyone, Authenticated Users, Guests, etc.) generally contain very broad memberships which would not meet the best practice of ensuring only the necessary users have been granted access to a SQL Server instance. These groups should not be used for any level of access into a SQL Server Database Engine instance.
Méthode de vérification
Méthode d'audit: Requête 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%';"- Sortie attendue
0
Méthode de correction
Méthode de correction: Recommandation ou correctif d'infrastructure
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
Propriétés
- Systèmes d'exploitation
- Tous
- Étiquettes
- loggingmssqlsqlserver-2022
- Référence
- CIS Microsoft SQL Server 2022 Benchmark v1.3.0 - 3.9 Ensure Windows BUILTIN groups are not SQL Logins
Vérifier cet hôte
Exécutez cette commande sur une machine que vous êtes autorisé à auditer. L'analyse est en lecture seule.
tmaegis scan --target mssql