Skip to main content

💼 CIS Azure v1.4.0

  • Contextual name: 💼 CIS Azure v1.4.0
  • ID: /frameworks/cis-azure-v1.4.0

Description

Empty...

Similar

  • Internal
    • ID: dec-a-d42f3a2d

Sub Sections

SectionSub SectionsInternal RulesPoliciesFlags
💼 1 Identity and Access Management22
    💼 1.1 Ensure that 'Multi-Factor Auth Status' is 'Enabled' for all Privileged Users - Level 1 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.2 Ensure that 'Multi-Factor Auth Status' is 'Enabled' for all Non-Privileged Users - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.3 Ensure guest users are reviewed on a monthly basis - Level 1 (Manual _ Assessment requires a manual procedure. Hover over the title for the full description)
    💼 1.4 Ensure that 'Restore multi-factor authentication on all remembered devices' is Enabled - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.5 Ensure That 'Number of methods required to reset' is set to '2' - Level 1 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.6 Ensure that 'Number of days before users are asked to re-confirm their authentication information' is not set to '0' - Level 1 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.7 Ensure that 'Notify users on password resets?' is set to 'Yes' - Level 1 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.8 Ensure That 'Notify all admins when other admins reset their password?' is set to 'Yes' - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.9 Ensure that 'Users can consent to apps accessing company data on their behalf' is set to 'No' - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.10 Ensure that 'Users can add gallery apps to My Apps' is set to 'No' - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.11 Ensure that 'Users can register applications' is set to 'No' - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.12 Ensure That 'Guest users access restrictions' is set to 'Guest user access is restricted to properties and memberships of their own directory objects'' - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.13 Ensure that 'Guest invite restrictions' is set to "Only users assigned to specific admin roles can invite guest users" - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.14 Ensure That 'Restrict access to Azure AD administration portal' is Set to "Yes" - Level 1 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.15 Ensure that 'Restrict user ability to access groups features in the Access Pane' is Set to 'Yes' - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.16 Ensure that 'Users can create security groups in Azure portals, API or PowerShell' is set to 'No' - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.17 Ensure that 'Owners can manage group membership requests in the Access Panel' is set to 'No' - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.18 Ensure that 'Users can create Microsoft 365 groups in Azure portals, API or PowerShell' is set to 'No' - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.19 Ensure that 'Require Multi-Factor Authentication to register or join devices with Azure AD' is set to 'Yes' - Level 1 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.20 Ensure That No Custom Subscription Owner Roles Are Created - Level 2 (Automated)
    💼 1.21 Ensure Security Defaults is enabled on Azure Active Directory - Level 1 (Manual _ Not supported, no API/CLI available by Azure)
    💼 1.22 Ensure a Custom Role is Assigned Permissions for Administering Resource Locks - Level 2 (Manual _ Not supported, no API/CLI available by Azure)
💼 2 Microsoft Defender for Cloud15
    💼 2.1 Ensure that Microsoft Defender for Servers is set to 'On' - Level 2 (Manual)11
    💼 2.2 Ensure that Microsoft Defender for App Service is set to 'On' - Level 2 (Manual)11
    💼 2.3 Ensure that Microsoft Defender for Azure SQL Databases is set to 'On' - Level 2 (Manual)11
    💼 2.4 Ensure that Microsoft Defender for SQL servers on machines is set to 'On' - Level 2 (Manual)11
    💼 2.5 Ensure that Microsoft Defender for Storage is set to 'On' - Level 2 (Manual)11
    💼 2.6 Ensure that Microsoft Defender for Kubernetes is set to 'On' - Level 2 (Manual)
    💼 2.7 Ensure that Microsoft Defender for Container Registries is set to 'On' - Level 2 (Manual)11
    💼 2.8 Ensure that Microsoft Defender for Key Vault is set to 'On' - Level 2 (Manual)11
    💼 2.9 Ensure that Microsoft Defender for Endpoint (WDATP) integration with Microsoft Defender for Cloud is selected - Level 2 (Manual)11
    💼 2.10 Ensure that Microsoft Defender for Cloud Apps (MCAS) Integration with Microsoft Defender for Cloud is Selected - Level 2 (Manual)11
    💼 2.11 Ensure That Auto provisioning of 'Log Analytics agent for Azure VMs' is Set to 'On' - Level 1 (Automated)
    💼 2.12 Ensure Any of the ASC Default Policy Setting is Not Set to 'Disabled' - Level 1 (Manual _ Not supported, requires a manual assessment)
    💼 2.13 Ensure 'Additional email addresses' is Configured with a Security Contact Email - Level 1 (Automated)11
    💼 2.14 Ensure That 'Notify about alerts with the following severity' is Set to 'High' - Level 1 (Automated)
    💼 2.15 Ensure That 'All users with the following roles' is set to 'Owner' - Level 1 (Automated)11
