AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch...

83
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Henrik Johansson Security Solutions Architect 12/01/16 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules SAC401

Transcript of AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch...

Page 1: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Henrik Johansson – Security Solutions Architect

12/01/16

5 Security Automation Improvements You

Can Make by Using Amazon CloudWatch

Events and AWS Config RulesSAC401

Page 2: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

What to expect from the session

Bonus!

Why security automation

Tooling

The anatomy of automation

Demo & code 5 x Automation

Other resources

Page 3: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

What to expect from the session

Bonus!

Why security automation

Tooling

The anatomy of automation

Demo & code 5 x Automation

Other resources

5 x Automation

• Automatic CloudTrail remediation

• CloudFormation template audit

• AWS CIS Foundation Framework

account assessment

• Auto MFA for IAM

• The tainted server – Auto isolation

Page 4: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Bonus

Page 5: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Bonus

Code available for download

as Open Source on GitHub at:

http://github.com/awslabs/aws-security-automation

https://github.com/awslabs/aws-security-benchmark

Page 6: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Why security automation

Reduce risk of human error

Page 7: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Why security automation

Reduce risk of human error

- Automation is effective

Page 8: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Why security automation

Reduce risk of human error

- Automation is effective

- Automation is reliable

Page 9: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Why security automation

Reduce risk of human error

- Automation is effective

- Automation is reliable

- Automation is scalable

Page 10: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Why security automation

Reduce risk of human error

- Automation is effective

- Automation is reliable

- Automation is scalable

Don’t worry…we still need humans

Page 11: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Why security automation

Reduce risk of human error

- Automation is effective

- Automation is reliable

- Automation is scalable

Don’t worry…we still need humans

Page 12: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Why security automation

High pace of innovation is great

Page 13: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Why security automation

We also want to have high pace of:

Detection

Alerting

Remediation

Countermeasures

Forensics

Page 14: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

AWS Tooling

Execution

• Lambda

Tracking

• AWS Config Rules

• Amazon CloudWatch Events

• AWS CloudTrail

• AWS Inspector

Track/Log

• Amazon CloudWatch Logs

• Amazon DynamoDB

Alert

• SNS

Third party Open Source

Page 15: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

The anatomy of security automationM

od

e

Section Actions

Initia

te

React Config Rules / CloudWatch Events / Log Parsing

Trigger Lambda

Learn Lambda / CloudWatch Logs

Exe

cu

tio

n

Priority Action Restart service, delete user, etc.

Forensics Discover: Who/where/when, allowed to execute?

Countermeasure Disable access keys, isolate instance, etc.

Alert Text/Page, email, ticket system

Logging Database, ticket system, encrypt data?

Page 16: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Automatic CloudTrail Remediation

Solves:

- Verify that CloudTrail is running.

- Prevent repeated and future attempts to disable CloudTrail

Services used:

Lambda, CloudTrail, CloudWatch Events

Page 17: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Demo

Page 18: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights

Page 19: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights – Extract event info

Page 20: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights – Execution order

#1

Page 21: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights – Forensics

Page 22: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights – Countermeasure

Page 23: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights – Countermeasure

Page 24: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code review

Page 25: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

CloudFormation template audit

Solves:

- Users deploying infrastructure that do not conform to

security policy

- Reduce risk from unapproved changes to templates

Services used:

CodePipeline, CloudWatch Events, Lambda

Page 26: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights

Page 27: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights - CodePipeline

Page 28: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights - Flow

Page 29: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights – Rules

Page 30: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights – The rules

'rule': "AllowHttp",

'category': "SecurityGroup",

'ruletype': "regex",

'active': "Y",

'riskvalue': "3",

'ruledata':

"^.*Ingress.*[fF]rom[pP]ort.\s*:\s*u?.(80)"

Page 31: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights – The rules

'rule': "SSHOpenToWorld",

'category': "SecurityGroup",

'ruletype': "regex",

'active': "Y",

'riskvalue' ”7",

'ruledata':

"^.*Ingress.*(([fF]rom[pP]ort|[tT]o[pP]ort)

