Microsoft SQL Server
TMA-MSSQL-2.12
Ensure 'Hide Instance' option is set to 'Yes' for Production SQL Server instances
說明
Non-clustered SQL Server instances within production environments should be designated as hidden to prevent advertisement by the SQL Server Browser service. Applies to production instances; reads HideInstance through xp_instance_regread (1 = hidden). Default: By default, this option is disabled (0). 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; DECLARE @v int; EXEC master.sys.xp_instance_regread @rootkey = N'HKEY_LOCAL_MACHINE', @key = N'SOFTWARE\Microsoft\Microsoft SQL Server\MSSQLServer\SuperSocketNetLib', @value_name = N'HideInstance', @value = @v OUTPUT; SELECT ISNULL(@v, 0);"- 預期輸出
1
修補方式
修補方法: 操作指南或基礎設施修補檔
Perform either the GUI or T-SQL method shown: GUI Method 1. In SQL Server Configuration Manager, expand SQL Server Network Configuration, right-click Protocols for <InstanceName>, and then select Properties. 2. On the Flags tab, in the Hide Instance box, select Yes, and then click OK to close the dialog box. The change takes effect immediately for new connections. T-SQL Method Execute the following T-SQL to remediate: EXEC master.sys.xp_instance_regwrite @rootkey = N'HKEY_LOCAL_MACHINE', @key = N'SOFTWARE\Microsoft\Microsoft SQL Server\MSSQLServer\SuperSocketNetLib', @value_name = N'HideInstance', @type = N'REG_DWORD', @value = 1;
屬性
- 作業系統
- 不限
- 標籤
- mssqldatabasenetwork
- 參考資料
- CIS Microsoft SQL Server 2025 Benchmark v1.0.0 - 2.12 Ensure 'Hide Instance' option is set to 'Yes' for Production SQL Server instances
檢查此主機
請在您有權稽核的機器上執行此指令。掃描為唯讀操作。
tmaegis scan --target mssql