SlideShare a Scribd company logo
1 of 52
Download to read offline
Best practices for AWS security
Julien Simon"
Principal Technical Evangelist
julsimon@amazon.fr
@julsimon
Agenda
•  Understand the Shared Security Model
•  Encrypt everything
•  Manage users and permissions
•  Log everything
•  Automate security checks
Shared Security Model
AWS Shared Responsibility Model
AWS Foundation Services
Compute
 Storage
 Database
 Networking
AWS Global
Infrastructure
 Regions
Availability Zones
Edge
Locations
Client-side Data
Encryption
Server-side Data
Encryption
Network Traffic
Protection
Platform, Applications, Identity, and Access Management
Operating System, Network, and Firewall Configuration
Customer Applications & Content
Customers
Customers are
responsible for
security IN the cloud
AWS is responsible
for the security OF
the cloud
Such as Amazon EC2, Amazon EBS, and Amazon VPC
Shared Security Model: Infrastructure Services
Such as Amazon RDS and Amazon EMR 
Shared Security Model: Platform Services
Such as Amazon S3 and Amazon DynamoDB 
Shared Security Model: Managed Services
Encrypt everything
Encryption options
Native server-side encryption for most services
§  S3, EBS, RDS, Redshift, etc.
Flexible key management
§  AWS Key Management Service 
§  AWS CloudHSM
3rd-party encryption
§  Trend Micro, SafeNet, Vormetric, Hytrust, Sophos etc.
§  AWS Marketplace : https://aws.amazon.com/marketplace/
Client-side encryption
§  Tricky business, please be careful!
create-volume [--dry-run | --no-dry-run] [--size <value>]
[--snapshot-id <value>] --availability-zone <value> 

[--volume-type <value>] [--iops <value>] 

[--encrypted | --no-encrypted] [--kms-key-id <value>] 

[--cli-input-json <value>] [--generate-cli-skeleton]
Server-side encryption"
Amazon EBS
Server-side encryption"
Amazon RDS
aws rds create-db-instance --region us-west-2 

--db-instance-identifier myrdsinstance 
--allocated-storage 20 --storage-encrypted 
[ --kms-key-id xxxxxxxxxxxxxxxxxx ]
--db-instance-class db.m4.large --engine mysql 
--master-username myawsuser --master-user-password myawsuser
http://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html
Server-side encryption"
Amazon Redshift
Server-side encryption on S3 (SSE-S3)
SSE-S3 with the AWS SDK for Java
File file = new File(uploadFileName);
PutObjectRequest putRequest = new PutObjectRequest(bucketName, keyName, file);
// Request server-side encryption.
ObjectMetadata objectMetadata = new ObjectMetadata();
objectMetadata.setSSEAlgorithm(ObjectMetadata.AES_256_SERVER_SIDE_ENCRYPTION);
putRequest.setMetadata(objectMetadata);
PutObjectResult response = s3client.putObject(putRequest);
System.out.println("Uploaded object encryption status is " +
response.getSSEAlgorithm());
AWS KMS
Two-tiered key hierarchy using envelope encryption:
•  Unique data key encrypts customer data
•  AWS KMS master keys encrypt data keys
Benefits:
•  Limits risk of compromised data key
•  Better performance for encrypting large data
•  Easier to manage small number of master keys
than millions of data keys
•  Centralized access and audit of key activity
Data key 1
Amazon
S3 object
Amazon
EBS volume
Data key 2
 Data key 3
 Data key 4
Custom"
application
Customer master"
key(s)
Amazon
RDS
instance
https://aws.amazon.com/kms/
Your RDS instance
+
Data key Encrypted data key
Encrypted"
data
Master key(s) in "
customer’s account
AWS KMS
1.  Service requests encryption key to use to encrypt data, passes reference to master key in account
2.  Client request authenticated based on permissions set on both the user and the key
3.  A unique data encryption key is created and encrypted under the KMS master key
4.  Plaintext and encrypted data key returned to the client
5.  Plaintext data key used to encrypt data and then deleted when practical
6.  Encrypted data key is stored; it’s sent back to KMS when needed for data decryption
How keys are used to protect your data
https://aws.amazon.com/kms/
Encryption SDKs
•  Different from the AWS SDKs

•  Java
https://aws.amazon.com/blogs/security/how-to-use-the-new-aws-
encryption-sdk-to-simplify-data-encryption-and-improve-application-
availability/ 

•  Python (released yesterday!) 
https://aws.amazon.com/blogs/security/new-aws-encryption-sdk-for-
python-simplifies-multiple-master-key-encryption/
Manage Permissions
Identity and Access Management (IAM)
1.  Create users
 Advantages
§  Unique credentials
§  Easier to rotate
§  Easier to track
Identity and Access Management (IAM)
1.  Create users
2.  Apply the principle of least privilege
Advantages
§  Reduce the risk of human error
§  Finer control
§  Easier to add permissions than to
remove them
§  Access Advisor tells you what
permissions are actually used
Identity and Access Management (IAM)
1.  Create users
2.  Apply the principle of least privilege
3.  Factorize permissions with groups
Advantages
§  Simplest way to manage
permissions for similar users
Identity and Access Management (IAM)
1.  Create users
2.  Apply the principle of least privilege
3.  Factorize permissions with groups
4.  Use conditional permissions for privileged
accounts (time, IP adress, etc).
Advantages
§  Extra security!
§  Possible for all APIs
Identity and Access Management (IAM)
1.  Create users
2.  Apply the principle of least privilege
3.  Factorize permissions with groups
4.  Use conditional permissions for privileged
accounts (time, IP adress, etc).
5.  Enable Cloudtrail to log all API calls
Advantages
§  Keep a log of ALL activity inside
your AWS account
§  Useful for debugging
§  Vital for forensics
Identity and Access Management (IAM)
6.  Use a strong password policy
  
  
Advantages
§  Do I really have to explain?
Identity and Access Management (IAM)
6.  Use a strong password policy
7.  Rotate security credentials regularly
  
