DDoS Mitigation in Cloud with AWS Shield

2 downloads 163 Views 13MB Size Report
Jan 30, 2017 - Traditional. Datacenter ... Redundant Internet connectivity in AWS data centers ..... (https://www.youtub
DDoS Mitigation in Cloud with AWS Shield – and More Dave Walker, Specialist Solutions Architect, Security and Compliance 30/01/17

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

Agenda • • • • • • •

“DDoS 101” Challenges in DDoS Mitigation The AWS Approach AWS Shield EC2 Systems Manager AWS Organizations AWS Cloud Directory

What is DDoS?

DDoS 101

What is DDoS?

Distributed Denial Of Service

Types of DDoS attacks

Types of DDoS attacks

Volumetric DDoS attacks Congest networks by flooding them with more traffic than they are able to handle (e.g., UDP reflection attacks)

Types of DDoS attacks

State-exhaustion DDoS attacks Abuse protocols to stress systems like firewalls, IPS, or load balancers (e.g., TCP SYN flood)

Types of DDoS attacks Application-layer DDoS attacks Use well-formed but malicious requests to circumvent mitigation and consume application resources (e.g., HTTP GET, DNS query floods)

DDoS attack trends

18% State exhaustion

65% Volumetric

18% Application layer

Volumetric

State exhaustion

Application layer

DDoS attack trends

18% State exhaustion

65% Volumetric

18% Application layer

SSDP reflection attacks are very common Reflection attacks have clear signatures, but can consume available bandwidth. Volumetric

State exhaustion

Application layer

DDoS attack trends

18% State exhaustion

65% Volumetric

18% Application layer

Other common volumetric attacks: NTP reflection, DNS reflection, Chargen reflection, SNMP reflection Volumetric

State exhaustion

Application layer

DDoS attack trends

SYN floods can look like real connection attempts And on average, they are larger in volume. They can prevent real users from establishing connections.

18% State exhaustion

65% Volumetric

18% Application layer

Volumetric

State exhaustion

Application layer

DDoS attack trends

18% State exhaustion

65% Volumetric

18% Application layer

DNS query floods are real DNS requests Volumetric

State exhaustion

These can continue for hours and exhaust the available Application layerresources of the DNS server.

DDoS attack trends

18% State exhaustion

65% Volumetric

18% Application layer

Other common application layer attacks: Volumetric

State exhaustion

HTTP GET flood, Slowloris

Application layer

Challenges in mitigating DDoS attacks

Challenges in mitigating DDoS attacks Difficult to enable

Complex set-up

Provision bandwidth capacity

Application re-architecture

Challenges in mitigating DDoS attacks Manual involvement

Traditional Datacenter

Operator involvement to initiate mitigation

Re-route traffic via distant scrubbing location

Increased time to mitigate

Challenges in mitigating DDoS attacks Traffic re-routing = Increased latency for users Traditional Datacenter

Challenges in mitigating DDoS attacks Expensive to use

AWS approach to DDoS protection

At AWS, our goal has always been to … Remove undifferentiated heavy-lifting

Ensure availability

Automatically protected against common attacks

AWS services are highly available

DDoS protections built into AWS Integrated into the AWS global infrastructure

Always-on, fast mitigation without external routing

Redundant Internet connectivity in AWS data centers

DDoS protections built into AWS ü Protection against most common infrastructure attacks ü SYN/ACK Floods, UDP Floods, Refection attacks etc.

DDoS Attack

Users

ü No additional cost

DDoS mitigation systems

Customers keep asking … Does AWS protect me from application layer attacks?

What about large DDoS attacks? Does AWS protect me from DDoS attacks?

How can I get visibility when I get attacked? I want to talk to DDoS experts.

Scaling for DDoS attacks is expensive.

AWS Shield A Managed DDoS Protection Service

AWS Shield Standard Protection

Available to ALL AWS customers at No Additional Cost

Advanced Protection

Paid service that provides additional protections, features and benefits.

AWS Shield Four key pillars…

AWS Integration DDoS protection without infrastructure changes

Always-On Detection and Mitigation Minimize impact on application latency

Affordable

Flexible

Don’t force unnecessary trade-offs between cost and availability

Customize protections for your applications

AWS Shield Standard

AWS Shield Standard Layer 3/4 protection ü Automatic detection & mitigation ü Protection from most common attacks (SYN/UDP Floods, Reflection Attacks, etc.) ü Built into AWS services

Layer 7 protection ü AWS WAF for Layer 7 DDoS attack mitigation ü Self-service & pay-as-you-go

AWS Shield Standard Better protection than ever for your applications running on AWS •

Improved mitigations using proprietary BlackWatch systems



Additional mitigation capacity



Commitment to continuously improve detection and mitigation



Still at no additional cost

AWS Shield Advanced Managed DDoS Protection

AWS Shield Advanced Available today on …

Application Load Balancer

Classic Load Balancer

Amazon CloudFront

Amazon Route 53

AWS Shield Advanced Available today in … US East (N. Virginia)

us-east-1

US West (Oregon)

us-west-2

EU (Ireland)

eu-west-1

Asia Pacific (Tokyo)

ap-northeast-1

AWS Shield Advanced Announcing AWS WAF for Application Load Balancer

Valid users

Attackers

X

AWS WAF

Application Load Balancer

AWS Shield Advanced Always-on monitoring & detection

AWS bill protection

Advanced L3/4 & L7 DDoS protection

24x7 access to DDoS

Attack notification and

Response Team

reporting

AWS Shield Advanced Always-on monitoring & detection

AWS bill protection

Advanced L3/4 & L7 DDoS protection

24x7 access to DDoS

Attack notification and

Response Team

reporting

AWS Shield Advanced Always-on monitoring & detection

AWS bill protection

Advanced L3/4 & L7 DDoS protection

24x7 access to DDoS

Attack notification and

Response Team

reporting

AWS Shield Advanced Always-on monitoring & detection

AWS bill protection

Advanced L3/4 & L7 DDoS protection

24x7 access to DDoS

Attack notification and

Response Team

reporting

AWS Shield Advanced Always-on monitoring & detection

AWS bill protection

Advanced L3/4 & L7 DDoS protection

24x7 access to DDoS

Attack notification and

Response Team

reporting

AWS Shield Advanced Always-on monitoring & detection

AWS bill protection

Advanced L3/4 & L7 DDoS protection

24x7 access to DDoS

Attack notification and

Response Team

reporting

Always-on monitoring and detection

Network flow monitoring

Application traffic monitoring

Always-on monitoring and detection

Signature based detection

Heuristics-based anomaly detection

Baselining

Always-on monitoring and detection Heuristics-based anomaly detection

Detects anomalies based on attributes such as: • Source IP • Source ASN • Traffic levels • Validated sources

Always-on monitoring and detection Baselining

Continuously baselining normal traffic patterns • HTTP Requests per second • Source IP Address • URLs • User-Agents

AWS Shield Advanced Always-on monitoring & detection

AWS bill protection

Advanced L3/4 & L7 DDoS protection

24x7 access to DDoS

Attack notification and

Response Team

reporting

Advanced DDoS protection

Layer 3/4

Layer 7

infrastructure

application

protection

protection

Advanced DDoS protection

Layer 3/4

Layer 7

infrastructure

application

protection

protection

Layer 3/4 infrastructure protection Advanced mitigation techniques

Deterministic filtering

Traffic prioritization based on scoring

Advanced routing policies

Layer 3/4 infrastructure protection Deterministic filtering Automatically filters malformed TCP packets • IP checksum • TCP valid flags • UDP payload length • DNS request validation

Layer 3/4 infrastructure protection Traffic prioritization based on scoring

Low suspicion attributes

High suspicion attributes

Normal packet or request header Traffic composition and volume is typical given its source Traffic valid for its destination

• • • • • •

Suspicious packet or request headers Entropy in traffic by header attribute Entropy in traffic source and volume Traffic source has a poor reputation Traffic invalid for its destination Request with cache-busting attributes

Layer 3/4 infrastructure protection Traffic prioritization based on scoring •

Inline inspection and scoring



Preferentially discard lower priority (attack) traffic



False positives are avoided and legitimate viewers are protected High-suspicion packets dropped Low-suspicion packets retained

Layer 3/4 infrastructure protection Advanced routing policies



Distributed scrubbing and bandwidth capacity



Automated routing policies to absorb large attacks



Manual traffic engineering

Layer 3/4 infrastructure protection Additional protections against larger and more sophisticated attacks

• Advanced routing capabilities • Additional mitigation capacity

Advanced DDoS protection

Layer 3/4

Layer 7

infrastructure

application

protection

protection

AWS WAF – Layer 7 application protection

Web traffic filtering with custom rules

Malicious request blocking

Active monitoring and tuning

AWS WAF – Layer 7 application protection Three modes of operation

Self-service

Engage DDoS experts

Proactive DRT engagement

AWS WAF – Layer 7 application protection Self-service

AWS WAF included at no additional cost

AWS WAF – Layer 7 application protection Engage DDoS experts 1. You engage the AWS DDoS Response Team (DRT) 2. DRT triages attack 3. DRT assists you with creating AWS WAF rules

AWS WAF – Layer 7 application protection Proactive DRT engagement 1. Always-on monitoring engages the AWS DDoS Response Team (DRT) 2. DRT proactively triages DDoS attack 3. DRT creates AWS WAF rules (prior authorization required)

AWS Shield Advanced Always-on monitoring & detection

AWS bill protection

Advanced L3/4 & L7 DDoS protection

24x7 access to DDoS

Attack notification and

Response Team

reporting

Attack notification and reporting •

Real-time notification of attacks via Amazon CloudWatch



Near real-time metrics and packet captures for attack forensics



Historical attack reports

Attack monitoring and detection

AWS Shield Advanced Always-on monitoring & detection

AWS bill protection

Advanced L3/4 & L7 DDoS protection

24x7 access to DDoS

Attack notification and

Response Team

reporting

24x7 access to DDoS Response Team Critical and urgent priority cases are answered quickly and routed directly to DDoS experts Complex cases can be escalated to the AWS DDoS Response Team (DRT), who have deep experience in protecting AWS as well as Amazon.com and its subsidiaries

24x7 access to DDoS Response Team

Before Attack

During Attack

After Attack

Proactive consultation and best practice guidance

Attack mitigation

Post-mortem analysis

AWS Shield Advanced Always-on monitoring & detection

AWS bill protection

Advanced L3/4 & L7 DDoS protection

24x7 access to DDoS

Attack notification and

Response Team

reporting

AWS cost protection AWS absorbs scaling cost due to DDoS attack •

Amazon CloudFront



Elastic Load Balancer



Application Load Balancer



Amazon Route 53

AWS DDoS Shield: Pricing Standard Protection

• •

No commitment No additional cost

Advanced Protection • • •

1 year subscription commitment Monthly base fee: $3,000 Data transfer fees Data Transfer Price ($ per GB)

First 100 TB Next 400 TB Next 500 TB Next 4 PB Above 5 PB

CloudFront

ELB

$0.025 $0.020 $0.015 $0.010 Contact Us

0.050 0.040 0.030 Contact Us Contact Us

AWS DDoS Shield: How to choose Standard Protection For protection against most common DDoS attacks, and access to tools and best practices to build a DDoS resilient architecture on AWS.

Advanced Protection For additional protection against larger and more sophisticated attacks, visibility into attacks, AWS cost protection, Layer 7 mitigations, and 24X7 access to DDoS experts for complex cases.

AWS Shield: Getting started Standard Protection

You get it automatically

Advanced Protection

Enable via the AWS Console

Configuration Monitoring: Inside EC2 Instances (With new enhancements from Re:Invent 2016!)

What is Inspector? • Application security assessment • Selectable built-in rules • Security findings •

Guidance and management

• Automatable via APIs

Getting started

Rule packages • • • • • •

CVE (common vulnerabilities and exposures) CIS OS-level Benchmarks AWS network security best practices AWS authentication best practices AWS OS security best practices AWS application security best practices

Prioritised findings

Detailed remediation recommendations

Amazon EC2 Systems Manager • Announced at Re:Invent 2016 • See sessions WIN401 (https://www.youtube.com/watch?v=Eal9K0aGLYI ) and WIN402 (https://www.youtube.com/watch?v=L5TglwWI5Yo )

Systems Manager Capabilities Configuration, Administration

Shared Capabilities

Update and Track

Automation Run Command

Maintenance Windows Inventory

State Manager

Parameter Store Patch Manager

Inventory

Inventory What we heard: • • •

Accurate software inventory is critical for understanding fleet configuration and license usage Legacy solutions not optimised for cloud Self-hosting requires additional overhead

Inventory Introducing Inventory • • • • •

End-to-end inventory collection (EC2/on-premises/Workspaces) Linux / Windows Powerful query syntax Extensible inventory schema Integrated with AWS services

Inventory – System Diagram

AWS Config Console + CLI/APIs

AWS Config

EC2 Windows Instance

EC2 Console, SSM CLI/APIs

SSMAgent

AWS SSM Service

EC2 Linux Instance

State Manager

SSMAgent EC2 Inventory SSM document

Inventory Store

OnPremises Instance SSMAgent

Inventory – Getting Started

1. Configure Inventory policy

2. Apply Inventory policy

3. Query inventory

Inventory – Configuration Create an Inventory association 1. Select instances (by instance ID or tag) 2. Select scan frequency (hours, minutes, days, NOW) 3. Select Inventory Types to gather • • • • • •

Instance information Applications AWS Components Network configuration Windows Updates Custom Inventory

Inventory – Custom Inventory Type Custom Inventory Collection • •

Extensible: record any attribute for a given instance On-premise Examples: rack location, BIOS version, firewall settings

Two ways to record custom inventory types 1. Agent/on-instance: Write a cron job to record custom inventory files to a predefined path 2. API: Use PutInventory API

Inventory Manager Query • • •

Search by inventory attribute Partial and inverse searches eg "Windows 2012 r2 instances running SQL Server 2016 where Windows Update KB112342 is not installed"

Integration with AWS Config • •

Record inventory changes over time Use AWS Config Rules to monitor changes, notify

State Manager

State Manager • • • • •

Maintain consistent state of instances Reapply to keep instances from drifting Easily view status of configuration changes Define schedule – ad hoc, periodic Track aggregate status for your fleet

State Manager – Getting started • Document: Author your intent • Target: Instances or tag queries • Association: Binding between a document and a target • Schedule: When to apply your association • Status: Check the state of your association at an aggregate or instance level

Creating an Association aws ssm create-association --document-name WebServerDocument --document-version \$DEFAULT --schedule-expression cron(0 */30 * * * ? *) --targets “Key=tag:Name;Values=WebServer” --output-location "{ \"S3Location\": { \"OutputS3Region\": \“us-east-1\", \"OutputS3BucketName\": \“MyBucket\", \"OutputS3KeyPrefix\": \“MyPrefix\" } }“

Configures all instances that match the tag query and reapplies every 30 minutes

Parameter Store

Parameter Store • Centrally store and find config data • Repeatable, automatable management (e.g. SQL connection strings) • Granular access control – view, use and edit values • Encrypt sensitive data using your own AWS KMS keys

Parameter Store – Getting started • Parameter: Key-value pair • Secure Strings: Encrypt sensitive parameters with your own KMS or default account encryption key • Reuse: In Documents and easily reference at runtime across EC2 Systems Manager using {{ssm:parametername}} • Access Control: Create an IAM policy to control access to specific parameter

Creating and using a parameter aws ssm put-parameter --name mycommand --type string --value “dir C:\Users” aws ssm send-command --name AWS-RunPowerShellScript --parameters commands=[“echo {{ssm:mycommand}}”] --target Key=tag:Name,Values=WebServer

AWS Organizations (In limited beta right now...)

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

What is AWS Organizations? • • • • • • • •

A new AWS management capability Enables customers with multiple AWS accounts to centrally view and manage their AWS accounts Consolidated Billing families automatically migrated to an Organization Customers can programmatically create new AWS accounts Allows customers to create Administrative Root(s) (hierarchies) for delegated administration of different types of controls Allows customers to logically group AWS accounts into one or more Organizational Unit(s) (OU) to create units of management Hierarchically organize OUs to match business requirements Assign organizational control policies to organization, OU, and/or account(s)

Core concepts •

AWS account -



Organization -



Set of AWS accounts logically grouped within an organization

Administrative root -



Consolidated set of all AWS accounts customers want to centrally control

Organizational Unit (OU) -



Legal and business relationship with Amazon Resource container for AWS resources such as S3 buckets Access to resources controlled on IAM principals (users, roles) Smallest unit of management in AWS Organizations

Starting point for hierarchy of OUs

Organization Control Policy (OCP) -

Document describing controls to be applied to selected set of accounts Different use cases have different types of OCPs

Characteristics of organizations • The AWS account that created the organization is also the owner of the organization and its “resources” and is called the Master Account • IAM permissions control who can manage the organization • All organization management activity is logged in AWS CloudTrail in the Master Account • An AWS account can only be a member of one organization • An AWS account can be a member of multiple OUs • Policy-based controls are managed per type (financial, security, etc.) => separation of duties

Multiple Administrative Roots

Use case Customer has six AWS accounts and wants to centrally manage the financial and security aspects of these AWS accounts. Financially they want to organize the AWS accounts according to their cost centers and from a security perspective they differentiate between developer, test, and production accounts.

Financial Administrative Root 1

Root

Finance 2

OUs

AWS accounts

CC1

A1

A2

A3

CC2

A4

A5

3

A6

Security Administrative Root A

Root

Security B

OUs

AWS accounts

Prod

A1

A2

A3

Test

A4

Dev

A5

A6

C

Multi-tree support

Root

A

Finance

Security

B

2

OUs

AWS accounts

1

CC1

A1

Prod

CC2

A2

A3

A4

Dev

Test

A5

3

A6 C

V1 • • •

Create and manage organization, OUs, AWS accounts Existing CB families automatically converted to organization Pre-created single Administrative Root - One level deep OU hierarchies



OCP supported: Service Control - AWS service actions available for use within AWS accounts - White list or black list - Necessary but not sufficient

Service Control

Allow EC2:* Allow S3:*

IAM permissions

Allow EC2:*

Allow EC2:* Allow SQS:*

Cloud Directory • Announced 27/01/17 • Blog post at https://aws.amazon.com/blogs/aws/category/amazoncloud-directory/ • API details at http://docs.aws.amazon.com/amazoncds/latest/APIRefer ence/welcome.html • ...

Helpful Resources Compliance Enablers:

https://aws.amazon.com/compliance/compliance-enablers/

Risk & Compliance Whitepaper:

https://aws.amazon.com/whitepapers/overview-of-risk-and-compliance/

Compliance Centre Website:

https://aws.amazon.com/compliance

Security Centre:

https://aws.amazon.com/security

Security Blog:

https://blogs.aws.amazon.com/security/

Well-Architected Framework:

https://aws.amazon.com/blogs/aws/are-you-well-architected/

AWS Audit Training:

[email protected]

Helpful Videos The Shared Security Model in Detail:

https://youtu.be/RwUSPklR24M

IAM Recommended Practices:

https://youtu.be/R-PyVnhxx-U

Encryption on AWS:

https://youtu.be/DXqDStJ4epE

Securing Serverless Architectures:

https://www.youtube.com/watch?v=8mpTpOXmws8

Account Separation and Mandatory Access Control: https://youtu.be/CNSaJs7pWjA IoT Security Recommendations: https://www.brighttalk.com/webcast/9019/229025?utm_campaign=CampaignPage