TMAegis
More rules for mssql

TMA-MSSQL2022-2.13

Ensure the 'sa' Login Account is set to 'Disabled'

HighLevel 1Automatedmssql

Description

The sa account is a widely known and often widely used SQL Server account with sysadmin privileges. This is the original login created during installation and always has the principal_id=1 and sid=0x01. Enforcing this control reduces the probability of an attacker executing brute force attacks against a well-known principal.

How it is checked

Audit method: SQL query

sql_query
sqlcmd -b -h -1 -W -Q "SET NOCOUNT ON; SELECT COUNT(*) FROM sys.server_principals WHERE sid = 0x01 AND is_disabled = 0;"
Expected output
0

How it is fixed

Fix method: Guidance or infrastructure patch

Execute the following T-SQL query: USE [master] GO DECLARE @tsql nvarchar(max) SET @tsql = 'ALTER LOGIN ' + SUSER_NAME(0x01) + ' DISABLE' EXEC (@tsql) GO

Properties

Operating systems
Any
Tags
loggingmssqlsqlserver-2022
Reference
CIS Microsoft SQL Server 2022 Benchmark v1.3.0 - 2.13 Ensure the 'sa' Login Account is set to 'Disabled'

Check this host

Run this on a machine you are allowed to audit. The scan is read-only.

shell
tmaegis scan --target mssql