Advantages
§  Just in case one of your
credentials leaked…
https://aws.amazon.com/fr/blogs/security/how-to-rotate-access-keys-for-iam-users/
Identity and Access Management (IAM)
6.  Use a strong password policy
7.  Rotate security credentials regularly
8.  Enable MFA for privileged users
Advantages
§  Vital for protection against
phishing attacks
https://aws.amazon.com/fr/blogs/security/how-to-enable-mfa-protection-on-your-aws-api-calls/
Identity and Access Management (IAM)
9.  Use IAM roles to delegate permissions
  
  
Advantages
§  No need to store or share
security credentials
§  Use cases
§  Cross-account access
§  Federation
Identity and Access Management (IAM)
9.  Use IAM roles to delegate permissions
10.  Use IAM roles for EC2 instances
  
Avantages
§  No need to store, share or rotate
security credentials
§  Application is granted least-
privilege
§  Integration with the AWS SDK
and the AWS CLI
Identity and Access Management (IAM)
9.  Use IAM roles to delegate permissions
10.  Use IAM roles for EC2 instances
11.  Delete credentials for the root account
Avantages
§  C’mon, don’t use ‘root’
11 IAM Best Practices
1.  Create users!
2.  Apply the principle of least privilege
3.  Factorize permissions in groups
4.  Use conditional permissions for privileged accounts (time, IP adress, etc).
5.  Enable Cloudtrail to log all API calls
6.  Use a strong password policy
7.  Rotate security credentials regularly
8.  Enable MFA for privileged users
9.  Use IAM roles to delegate permissions
10. Use IAM roles for EC2 instances
11. Delete credentials for the root account
AWS account: one or many ?
Use a single AWS account when:
§  You only need simple controls on who does what
§  You don’t need to isolate projects or teams
§  You don’t need to track costs separately

Use multiple accounts when:
§  You need total isolation between projects or teams
§  You need total isolation for some of your data (such as Cloudtrail logs)
§  You want to keep track of costs separately (you can still get a single bill with
Consolidated Billing)
Log Everything
Logs? Sure, we got logs!
Infrastructure Logs
§  AWS CloudTrail
§  VPC Flow Logs
Service Logs
§  Amazon S3
§  AWS Elastic Load
Balancing
§  Amazon CloudFront
§  AWS Lambda
§  AWS Elastic Beanstalk
§  …
Instance Logs
§  UNIX / Windows logs
§  NGINX/Apache/IIS
§  Your own logs
§  …
CloudTrail
1.  Enable Cloudtrail in all regions

Advantages
§  This takes 10 seconds
§  It works for all regions, even if
you don’t use them yet.
CloudTrail
1.  Enable Cloudtrail in all regions
2.  Enable log validation

Advantages
§  Guarantees log integrity
§  Vital for audits and forensics
§  Based on SHA-256 and RSA signature
CloudTrail
1.  Enable Cloudtrail in all regions
2.  Enable log validation
3.  Encrypt logs

Advantages
§  SSE-S3 by default
§  KMS is supported too
CloudTrail
1.  Enable Cloudtrail in all regions
2.  Enable log validation
3.  Encrypt logs
4.  Export logs to Cloudwatch Logs
Advantages
§  Easier to search
§  Trigger alerts on specific events
CloudTrail
1.  Enable Cloudtrail in all regions
2.  Enable log validation
3.  Encrypt logs
4.  Export logs to Cloudwatch Logs
5.  Centralize logs in a single place
Avantages
§  Single bucket
§  Could be in a dedicated account
CloudTrail partners
https://aws.amazon.com/cloudtrail/partners/
VPC Flow Logs
§  Store all network traffic in Cloudwatch Logs
§  They can be enable by VPC, by subnet our by network interface
§  It’s going to be a lot of data: what do you really need?
•  Everything, Allow, Deny
•  For debugging or for security monitoring?
AWS Service Logs
Many services let you export their logs to CloudWatch Logs, CloudTrail ou S3.