💼 3 Storage Accounts12
    💼 3.1 Ensure that 'Secure transfer required' is set to 'Enabled' - Level 1 (Automated)11
    💼 3.2 Ensure That Storage Account Access Keys are Periodically Regenerated - Level 1 (Manual _ Not supported due to a bug in Azure API)
    💼 3.3 Ensure Storage Logging is Enabled for Queue Service for 'Read', 'Write', and 'Delete' requests - Level 2 (Automated)11
    💼 3.4 Ensure that Shared Access Signature Tokens Expire Within an Hour - Level 1 (Manual _ Not supported, no API/CLI available by Azure)
    💼 3.5 Ensure that 'Public access level' is set to Private for blob containers - Level 1 (Automated)
    💼 3.6 Ensure Default Network Access Rule for Storage Accounts is Set to Deny - Level 2 (Automated)
    💼 3.7 Ensure 'Trusted Microsoft Services' are Enabled for Storage Account Access - Level 2 (Automated)11
    💼 3.8 Ensure Soft Delete is Enabled for Azure Storage - Level 1 (Automated)11
    💼 3.9 Ensure Storage for Critical Data are Encrypted with Customer Managed Keys - Level 2 (Manual)11
    💼 3.10 Ensure Storage logging is Enabled for Blob Service for 'Read', 'Write', and 'Delete' requests - Level 2 (Automated)11
    💼 3.11 Ensure Storage Logging is Enabled for Table Service for 'Read', 'Write', and 'Delete' Requests - Level 2 (Automated)
    💼 3.12 Ensure the "Minimum TLS version" is set to "Version 1.2" - Level 1 (Automated)11
