MS SQL Server 2016 Database Security Technical Implementation Guide
Rules, Groups, and Values defined within the XCCDF Benchmark
-
SRG-APP-000023-DB-000001
<GroupDescription></GroupDescription>Group -
SQL Server databases must integrate with an organization-level authentication/access mechanism providing account management and automation for all users, groups, roles, and any other principals.
<VulnDiscussion>Enterprise environments make account management for applications and databases challenging and complex. A manual process for ...Rule High Severity -
SRG-APP-000033-DB-000084
<GroupDescription></GroupDescription>Group -
SQL Server must enforce approved authorizations for logical access to information and system resources in accordance with applicable access control policies.
<VulnDiscussion>Authentication with a DoD-approved PKI certificate does not necessarily imply authorization to access SQL Server. To mitigate...Rule High Severity -
SRG-APP-000080-DB-000063
<GroupDescription></GroupDescription>Group -
SQL Server must protect against a user falsely repudiating by ensuring only clearly unique Active Directory user accounts can connect to the database.
<VulnDiscussion>Non-repudiation of actions taken is required in order to maintain data integrity. Examples of particular actions taken by ind...Rule Medium Severity -
SRG-APP-000080-DB-000063
<GroupDescription></GroupDescription>Group -
SQL Server must protect against a user falsely repudiating by use of system-versioned tables (Temporal Tables).
<VulnDiscussion>Non-repudiation of actions taken is required in order to maintain data integrity. Examples of particular actions taken by ind...Rule Low Severity -
SRG-APP-000080-DB-000063
<GroupDescription></GroupDescription>Group -
SQL Server must protect against a user falsely repudiating by ensuring databases are not in a trust relationship.
<VulnDiscussion>Non-repudiation of actions taken is required in order to maintain data integrity. Examples of particular actions taken by ind...Rule Medium Severity -
SRG-APP-000090-DB-000065
<GroupDescription></GroupDescription>Group -
SQL Server must allow only the ISSM (or individuals or roles appointed by the ISSM) to select which auditable events are to be audited.
<VulnDiscussion>Without the capability to restrict which roles and individuals can select which events are audited, unauthorized personnel ma...Rule Medium Severity -
SRG-APP-000133-DB-000179
<GroupDescription></GroupDescription>Group -
SQL Server must limit privileges to change software modules, to include stored procedures, functions, and triggers.
<VulnDiscussion>If the system were to allow any user to make changes to software libraries, then those changes might be implemented without u...Rule Medium Severity -
SRG-APP-000133-DB-000179
<GroupDescription></GroupDescription>Group -
SQL Server must limit privileges to change software modules, to include stored procedures, functions, and triggers, and links to software external to SQL Server.
<VulnDiscussion>If the system were to allow any user to make changes to software libraries, then those changes might be implemented without u...Rule Medium Severity -
SRG-APP-000133-DB-000200
<GroupDescription></GroupDescription>Group -
The Certificate used for encryption must be backed up and stored in a secure location that is not on the SQL Server.
<VulnDiscussion>Backup and recovery of the Certificate used for encryption is critical to the complete recovery of the database. Not having t...Rule Medium Severity -
SRG-APP-000233-DB-000124
<GroupDescription></GroupDescription>Group -
Database objects (including but not limited to tables, indexes, storage, stored procedures, functions, triggers, links to software external to SQL Server, etc.) must be owned by database/DBMS principals authorized for ownership.
<VulnDiscussion>Within the database, object ownership implies full privileges to the owned object, including the privilege to assign access t...Rule Medium Severity -
SRG-APP-000133-DB-000362
<GroupDescription></GroupDescription>Group -
The role(s)/group(s) used to modify database structure (including but not necessarily limited to tables, indexes, storage, etc.) and logic modules (stored procedures, functions, triggers, links to software external to SQL Server, etc.) must be restricted to authorized users.
<VulnDiscussion>If SQL Server were to allow any user to make changes to database structure or logic, then those changes might be implemented ...Rule Medium Severity -
SRG-APP-000226-DB-000147
<GroupDescription></GroupDescription>Group -
In the event of a system failure, hardware loss or disk failure, SQL Server must be able to restore necessary databases with least disruption to mission processes.
<VulnDiscussion>Failure to a known state can address safety or security in accordance with the mission/business needs of the organization. Fa...Rule Medium Severity -
SRG-APP-000231-DB-000154
<GroupDescription></GroupDescription>Group -
The Database Master Key encryption password must meet DOD password complexity requirements.
<VulnDiscussion>Weak passwords may be easily guessed. When passwords are used to encrypt keys used for encryption of sensitive data, then the...Rule Medium Severity -
SRG-APP-000231-DB-000154
<GroupDescription></GroupDescription>Group -
The Database Master Key must be encrypted by the Service Master Key, where a Database Master Key is required and another encryption method has not been specified.
<VulnDiscussion>When not encrypted by the Service Master Key, system administrators or application administrators may access and use the Data...Rule Medium Severity -
SRG-APP-000231-DB-000154
<GroupDescription></GroupDescription>Group -
SQL Server must isolate security functions from non-security functions.
<VulnDiscussion>An isolation boundary provides access control and protects the integrity of the hardware, software, and firmware that perform...Rule Low Severity -
SRG-APP-000243-DB-000128
<GroupDescription></GroupDescription>Group -
Database contents must be protected from unauthorized and unintended information transfer by enforcement of a data-transfer policy.
<VulnDiscussion>Applications, including DBMSs, must prevent unauthorized and unintended information transfer via shared system resources. D...Rule Medium Severity -
SRG-APP-000251-DB-000160
<GroupDescription></GroupDescription>Group -
SQL Server must check the validity of all data inputs except those specifically identified by the organization.
<VulnDiscussion>Invalid user input occurs when a user inserts data or characters into an application's data entry fields and the application ...Rule Medium Severity -
SRG-APP-000266-DB-000162
<GroupDescription></GroupDescription>Group -
SQL Server must provide non-privileged users with error messages that provide information necessary for corrective actions without revealing information that could be exploited by adversaries.
<VulnDiscussion>Any DBMS or associated application providing too much information in error messages on the screen or printout risks compromis...Rule Medium Severity -
SRG-APP-000311-DB-000308
<GroupDescription></GroupDescription>Group -
SQL Server must associate organization-defined types of security labels having organization-defined security label values with information in storage.
<VulnDiscussion>Without the association of security labels to information, there is no basis for SQL Server to make security-related access-c...Rule Medium Severity -
SRG-APP-000313-DB-000309
<GroupDescription></GroupDescription>Group -
SQL Server must associate organization-defined types of security labels having organization-defined security label values with information in process.
<VulnDiscussion>Without the association of security labels to information, there is no basis for SQL Server to make security-related access-c...Rule Medium Severity -
SRG-APP-000314-DB-000310
<GroupDescription></GroupDescription>Group -
SQL Server must associate organization-defined types of security labels having organization-defined security label values with information in transmission.
<VulnDiscussion>Without the association of security labels to information, there is no basis for SQL Server to make security-related access-c...Rule Medium Severity -
SRG-APP-000328-DB-000301
<GroupDescription></GroupDescription>Group -
SQL Server must enforce discretionary access control policies, as defined by the data owner, over defined subjects and objects.
<VulnDiscussion>Discretionary Access Control (DAC) is based on the notion that individual users are "owners" of objects and therefore have di...Rule Low Severity -
SRG-APP-000342-DB-000302
<GroupDescription></GroupDescription>Group -
Execution of stored procedures and functions that utilize execute as must be restricted to necessary cases only.
<VulnDiscussion>In certain situations, to provide required functionality, a DBMS needs to execute internal logic (stored procedures, function...Rule Medium Severity -
SRG-APP-000378-DB-000365
<GroupDescription></GroupDescription>Group -
SQL Server must prohibit user installation of logic modules (stored procedures, functions, triggers, views, etc.) without explicit privileged status.
<VulnDiscussion>Allowing regular users to install software, without explicit privileges, creates the risk that untested or potentially malici...Rule Medium Severity -
SRG-APP-000380-DB-000360
<GroupDescription></GroupDescription>Group -
SQL Server must enforce access restrictions associated with changes to the configuration of the database(s).
<VulnDiscussion>Failure to provide logical access restrictions associated with changes to configuration may have significant effects on the o...Rule Medium Severity
Node 2
The content of the drawer really is up to you. It could have form fields, definition lists, text lists, labels, charts, progress bars, etc. Spacing recommendation is 24px margins. You can put tabs in here, and can also make the drawer scrollable.