§  Elastic Beanstalk à CloudWatch Logs "
https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.cloudwatchlogs.html
https://aws.amazon.com/fr/about-aws/whats-new/2016/12/aws-elastic-beanstalk-supports-application-version-lifecycle-management-and-
cloudwatch-logs-streaming/
§  ECS (instances & containers) à CloudWatch Logs
http://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_awslogs.html 
§  Lambda à CloudWatch Logs "
http://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions-logs.html 
§  S3 à CloudTrail (S3 data events)
§  CloudFront à S3 "
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html 
§  ELB / ALB à S3 "
http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-access-logs.html
EC2 Logs
§  You can export them to Cloudwatch Logs with the
Cloudwatch Agent.
§  Storage costs are pretty low, so it’s probably worth it
§  Available for Linux and Windows
§  Logs can be exported to S3 and ElasticSearch
§  Metrics and alarms allow you to keep track of
suspicious events
Automate Security Checks
You can automate on multiple levels
•  Infrastructure / application automation
-  AWS CloudFormation
-  AWS OpsWorks
•  DIY automation
-  AWS CloudTrail à CloudWatch Logs à CloudWatch alerts
-  API calls à Amazon CloudWatch Events à SNS / SQS / Kinesis / Lambda
•  Compliance automation
-  AWS Inspector
-  AWS Config Rules
Configuring CloudWatch alarms for CloudTrail
•  CloudFormation template with 10 predefined alarms
•  Create, modify or delete Security Groups
•  Modify IAM policies
•  Failed connections to the console
•  Failed API calls caused by permission issues
•  Set them up in less than 5 minutes!
•  Get e-mail notifications when these events occur in your AWS
account
http://docs.aws.amazon.com/fr_fr/awscloudtrail/latest/userguide/use-cloudformation-template-to-create-cloudwatch-alarms.html 
https://s3-us-west-2.amazonaws.com/awscloudtrail/cloudwatch-alarms-for-cloudtrail-api-activity/CloudWatch_Alarms_for_CloudTrail_API_Activity.json
AWS Config Rules
•  Config Rules checks that AWS resources are compliant 
•  You can use:
•  Pre-defined rules: MFA on, CloudTrail on, EBS encryption, etc.
•  Your own rules
•  Checks can be:
•  Periodic (1, 3, 6, 12 or 24 hours)
•  Triggered by configuration changes
•  Notifications are sent to SNS…
•  ... Which means that you can process them with Lambda functions
•  Non-compliant instance? Kill it!
Amazon Inspector
•  This service allows you to check the configuration
and the behavior of EC2 instances.
•  Agent-based
•  Can run from 15  minutes to 24 hours
•  Reports and advice on how to fix issues
•  Can be automated with the AWS API
•  Built-in rule packages
Amazon Inspector – Rule packages
•  Common Vulnerabilities and Exposures
•  http://cve.mitre.org
•  https://s3-us-west-2.amazonaws.com/rules-engine/CVEList.txt (47,050)
•  CIS Operating System Security Configuration Benchmarks
•  Center for Internet Security http://cisecurity.org 
•  http://benchmarks.cisecurity.org 
•  Security Best Practices
•  SSH, passwords, etc. (Linux uniquement)
•  https://docs.aws.amazon.com/fr_fr/inspector/latest/userguide/inspector_security-best-
practices.html
•  Runtime Behavior Analysis
•  How instances behave during testing (networking, protocols, etc.)
•  https://docs.aws.amazon.com/fr_fr/inspector/latest/userguide/inspector_runtime-behavior-
analysis.html
AWS Trusted Advisor
Please promise me this
•  Never share credentials across users / applications
•  Never store credentials in source code (they’ll end up on Github)
•  Never store credentials on EC2 instances
•  (Almost) never work with the root account
•  One account per user / one role per app with least privilege
•  Use MFA for privileged accounts
•  Enable CloudTrail in all regions
•  Encrypt everything
•  Automate security checks and alarms
“It’s not because you’re paranoid that they’re not after you”
Additional resources
Whitepapers
https://d0.awsstatic.com/whitepapers/aws-security-whitepaper.pdf 
http://d0.awsstatic.com/whitepapers/architecture/AWS_Well-Architected_Framework.pdf 
https://d0.awsstatic.com/whitepapers/Security/AWS_Security_Best_Practices.pdf 

AWS re:Invent 2016: Security Services State of the Union (SEC312) - Steve Schmidt, CISO, Amazon Web Services
https://www.youtube.com/watch?v=8ZljcKn8FPA 

AWS re:Invent 2016: Automating Security Event Response, from Idea to Code to Execution (SEC313)
https://www.youtube.com/watch?v=x4GkAGe65vE 

AWS re:Invent 2016: Automated Governance of Your AWS Resources (DEV302)
https://www.youtube.com/watch?v=2P2I7HlrFtA 

AWS re:Invent 2016: Scaling Security Operations and Automating Governance (SAC315)
https://www.youtube.com/watch?v=_yfeCvqHdNg
Julien Simon
julsimon@amazon.fr
@julsimon 
Your feedback 
is important to us!

More Related Content

What's hot

Using AWS Control Tower to govern multi-account AWS environments at scale - G...
Using AWS Control Tower to govern multi-account AWS environments at scale - G...Using AWS Control Tower to govern multi-account AWS environments at scale - G...
Using AWS Control Tower to govern multi-account AWS environments at scale - G...Amazon Web Services
 
Deep Dive on AWS Single Sign-On - AWS Online Tech Talks
Deep Dive on AWS Single Sign-On - AWS Online Tech TalksDeep Dive on AWS Single Sign-On - AWS Online Tech Talks
Deep Dive on AWS Single Sign-On - AWS Online Tech TalksAmazon Web Services
 
Introduction to AWS Organizations
Introduction to AWS OrganizationsIntroduction to AWS Organizations
Introduction to AWS OrganizationsAmazon Web Services
 
AWS Storage - S3 Fundamentals
AWS Storage - S3 FundamentalsAWS Storage - S3 Fundamentals
AWS Storage - S3 FundamentalsPiyush Agrawal
 
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...Amazon Web Services
 
Encryption and Key Management in AWS
Encryption and Key Management in AWSEncryption and Key Management in AWS
Encryption and Key Management in AWSAmazon Web Services
 
AWS Well Architected Framework - Walk Through
AWS Well Architected Framework - Walk ThroughAWS Well Architected Framework - Walk Through
AWS Well Architected Framework - Walk ThroughKaushik Mohanraj
 

What's hot (20)

Deep dive into AWS IAM
Deep dive into AWS IAMDeep dive into AWS IAM
Deep dive into AWS IAM
 
Intro to AWS: Storage Services
Intro to AWS: Storage ServicesIntro to AWS: Storage Services
Intro to AWS: Storage Services
 
Security Architectures on AWS
Security Architectures on AWSSecurity Architectures on AWS
Security Architectures on AWS
 
Deep Dive: Amazon RDS
Deep Dive: Amazon RDSDeep Dive: Amazon RDS
Deep Dive: Amazon RDS
 
AWS Storage Gateway
AWS Storage GatewayAWS Storage Gateway
AWS Storage Gateway
 
AWS for Backup and Recovery
AWS for Backup and RecoveryAWS for Backup and Recovery
AWS for Backup and Recovery
 
Using AWS Control Tower to govern multi-account AWS environments at scale - G...
Using AWS Control Tower to govern multi-account AWS environments at scale - G...Using AWS Control Tower to govern multi-account AWS environments at scale - G...
Using AWS Control Tower to govern multi-account AWS environments at scale - G...
 
AWS Security Hub
AWS Security HubAWS Security Hub
AWS Security Hub
 
Intro to AWS Lambda
Intro to AWS Lambda Intro to AWS Lambda
Intro to AWS Lambda
 
