turbot/azure_compliance

Control: 5.3 Ensure that Azure Monitor Resource Logging is Enabled for All Services that Support it

Description

A lack of monitoring reduces the visibility into the data plane, and therefore an organization's ability to detect reconnaissance, authorization attempts or other malicious activity. Unlike Activity Logs, Resource Logs are not enabled by default. Specifically, without monitoring it would be impossible to tell which entities had accessed a data store that was breached. In addition, alerts for failed attempts to access APIs for Web Services or Databases are only possible when logging is enabled.

Remediation

Azure Subscriptions should log every access and operation for all resources. Logs should be sent to Storage and a Log Analytics Workspace or equivalent third-party system. Logs should be kept in readily-accessible storage for a minimum of one year,and then moved to inexpensive cold storage for a duration of time as necessary. If retention policies are set but storing logs in a Storage Account is disabled (for example, if only Event Hubs or Log Analytics options are selected), the retention policies have no effect. Enable all monitoring at first, and then be more aggressive moving data to cold storage if the volume of data becomes a cost concern.

From Azure Portal

The specific steps for configuring resources within the Azure console vary depending on resource, but typically the steps are:

  1. Go to the resource
  2. Click on Diagnostic settings
  3. In the blade that appears, click "Add diagnostic setting"
  4. Configure the diagnostic settings
  5. Click on Save

Default Value

By default, Azure Monitor Resource Logs are 'Disabled' for all resources.

Usage

Run the control in your terminal:

powerpipe control run azure_compliance.control.cis_v150_5_3

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run azure_compliance.control.cis_v150_5_3 --share

SQL

This control uses a named query:

manual_control

Tags