💼 4 Database Services6
    💼 4.1 SQL Server - Auditing3
        💼 4.1.1 Ensure that 'Auditing' is set to 'On' - Level 1 (Automated)11
        💼 4.1.2 Ensure that 'Data encryption' is set to 'On' on a SQL Database - Level 1 (Automated)
        💼 4.1.3 Ensure that 'Auditing' Retention is 'greater than 90 days' - Level 1 (Automated)11
    💼 4.2 SQL Server - Azure Defender for SQL5
        💼 4.2.1 Ensure that Advanced Threat Protection (ATP) on a SQL Server is Set to 'Enabled' - Level 2 (Automated)
        💼 4.2.2 Ensure that Vulnerability Assessment (VA) is enabled on a SQL server by setting a Storage Account - Level 2 (Automated)
        💼 4.2.3 Ensure that VA setting 'Periodic recurring scans' to 'on' for each SQL server - Level 2 (Automated)
        💼 4.2.4 Ensure that VA setting 'Send scan reports to' is configured for a SQL server - Level 2 (Automated)
        💼 4.2.5 Ensure that Vulnerability Assessment Setting 'Also send email notifications to admins and subscription owners' is Set for Each SQL Server - Level 2 (Automated)
    💼 4.3 PostgreSQL Database Server8
        💼 4.3.1 Ensure 'Enforce SSL connection' is set to 'ENABLED' for PostgreSQL Database Server - Level 1 (Automated)11
        💼 4.3.2 Ensure Server Parameter 'log_checkpoints' is set to 'ON' for PostgreSQL Database Server - Level 1 (Automated)11
        💼 4.3.3 Ensure server parameter 'log_connections' is set to 'ON' for PostgreSQL Database Server - Level 1 (Automated)11
        💼 4.3.4 Ensure server parameter 'log_disconnections' is set to 'ON' for PostgreSQL Database Server - Level 1 (Automated)11
        💼 4.3.5 Ensure server parameter 'connection_throttling' is set to 'ON' for PostgreSQL Database Server - Level 1 (Automated)11
        💼 4.3.6 Ensure server parameter 'log_retention_days' is greater than 3 days for PostgreSQL Database Server - Level 1 (Automated)11
        💼 4.3.7 Ensure 'Allow access to Azure services' for PostgreSQL Database Server is disabled - Level 1 (Manual)11
        💼 4.3.8 Ensure 'Infrastructure double encryption' for PostgreSQL Database Server is 'Enabled' - Level 1 (Automated)11
    💼 4.4 MySQL Database2
        💼 4.4.1 Ensure 'Enforce SSL connection' is set to 'Enabled' for Standard MySQL Database Server - Level 1 (Automated)11
        💼 4.4.2 Ensure 'TLS Version' is set to 'TLSV1.2' for MySQL flexible Database Server - Level 1 (Automated)11
    💼 4.5 Ensure that Azure Active Directory Admin is configured - Level 1 (Automated)11
    💼 4.6 Ensure SQL server's TDE protector is encrypted with Customer-managed key - Level 2 (Automated)11
💼 5 Logging and Monitoring3
    💼 5.1 Configuring Diagnostic Settings5
        💼 5.1.1 Ensure that a 'Diagnostics Setting' exists - Level 1 (Manual _ Not supported, requires a manual assessment)
        💼 5.1.2 Ensure Diagnostic Setting captures appropriate categories - Level 1 (Automated)11
        💼 5.1.3 Ensure the storage container storing the activity logs is not publicly accessible - Level 1 (Automated _ Not supported, requires a manual assessment)
        💼 5.1.4 Ensure the storage account containing the container with activity logs is encrypted with BYOK (Use Your Own Key) - Level 2 (Automated)11
        💼 5.1.5 Ensure that logging for Azure KeyVault is 'Enabled' - Level 1 (Automated)11
    💼 5.2 Monitoring using Activity Log Alerts9
        💼 5.2.1 Ensure that Activity Log Alert exists for Create Policy Assignment - Level 1 (Automated)11
        💼 5.2.2 Ensure that Activity Log Alert exists for Delete Policy Assignment - Level 1 (Automated)11
        💼 5.2.3 Ensure that Activity Log Alert exists for Create or Update Network Security Group - Level 1 (Automated)11
        💼 5.2.4 Ensure that Activity Log Alert exists for Delete Network Security Group - Level 1 (Automated)11
        💼 5.2.5 Ensure that Activity Log Alert exists for Create or Update Network Security Group (Network Security Group Rule) - Level 1 (Automated)
        💼 5.2.6 Ensure that activity log alert exists for the Delete Network Security Group Rule - Level 1 (Automated)
        💼 5.2.7 Ensure that Activity Log Alert exists for Create or Update Security Solution - Level 1 (Automated)
        💼 5.2.8 Ensure that Activity Log Alert exists for Delete Security Solution - Level 1 (Automated)11
        💼 5.2.9 Ensure that Activity Log Alert exists for Create or Update or Delete SQL Server Firewall Rule - Level 1 (Automated)
    💼 5.3 Ensure that Diagnostic Logs Are Enabled for All Services that Support it. - Level 1 (Manual _ Not supported, requires a manual assessment)