Deep Dive on AWS Single Sign-On - AWS Online Tech Talks
Deep Dive on AWS Single Sign-On - AWS Online Tech TalksDeep Dive on AWS Single Sign-On - AWS Online Tech Talks
Deep Dive on AWS Single Sign-On - AWS Online Tech Talks
 
AWS Security Hub
AWS Security HubAWS Security Hub
AWS Security Hub
 
Introduction to AWS Organizations
Introduction to AWS OrganizationsIntroduction to AWS Organizations
Introduction to AWS Organizations
 
AWS Storage - S3 Fundamentals
AWS Storage - S3 FundamentalsAWS Storage - S3 Fundamentals
AWS Storage - S3 Fundamentals
 
Auto Scaling on AWS
Auto Scaling on AWSAuto Scaling on AWS
Auto Scaling on AWS
 
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
Access Control for the Cloud: AWS Identity and Access Management (IAM) (SEC20...
 
Getting Started with Amazon EC2
Getting Started with Amazon EC2Getting Started with Amazon EC2
Getting Started with Amazon EC2
 
Aws VPC
Aws VPCAws VPC
Aws VPC
 
Encryption and Key Management in AWS
Encryption and Key Management in AWSEncryption and Key Management in AWS
Encryption and Key Management in AWS
 
AWS Well Architected Framework - Walk Through
AWS Well Architected Framework - Walk ThroughAWS Well Architected Framework - Walk Through
AWS Well Architected Framework - Walk Through
 
AWS EC2
AWS EC2AWS EC2
AWS EC2
 

Similar to AWS Security Best Practices (March 2017)

Well-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionWell-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionAmazon Web Services
 
Data protection using encryption in AWS - SEC201 - Santa Clara AWS Summit
Data protection using encryption in AWS - SEC201 - Santa Clara AWS SummitData protection using encryption in AWS - SEC201 - Santa Clara AWS Summit
Data protection using encryption in AWS - SEC201 - Santa Clara AWS SummitAmazon Web Services
 
Protecting Your Data with Encryption on AWS
Protecting Your Data with Encryption on AWSProtecting Your Data with Encryption on AWS
Protecting Your Data with Encryption on AWSAmazon Web Services
 
Datensicherheit mit AWS - AWS Security Web Day
Datensicherheit mit AWS - AWS Security Web DayDatensicherheit mit AWS - AWS Security Web Day
Datensicherheit mit AWS - AWS Security Web DayAWS Germany
 
Advanced Security Best Practices Masterclass
Advanced Security Best Practices MasterclassAdvanced Security Best Practices Masterclass
Advanced Security Best Practices MasterclassAmazon Web Services
 
AWS Summit Sydney 2014 | Understanding AWS Security
AWS Summit Sydney 2014 | Understanding AWS SecurityAWS Summit Sydney 2014 | Understanding AWS Security
AWS Summit Sydney 2014 | Understanding AWS SecurityAmazon Web Services
 
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도Amazon Web Services Korea
 
AWS Summit Auckland 2014 | Understanding AWS Security
AWS Summit Auckland 2014 | Understanding AWS Security AWS Summit Auckland 2014 | Understanding AWS Security
AWS Summit Auckland 2014 | Understanding AWS Security Amazon Web Services
 
(SEC301) Strategies for Protecting Data Using Encryption in AWS
(SEC301) Strategies for Protecting Data Using Encryption in AWS(SEC301) Strategies for Protecting Data Using Encryption in AWS
(SEC301) Strategies for Protecting Data Using Encryption in AWSAmazon Web Services
 
How to implement data encryption at rest in compliance with enterprise requir...
How to implement data encryption at rest in compliance with enterprise requir...How to implement data encryption at rest in compliance with enterprise requir...
How to implement data encryption at rest in compliance with enterprise requir...Steffen Mazanek
 

Similar to AWS Security Best Practices (March 2017) (20)

Well-Architected for Security: Advanced Session
Well-Architected for Security: Advanced SessionWell-Architected for Security: Advanced Session
Well-Architected for Security: Advanced Session
 
Data protection using encryption in AWS - SEC201 - Santa Clara AWS Summit
Data protection using encryption in AWS - SEC201 - Santa Clara AWS SummitData protection using encryption in AWS - SEC201 - Santa Clara AWS Summit
Data protection using encryption in AWS - SEC201 - Santa Clara AWS Summit
 
Understanding AWS Security
Understanding AWS SecurityUnderstanding AWS Security
Understanding AWS Security
 
Protecting Your Data with Encryption on AWS
Protecting Your Data with Encryption on AWSProtecting Your Data with Encryption on AWS
Protecting Your Data with Encryption on AWS
 
Protecting Your Data in AWS
Protecting Your Data in AWSProtecting Your Data in AWS
Protecting Your Data in AWS
 
Protecting Your Data in AWS
Protecting Your Data in AWSProtecting Your Data in AWS
Protecting Your Data in AWS
 
Protecting Your Data in AWS
Protecting Your Data in AWSProtecting Your Data in AWS
Protecting Your Data in AWS
 
Toward Full Stack Security
Toward Full Stack SecurityToward Full Stack Security
Toward Full Stack Security
 
Protecting Your Data in AWS
Protecting Your Data in AWSProtecting Your Data in AWS
Protecting Your Data in AWS
 
Datensicherheit mit AWS - AWS Security Web Day
Datensicherheit mit AWS - AWS Security Web DayDatensicherheit mit AWS - AWS Security Web Day
Datensicherheit mit AWS - AWS Security Web Day
 
Protecting Your Data in AWS
Protecting Your Data in AWSProtecting Your Data in AWS
Protecting Your Data in AWS
 
Advanced Security Best Practices Masterclass
Advanced Security Best Practices MasterclassAdvanced Security Best Practices Masterclass
Advanced Security Best Practices Masterclass
 
AWS Summit Sydney 2014 | Understanding AWS Security
AWS Summit Sydney 2014 | Understanding AWS SecurityAWS Summit Sydney 2014 | Understanding AWS Security
AWS Summit Sydney 2014 | Understanding AWS Security
 
AWS Security Best Practices
AWS Security Best PracticesAWS Security Best Practices
AWS Security Best Practices
 
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도
AWS re:Invent re:Cap - 종단간 보안을 위한 클라우드 아키텍처 구축 - 양승도
 
Protecting Your Data in AWS
 Protecting Your Data in AWS Protecting Your Data in AWS
Protecting Your Data in AWS
 
AWS Summit Auckland 2014 | Understanding AWS Security
AWS Summit Auckland 2014 | Understanding AWS Security AWS Summit Auckland 2014 | Understanding AWS Security
AWS Summit Auckland 2014 | Understanding AWS Security
 
protecting your data in aws
protecting your data in aws protecting your data in aws
protecting your data in aws
 
(SEC301) Strategies for Protecting Data Using Encryption in AWS
(SEC301) Strategies for Protecting Data Using Encryption in AWS(SEC301) Strategies for Protecting Data Using Encryption in AWS
(SEC301) Strategies for Protecting Data Using Encryption in AWS
 
How to implement data encryption at rest in compliance with enterprise requir...
How to implement data encryption at rest in compliance with enterprise requir...How to implement data encryption at rest in compliance with enterprise requir...
How to implement data encryption at rest in compliance with enterprise requir...
 

More from Julien SIMON

An introduction to computer vision with Hugging Face
An introduction to computer vision with Hugging FaceAn introduction to computer vision with Hugging Face
An introduction to computer vision with Hugging FaceJulien SIMON
 
Reinventing Deep Learning
 with Hugging Face Transformers
Reinventing Deep Learning
 with Hugging Face TransformersReinventing Deep Learning
 with Hugging Face Transformers
Reinventing Deep Learning
 with Hugging Face TransformersJulien SIMON
 
Building NLP applications with Transformers
Building NLP applications with TransformersBuilding NLP applications with Transformers
Building NLP applications with TransformersJulien SIMON
 
Building Machine Learning Models Automatically (June 2020)
Building Machine Learning Models Automatically (June 2020)Building Machine Learning Models Automatically (June 2020)
Building Machine Learning Models Automatically (June 2020)Julien SIMON
 
Starting your AI/ML project right (May 2020)
Starting your AI/ML project right (May 2020)Starting your AI/ML project right (May 2020)
Starting your AI/ML project right (May 2020)Julien SIMON
 
Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)Julien SIMON
 
