11 April,19 at 11:50 AM
Background
As more and more organizations run infrastructure in IaaS platforms like Amazon AWS, there's an increased need to enhance security operations and prove effective implementation of security controls. AWS provides a solution set that includes CloudWatch.
About CloudWatch
As defined by Amazon "CloudWatch monitors your Amazon Web Services (AWS) resources and the applications you run on AWS in real time. You can use CloudWatch to collect and track metrics, which are variables you can measure for your resources and applications."
For more information, check out the Getting Started guide for CloudWatch:
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/WhatIsCloudWatch.html
The goal of this article, is to provide some initial guidance to leverage AWS CloudWatch to collect, track and measure Centrify Audit Trail events in Windows systems running in AWS.
For a companion article that covers UNIX/Linux instances, click here: http://community.centrify.com/t5/TechBlog/Labs-Using-Centrify-Audit-Trail-for-UNIX-Linux-with-AWS/ba-p/27874
About Centrify Audit Events
Centrify Audit Events (CentrifyAuditTrail) is the cross-platform framework used by Centrify Server Suite to document and provide access, privilege and audit trail event data. When a Centrify-enabled service is invoked, an audit trail event is written to UNIX syslog or Windows event log. These events are documented in the Audit Events Administrator's Guide for the current version of Server Suite. The types or content of the events vary depending on the edition (Standard or Enterprise)
For more information, check out the current guide for Server Suite 2017: https://docs.centrify.com/en/css/suite2017/centrify-audit-events-guide.pdf
Pre-Requisites
For this lab, you'll need:
Centrify AWS Lab: You'll need to be at Standard Edition level to follow this lab, more info here:
http://community.centrify.com/t5/TechBlog/Labs-Setting-up-an-AWS-Test-Lab-for-Centrify/ba-p/27771
Implementation Overview
Set-up your AWS Linux Instances for CloudWatch Logs
For information on this topic, please review AWS's documentation:
http://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/UsingConfig_WinAMI.html#send_logs_to_cwl
Note that Centrify Audit Trail resides in the Windows Application log. To gather the proper event data, make sure you are capturing information and warning messages, this is configured by modifying the AWS.EC2.Windows.CloudWatch.json file in the proper location based on your deployment (stand alone or using SSN service) and under teh ApplicationEventLog stanza, setting the Levels to 7 as illustrated below:
{ "Id": "ApplicationEventLog", "FullName": "AWS.EC2.Windows.CloudWatch.EventLog.EventLogInputComponent,AWS.EC2.Windows.CloudWatch", "Parameters": { "LogName": "Application", "Levels": "7" } },
Once you have the Windows logs logs for your instances in the corresponding Log Group, please proceed to the next section.
Verify Centrify Audit Trail events in the CloudWatch log group
Now you have verified that your systems are streaming syslog data with Centrify Audit Trail information.
Identify Access and Privilege-related Metrics provided by Centrify
The Centrify Agent for Windows™ provides access control,multi-factor authentication and role-based privileged elevation; this component is called DirectAuthorize. DirectAuthorize controls how users access the system and what commands they can run. The implementation of privilege elevation leverages roles defined in Active Directory and the DirectAuthorize client for Windows.
Example
The metrics that you'll track will depend in your objectives and in your maturity level. For illustration purposes, let's track successful and unsuccessful access and privilege elevation in my Windows EC2 instances. After reviewing the Centrify Audit events guide, I identify the following events:
Access Control
Windows Remote Login Success: These events are recorded when an authorized user from the Centrify zone is succesfully granted access to the Windows system; the Centrify Event Id is 6003.
You can leverage the Audit Trail admin guide for a full catalog.
Windows Remote Login Failure: The opposite of the event above, it's a warning stating that the user was not authorized to log in from the current station. This may denote an attempt at lateral movement. The Event Id is 6011.
Privilege Elevation
Run with Privilege Success: Indicates successful privilege elevation the Centrify Agent for Windows; this may be a privileged desktop or an application; the event ID is 6012.
Run with Privilege Success: Indicates an unsuccessful attempt at privilege elevation the Centrify Agent for Windows; this may be a privileged desktop or an application and could be user error or an abuse attempt; the event ID is 6018.
Create the Filters and Assign a Metric
Create a Dashboard
Before creating a dashboard, you may want to plan how to visualize the data. In some instances it's useful to see the aggregate data (# of events), in others it's useful to see a trend (graphs overlapped with time).
Once you have thought of how to visualize the data, it's time to get started with your Dashboard.
Repeat the process with the trend using with a line or stacked area.
Below is a simple dashboard that includes the metrics above.
Create an Alarm
A meaningful alarm could be based on a pattern outside expected behavior, an availability issue or another event (or aggregation of events) based on the risk that wants to be corrected. This example is for illustration purposes only.
Example: The threshold for attempted abouse of privilege elevation feature of the Centrify Agent for Windows for 3 or more attempts within a 5 minute period, when this happens, an email should be triggered to the members of the Security Operations distribution list.
Trigger the alarm
Conclusion
We have only scratched the surface of the capabilities provided by AWS CloudWatch, however in the context of Identity and Access Management, the enrichment of security operations via logs, alerts and dashboards should be done via standard tools; otherwise if each tool duplicates these capabilties, then security operations won't know where to go first. Centrify provides native plugins for Splunk, IBM QRadar and HP ArcSight. These tools provide both operational data as well as like the following privilege command pie chart.
Related Articles
[Using Centrify Audit Trail for UNIX/Linux with AWS CloudWatch]
[Security Corner] Reviewing your Access and Privilege Management Model with Centrify tools: http://community.centrify.com/t5/TechBlog/Security-Corner-Reviewing-your-Access-and-Privilege-Management/ba-p/26966
Setting a Centrify AWS Test Lab: http://community.centrify.com/t5/TechBlog/Labs-Setting-up-an-AWS-Test-Lab-for-Centrify/ba-p/27771
Using AWS OpsWorks (Chef 12) to deploy Centrify DirectControl on EC2 Linux instances: http://community.centrify.com/t5/TechBlog/Labs-Using-AWS-OpsWorks-Chef-12-to-deploy-Centrify-DirectC
Centrify Audit Trail Administrator's guide (2017): https://docs.centrify.com/en/css/suite2017/centrify-audit-events-guide.pdf