.\s*:\s*u?.(22).*[cC]idr[iI]p.\s*:\s*u?.((0

\.){3}0\/0)|[cC]idr[iI]p.\s*:\s*u?.((0\.){3

}0\/0).*([fF]rom[pP]ort|[tT]o[pP]ort).\s*:\

s*u?.(22))"

Page 32: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights - Evaluating

Page 33: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights - Evaluating

Page 34: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Risk and next step

if risk < 5:

put_job_success(job_id, 'Job succesful, minimal

or no risk detected.')

elif 5 <= risk < 10:

put_job_success(job_id, 'Job succesful, medium

risk detected, manual approval needed.')

elif risk >= 10:

put_job_failure(job_id, 'Function exception:

Failed filters '+str(failedRules))

Page 35: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code review

Page 36: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

AWS CIS Foundation Framework account

assessment

Solves:

- Validate AWS account against security best practices

- Integrate with AWS Config

- Create report for easy and secure consumption

Services used:

Lambda, Config Rules

References:

AWS CIS Foundation Framework validation

Page 37: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Demo

Page 38: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights

Page 39: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight - Options

Page 40: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight - Options

Page 41: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight - Control structure

Page 42: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight - Control structure

Page 43: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight - Control structure

Page 44: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight - Control structure

Page 45: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Result - Config

Page 46: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Result - Config

Page 47: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Result – Config - Annotation

Page 48: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Result – HTML Report

Page 49: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Result – S3 Pre-Signed URL

Page 50: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Result – S3 Pre-Signed URL

Page 51: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code review

Page 52: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Auto MFA for IAM

Solves:

- Automatic creation and assignment of virtual MFA for new IAM

users.

- Removes time consuming tasks for single and bulk operations

- No requirements of user interaction or giving permissions using IAM

policy for self service

Services used:

CloudWatch Events, Lambda and IAM

Page 53: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Demo

Page 54: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights

Page 55: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Priority action

Page 56: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Create virtual MFA

Page 57: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Enable MFA

Page 58: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Enable MFA

Page 59: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Calculate tokens

Page 60: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Assign MFA

Page 61: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Assign MFA

Page 62: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Encrypt string

Page 63: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code review

Page 64: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

The tainted server – Auto isolation

Solves:

• Enforces immutable infrastructure

• Automatically isolate instances for further forensics upon events like

local SSH logons or increase Deny discovered in VPC flow logs

Services used:

CloudWatch Events, Config Rules, Lambda, VPC Flow logs and

discovery trigger

Page 65: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Demo

Page 66: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlights

Page 67: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Individual instances

Page 68: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Get tainted

Page 69: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Get tainted

Page 70: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Get tainted

Page 71: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Get tainted

Page 72: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Detach Auto Scaling Group

Page 73: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Detach Auto Scaling Group

Page 74: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Identify security group

Page 75: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Identify security group

Page 76: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Identify security group

Page 77: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code highlight – Identify security group

Page 78: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Code review

Page 79: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Other resources / Open Source

Some of the projects out there:

• ThreatResponse.cloud https://threatresponse.cloud

• Cloud Custodian https://github.com/capitalone/cloud-custodian

• Security Monkey https://github.com/Netflix/security_monkey

• FIDO https://github.com/Netflix/Fido

• CloudSploit https://github.com/cloudsploit

And many more…

Page 80: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Bonus

Code available for download

as Open Source on GitHub at:

http://github.com/awslabs/aws-security-automation

https://github.com/awslabs/aws-security-benchmark

Page 81: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Related Sessions

SEC301 - Audit Your AWS Account Against Industry Best

Practices: The CIS AWS Benchmarks

SEC311 - How to Automate Policy Validation

SEC313 - Automating Security Event Response, from Idea to Code

to Execution

SAC315 - Scaling Security Operations and Automating

Governance: Which AWS Services Should I Use?

SEC401 - Automated Formal Reasoning About AWS Systems

Page 82: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Thank you!

Page 83: AWS re:Invent 2016: 5 Security Automation Improvements You Can Make by Using Amazon CloudWatch Events and AWS Config Rules (SAC401)

Remember to complete

your evaluations!