An Introduction to Generative Adversarial Networks (April 2020)
An Introduction to Generative Adversarial Networks (April 2020)An Introduction to Generative Adversarial Networks (April 2020)
An Introduction to Generative Adversarial Networks (April 2020)Julien SIMON
 
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...Julien SIMON
 
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)Julien SIMON
 
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...Julien SIMON
 
A pragmatic introduction to natural language processing models (October 2019)
A pragmatic introduction to natural language processing models (October 2019)A pragmatic introduction to natural language processing models (October 2019)
A pragmatic introduction to natural language processing models (October 2019)Julien SIMON
 
Building smart applications with AWS AI services (October 2019)
Building smart applications with AWS AI services (October 2019)Building smart applications with AWS AI services (October 2019)
Building smart applications with AWS AI services (October 2019)Julien SIMON
 
Build, train and deploy ML models with SageMaker (October 2019)
Build, train and deploy ML models with SageMaker (October 2019)Build, train and deploy ML models with SageMaker (October 2019)
Build, train and deploy ML models with SageMaker (October 2019)Julien SIMON
 
The Future of AI (September 2019)
The Future of AI (September 2019)The Future of AI (September 2019)
The Future of AI (September 2019)Julien SIMON
 
Building Machine Learning Inference Pipelines at Scale (July 2019)
Building Machine Learning Inference Pipelines at Scale (July 2019)Building Machine Learning Inference Pipelines at Scale (July 2019)
Building Machine Learning Inference Pipelines at Scale (July 2019)Julien SIMON
 