💼 6 Networking6
    💼 6.1 Ensure that RDP access is restricted from the internet - Level 1 (Automated)11
    💼 6.2 Ensure that SSH access is restricted from the internet - Level 1 (Automated)11
    💼 6.3 Ensure no SQL Databases allow ingress 0.0.0.0/0 (ANY IP) - Level 1 (Automated).11
    💼 6.4 Ensure that Network Security Group Flow Log retention period is 'greater than 90 days' - Level 2 (Automated _ Will be supported in the future)11
    💼 6.5 Ensure that Network Watcher is 'Enabled' - Level 1 (Manual)
    💼 6.6 Ensure that UDP Services are restricted from the Internet - Level 1 (Automated)11
💼 7 Virtual Machines7
    💼 7.1 Ensure Virtual Machines are utilizing Managed Disks - Level 1 (Manual)11
    💼 7.2 Ensure that 'OS and Data' disks are encrypted with Customer Managed Key (CMK) - Level 2 (Automated)11
    💼 7.3 Ensure that 'Unattached disks' are encrypted with CMK - Level 2 (Automated)11
    💼 7.4 Ensure that Only Approved Extensions Are Installed - Level 1 (Automated _ Not supported, requires a manual assessment)
    💼 7.5 Ensure that the latest OS Patches for all Virtual Machines are applied - Level 1 (Manual)
    💼 7.6 Ensure that the endpoint protection for all Virtual Machines is installed - Level 1 (Manual)
    💼 7.7 Ensure that VHD's are Encrypted - Level 2 (Manual _ Not supported, requires a manual assessment)
💼 8 Other Security Considerations7
    💼 8.1 Ensure that the Expiration Date is set for all Keys in RBAC Key Vaults - Level 1 (Automated)
    💼 8.2 Ensure that the Expiration Date is set for all Keys in Non-RBAC Key Vaults. - Level 1 (Manual)
    💼 8.3 Ensure that the Expiration Date is set for all Secrets in RBAC Key Vaults - Level 1 (Automated)
    💼 8.4 Ensure that the Expiration Date is set for all Secrets in Non-RBAC Key Vaults - Level 1 (Manual)
    💼 8.5 Ensure that Resource Locks are set for Mission Critical Azure Resources - Level 2 (Manual _ Not supported, requires a manual assessment)
    💼 8.6 Ensure the key vault is recoverable - Level 1 (Automated)
    💼 8.7 Enable role-based access control (RBAC) within Azure Kubernetes Services - Level 1 (Automated)
💼 9 AppService11
    💼 9.1 Ensure App Service Authentication is set up for apps in Azure App Service - Level 2 (Automated)11
    💼 9.2 Ensure Web App Redirects All HTTP traffic to HTTPS in Azure App Service - Level 1 (Automated)11
    💼 9.3 Ensure Web App is using the latest version of TLS encryption - Level 1 (Automated)
    💼 9.4 Ensure the web app has 'Client Certificates (Incoming client certificates)' set to 'On' - Level 2 (Automated)
    💼 9.5 Ensure that Register with Azure Active Directory is enabled on App Service - Level 1 (Automated)11
    💼 9.6 Ensure That 'PHP version' is the Latest, If Used to Run the Web App - Level 1 (Manual _ Not supported, requires a manual assessment)
    💼 9.7 Ensure that 'Python version' is the Latest Stable Version, if Used to Run the Web App - Level 1 (Manual _ Not supported, requires a manual assessment)
    💼 9.8 Ensure that 'Java version' is the latest, if used to run the Web App - Level 1 (Manual)11
    💼 9.9 Ensure that 'HTTP Version' is the Latest, if Used to Run the Web App - Level 1 (Automated)
    💼 9.10 Ensure FTP deployments are Disabled - Level 1 (Automated)11
    💼 9.11 Ensure Azure Keyvaults are Used to Store Secrets - Level 2 (Manual _ Not supported, requires a manual assessment)