Train and Deploy Machine Learning Workloads with AWS Container Services (July...
Train and Deploy Machine Learning Workloads with AWS Container Services (July...Train and Deploy Machine Learning Workloads with AWS Container Services (July...
Train and Deploy Machine Learning Workloads with AWS Container Services (July...Julien SIMON
 
Optimize your Machine Learning Workloads on AWS (July 2019)
Optimize your Machine Learning Workloads on AWS (July 2019)Optimize your Machine Learning Workloads on AWS (July 2019)
Optimize your Machine Learning Workloads on AWS (July 2019)Julien SIMON
 
Deep Learning on Amazon Sagemaker (July 2019)
Deep Learning on Amazon Sagemaker (July 2019)Deep Learning on Amazon Sagemaker (July 2019)
Deep Learning on Amazon Sagemaker (July 2019)Julien SIMON
 
Automate your Amazon SageMaker Workflows (July 2019)
Automate your Amazon SageMaker Workflows (July 2019)Automate your Amazon SageMaker Workflows (July 2019)
Automate your Amazon SageMaker Workflows (July 2019)Julien SIMON
 
Build, train and deploy ML models with Amazon SageMaker (May 2019)
Build, train and deploy ML models with Amazon SageMaker (May 2019)Build, train and deploy ML models with Amazon SageMaker (May 2019)
Build, train and deploy ML models with Amazon SageMaker (May 2019)Julien SIMON
 

More from Julien SIMON (20)

An introduction to computer vision with Hugging Face
An introduction to computer vision with Hugging FaceAn introduction to computer vision with Hugging Face
An introduction to computer vision with Hugging Face
 
Reinventing Deep Learning
 with Hugging Face Transformers
Reinventing Deep Learning
 with Hugging Face TransformersReinventing Deep Learning
 with Hugging Face Transformers
Reinventing Deep Learning
 with Hugging Face Transformers
 
Building NLP applications with Transformers
Building NLP applications with TransformersBuilding NLP applications with Transformers
Building NLP applications with Transformers
 
Building Machine Learning Models Automatically (June 2020)
Building Machine Learning Models Automatically (June 2020)Building Machine Learning Models Automatically (June 2020)
Building Machine Learning Models Automatically (June 2020)
 
Starting your AI/ML project right (May 2020)
Starting your AI/ML project right (May 2020)Starting your AI/ML project right (May 2020)
Starting your AI/ML project right (May 2020)
 
Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)Scale Machine Learning from zero to millions of users (April 2020)
Scale Machine Learning from zero to millions of users (April 2020)
 
An Introduction to Generative Adversarial Networks (April 2020)
An Introduction to Generative Adversarial Networks (April 2020)An Introduction to Generative Adversarial Networks (April 2020)
An Introduction to Generative Adversarial Networks (April 2020)
 
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...
AIM410R1 Deep learning applications with TensorFlow, featuring Fannie Mae (De...
 
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)
AIM361 Optimizing machine learning models with Amazon SageMaker (December 2019)
 
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...
AIM410R Deep Learning Applications with TensorFlow, featuring Mobileye (Decem...
 
A pragmatic introduction to natural language processing models (October 2019)
A pragmatic introduction to natural language processing models (October 2019)A pragmatic introduction to natural language processing models (October 2019)
A pragmatic introduction to natural language processing models (October 2019)
 
Building smart applications with AWS AI services (October 2019)
Building smart applications with AWS AI services (October 2019)Building smart applications with AWS AI services (October 2019)
Building smart applications with AWS AI services (October 2019)
 
Build, train and deploy ML models with SageMaker (October 2019)
Build, train and deploy ML models with SageMaker (October 2019)Build, train and deploy ML models with SageMaker (October 2019)
Build, train and deploy ML models with SageMaker (October 2019)
 
The Future of AI (September 2019)
The Future of AI (September 2019)The Future of AI (September 2019)
The Future of AI (September 2019)
 
Building Machine Learning Inference Pipelines at Scale (July 2019)
Building Machine Learning Inference Pipelines at Scale (July 2019)Building Machine Learning Inference Pipelines at Scale (July 2019)
Building Machine Learning Inference Pipelines at Scale (July 2019)
 
Train and Deploy Machine Learning Workloads with AWS Container Services (July...
Train and Deploy Machine Learning Workloads with AWS Container Services (July...Train and Deploy Machine Learning Workloads with AWS Container Services (July...
Train and Deploy Machine Learning Workloads with AWS Container Services (July...
 
Optimize your Machine Learning Workloads on AWS (July 2019)
Optimize your Machine Learning Workloads on AWS (July 2019)Optimize your Machine Learning Workloads on AWS (July 2019)
Optimize your Machine Learning Workloads on AWS (July 2019)
 
Deep Learning on Amazon Sagemaker (July 2019)
Deep Learning on Amazon Sagemaker (July 2019)Deep Learning on Amazon Sagemaker (July 2019)
Deep Learning on Amazon Sagemaker (July 2019)
 
Automate your Amazon SageMaker Workflows (July 2019)
Automate your Amazon SageMaker Workflows (July 2019)Automate your Amazon SageMaker Workflows (July 2019)
Automate your Amazon SageMaker Workflows (July 2019)
 
Build, train and deploy ML models with Amazon SageMaker (May 2019)
Build, train and deploy ML models with Amazon SageMaker (May 2019)Build, train and deploy ML models with Amazon SageMaker (May 2019)
Build, train and deploy ML models with Amazon SageMaker (May 2019)
 

Recently uploaded

costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 

Recently uploaded (20)

costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 

AWS Security Best Practices (March 2017)

  • 1. Best practices for AWS security Julien Simon" Principal Technical Evangelist julsimon@amazon.fr @julsimon
  • 2. Agenda •  Understand the Shared Security Model •  Encrypt everything •  Manage users and permissions •  Log everything •  Automate security checks
  • 4. AWS Shared Responsibility Model AWS Foundation Services Compute Storage Database Networking AWS Global Infrastructure Regions Availability Zones Edge Locations Client-side Data Encryption Server-side Data Encryption Network Traffic Protection Platform, Applications, Identity, and Access Management Operating System, Network, and Firewall Configuration Customer Applications & Content Customers Customers are responsible for security IN the cloud AWS is responsible for the security OF the cloud
  • 5. Such as Amazon EC2, Amazon EBS, and Amazon VPC Shared Security Model: Infrastructure Services
  • 6. Such as Amazon RDS and Amazon EMR Shared Security Model: Platform Services
  • 7. Such as Amazon S3 and Amazon DynamoDB Shared Security Model: Managed Services
  • 9. Encryption options Native server-side encryption for most services §  S3, EBS, RDS, Redshift, etc. Flexible key management §  AWS Key Management Service §  AWS CloudHSM 3rd-party encryption §  Trend Micro, SafeNet, Vormetric, Hytrust, Sophos etc. §  AWS Marketplace : https://aws.amazon.com/marketplace/ Client-side encryption §  Tricky business, please be careful!
  • 10. create-volume [--dry-run | --no-dry-run] [--size <value>] [--snapshot-id <value>] --availability-zone <value> 
 [--volume-type <value>] [--iops <value>] 
 [--encrypted | --no-encrypted] [--kms-key-id <value>] 
 [--cli-input-json <value>] [--generate-cli-skeleton] Server-side encryption" Amazon EBS
  • 11. Server-side encryption" Amazon RDS aws rds create-db-instance --region us-west-2 
 --db-instance-identifier myrdsinstance --allocated-storage 20 --storage-encrypted [ --kms-key-id xxxxxxxxxxxxxxxxxx ] --db-instance-class db.m4.large --engine mysql --master-username myawsuser --master-user-password myawsuser http://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html
  • 14. SSE-S3 with the AWS SDK for Java File file = new File(uploadFileName); PutObjectRequest putRequest = new PutObjectRequest(bucketName, keyName, file); // Request server-side encryption. ObjectMetadata objectMetadata = new ObjectMetadata(); objectMetadata.setSSEAlgorithm(ObjectMetadata.AES_256_SERVER_SIDE_ENCRYPTION); putRequest.setMetadata(objectMetadata); PutObjectResult response = s3client.putObject(putRequest); System.out.println("Uploaded object encryption status is " + response.getSSEAlgorithm());
  • 15. AWS KMS Two-tiered key hierarchy using envelope encryption: •  Unique data key encrypts customer data •  AWS KMS master keys encrypt data keys Benefits: •  Limits risk of compromised data key •  Better performance for encrypting large data •  Easier to manage small number of master keys than millions of data keys •  Centralized access and audit of key activity Data key 1 Amazon S3 object Amazon EBS volume Data key 2 Data key 3 Data key 4 Custom" application Customer master" key(s) Amazon RDS instance https://aws.amazon.com/kms/
  • 16. Your RDS instance + Data key Encrypted data key Encrypted" data Master key(s) in " customer’s account AWS KMS 1.  Service requests encryption key to use to encrypt data, passes reference to master key in account 2.  Client request authenticated based on permissions set on both the user and the key 3.  A unique data encryption key is created and encrypted under the KMS master key 4.  Plaintext and encrypted data key returned to the client 5.  Plaintext data key used to encrypt data and then deleted when practical 6.  Encrypted data key is stored; it’s sent back to KMS when needed for data decryption How keys are used to protect your data https://aws.amazon.com/kms/
  • 17. Encryption SDKs •  Different from the AWS SDKs •  Java https://aws.amazon.com/blogs/security/how-to-use-the-new-aws- encryption-sdk-to-simplify-data-encryption-and-improve-application- availability/ •  Python (released yesterday!) https://aws.amazon.com/blogs/security/new-aws-encryption-sdk-for- python-simplifies-multiple-master-key-encryption/
  • 19. Identity and Access Management (IAM) 1.  Create users Advantages §  Unique credentials §  Easier to rotate §  Easier to track
  • 20. Identity and Access Management (IAM) 1.  Create users 2.  Apply the principle of least privilege Advantages §  Reduce the risk of human error §  Finer control §  Easier to add permissions than to remove them §  Access Advisor tells you what permissions are actually used
  • 21. Identity and Access Management (IAM) 1.  Create users 2.  Apply the principle of least privilege 3.  Factorize permissions with groups Advantages §  Simplest way to manage permissions for similar users
  • 22. Identity and Access Management (IAM) 1.  Create users 2.  Apply the principle of least privilege 3.  Factorize permissions with groups 4.  Use conditional permissions for privileged accounts (time, IP adress, etc). Advantages §  Extra security! §  Possible for all APIs
  • 23. Identity and Access Management (IAM) 1.  Create users 2.  Apply the principle of least privilege 3.  Factorize permissions with groups 4.  Use conditional permissions for privileged accounts (time, IP adress, etc). 5.  Enable Cloudtrail to log all API calls Advantages §  Keep a log of ALL activity inside your AWS account §  Useful for debugging §  Vital for forensics
  • 24. Identity and Access Management (IAM) 6.  Use a strong password policy     Advantages §  Do I really have to explain?
  • 25. Identity and Access Management (IAM) 6.  Use a strong password policy 7.  Rotate security credentials regularly   Advantages §  Just in case one of your credentials leaked… https://aws.amazon.com/fr/blogs/security/how-to-rotate-access-keys-for-iam-users/
  • 26. Identity and Access Management (IAM) 6.  Use a strong password policy 7.  Rotate security credentials regularly 8.  Enable MFA for privileged users Advantages §  Vital for protection against phishing attacks https://aws.amazon.com/fr/blogs/security/how-to-enable-mfa-protection-on-your-aws-api-calls/
  • 27. Identity and Access Management (IAM) 9.  Use IAM roles to delegate permissions     Advantages §  No need to store or share security credentials §  Use cases §  Cross-account access §  Federation
  • 28. Identity and Access Management (IAM) 9.  Use IAM roles to delegate permissions 10.  Use IAM roles for EC2 instances   Avantages §  No need to store, share or rotate security credentials §  Application is granted least- privilege §  Integration with the AWS SDK and the AWS CLI
  • 29. Identity and Access Management (IAM) 9.  Use IAM roles to delegate permissions 10.  Use IAM roles for EC2 instances 11.  Delete credentials for the root account Avantages §  C’mon, don’t use ‘root’
  • 30. 11 IAM Best Practices 1.  Create users! 2.  Apply the principle of least privilege 3.  Factorize permissions in groups 4.  Use conditional permissions for privileged accounts (time, IP adress, etc). 5.  Enable Cloudtrail to log all API calls 6.  Use a strong password policy 7.  Rotate security credentials regularly 8.  Enable MFA for privileged users 9.  Use IAM roles to delegate permissions 10. Use IAM roles for EC2 instances 11. Delete credentials for the root account
  • 31. AWS account: one or many ? Use a single AWS account when: §  You only need simple controls on who does what §  You don’t need to isolate projects or teams §  You don’t need to track costs separately Use multiple accounts when: §  You need total isolation between projects or teams §  You need total isolation for some of your data (such as Cloudtrail logs) §  You want to keep track of costs separately (you can still get a single bill with Consolidated Billing)
  • 33. Logs? Sure, we got logs! Infrastructure Logs §  AWS CloudTrail §  VPC Flow Logs Service Logs §  Amazon S3 §  AWS Elastic Load Balancing §  Amazon CloudFront §  AWS Lambda §  AWS Elastic Beanstalk §  … Instance Logs §  UNIX / Windows logs §  NGINX/Apache/IIS §  Your own logs §  …
  • 34. CloudTrail 1.  Enable Cloudtrail in all regions Advantages §  This takes 10 seconds §  It works for all regions, even if you don’t use them yet.
  • 35. CloudTrail 1.  Enable Cloudtrail in all regions 2.  Enable log validation Advantages §  Guarantees log integrity §  Vital for audits and forensics §  Based on SHA-256 and RSA signature
  • 36. CloudTrail 1.  Enable Cloudtrail in all regions 2.  Enable log validation 3.  Encrypt logs Advantages §  SSE-S3 by default §  KMS is supported too
  • 37. CloudTrail 1.  Enable Cloudtrail in all regions 2.  Enable log validation 3.  Encrypt logs 4.  Export logs to Cloudwatch Logs Advantages §  Easier to search §  Trigger alerts on specific events
  • 38. CloudTrail 1.  Enable Cloudtrail in all regions 2.  Enable log validation 3.  Encrypt logs 4.  Export logs to Cloudwatch Logs 5.  Centralize logs in a single place Avantages §  Single bucket §  Could be in a dedicated account
  • 40. VPC Flow Logs §  Store all network traffic in Cloudwatch Logs §  They can be enable by VPC, by subnet our by network interface §  It’s going to be a lot of data: what do you really need? •  Everything, Allow, Deny •  For debugging or for security monitoring?
  • 41. AWS Service Logs Many services let you export their logs to CloudWatch Logs, CloudTrail ou S3. §  Elastic Beanstalk à CloudWatch Logs " https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.cloudwatchlogs.html https://aws.amazon.com/fr/about-aws/whats-new/2016/12/aws-elastic-beanstalk-supports-application-version-lifecycle-management-and- cloudwatch-logs-streaming/ §  ECS (instances & containers) à CloudWatch Logs http://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_awslogs.html §  Lambda à CloudWatch Logs " http://docs.aws.amazon.com/lambda/latest/dg/monitoring-functions-logs.html §  S3 à CloudTrail (S3 data events) §  CloudFront à S3 " http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html §  ELB / ALB à S3 " http://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-access-logs.html
  • 42. EC2 Logs §  You can export them to Cloudwatch Logs with the Cloudwatch Agent. §  Storage costs are pretty low, so it’s probably worth it §  Available for Linux and Windows §  Logs can be exported to S3 and ElasticSearch §  Metrics and alarms allow you to keep track of suspicious events
  • 44. You can automate on multiple levels •  Infrastructure / application automation -  AWS CloudFormation -  AWS OpsWorks •  DIY automation -  AWS CloudTrail à CloudWatch Logs à CloudWatch alerts -  API calls à Amazon CloudWatch Events à SNS / SQS / Kinesis / Lambda •  Compliance automation -  AWS Inspector -  AWS Config Rules
  • 45. Configuring CloudWatch alarms for CloudTrail •  CloudFormation template with 10 predefined alarms •  Create, modify or delete Security Groups •  Modify IAM policies •  Failed connections to the console •  Failed API calls caused by permission issues •  Set them up in less than 5 minutes! •  Get e-mail notifications when these events occur in your AWS account http://docs.aws.amazon.com/fr_fr/awscloudtrail/latest/userguide/use-cloudformation-template-to-create-cloudwatch-alarms.html https://s3-us-west-2.amazonaws.com/awscloudtrail/cloudwatch-alarms-for-cloudtrail-api-activity/CloudWatch_Alarms_for_CloudTrail_API_Activity.json
  • 46. AWS Config Rules •  Config Rules checks that AWS resources are compliant •  You can use: •  Pre-defined rules: MFA on, CloudTrail on, EBS encryption, etc. •  Your own rules •  Checks can be: •  Periodic (1, 3, 6, 12 or 24 hours) •  Triggered by configuration changes •  Notifications are sent to SNS… •  ... Which means that you can process them with Lambda functions •  Non-compliant instance? Kill it!
  • 47. Amazon Inspector •  This service allows you to check the configuration and the behavior of EC2 instances. •  Agent-based •  Can run from 15  minutes to 24 hours •  Reports and advice on how to fix issues •  Can be automated with the AWS API •  Built-in rule packages
  • 48. Amazon Inspector – Rule packages •  Common Vulnerabilities and Exposures •  http://cve.mitre.org •  https://s3-us-west-2.amazonaws.com/rules-engine/CVEList.txt (47,050) •  CIS Operating System Security Configuration Benchmarks •  Center for Internet Security http://cisecurity.org •  http://benchmarks.cisecurity.org •  Security Best Practices •  SSH, passwords, etc. (Linux uniquement) •  https://docs.aws.amazon.com/fr_fr/inspector/latest/userguide/inspector_security-best- practices.html •  Runtime Behavior Analysis •  How instances behave during testing (networking, protocols, etc.) •  https://docs.aws.amazon.com/fr_fr/inspector/latest/userguide/inspector_runtime-behavior- analysis.html
  • 50. Please promise me this •  Never share credentials across users / applications •  Never store credentials in source code (they’ll end up on Github) •  Never store credentials on EC2 instances •  (Almost) never work with the root account •  One account per user / one role per app with least privilege •  Use MFA for privileged accounts •  Enable CloudTrail in all regions •  Encrypt everything •  Automate security checks and alarms “It’s not because you’re paranoid that they’re not after you”
  • 51. Additional resources Whitepapers https://d0.awsstatic.com/whitepapers/aws-security-whitepaper.pdf http://d0.awsstatic.com/whitepapers/architecture/AWS_Well-Architected_Framework.pdf https://d0.awsstatic.com/whitepapers/Security/AWS_Security_Best_Practices.pdf AWS re:Invent 2016: Security Services State of the Union (SEC312) - Steve Schmidt, CISO, Amazon Web Services https://www.youtube.com/watch?v=8ZljcKn8FPA AWS re:Invent 2016: Automating Security Event Response, from Idea to Code to Execution (SEC313) https://www.youtube.com/watch?v=x4GkAGe65vE AWS re:Invent 2016: Automated Governance of Your AWS Resources (DEV302) https://www.youtube.com/watch?v=2P2I7HlrFtA AWS re:Invent 2016: Scaling Security Operations and Automating Governance (SAC315) https://www.youtube.com/watch?v=_yfeCvqHdNg
  • 52. Julien Simon julsimon@amazon.fr @julsimon Your feedback is important to us!