SlideShare a Scribd company logo
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Automating Threat Detection &
Remediation
Brian Lozada
CISO
Zocdoc
S e s s i o n I D : 3 2 1
Jay Ball
Head of Application Security
Zocdoc
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
The 21st Century Patient
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Solving the Access Problem
(Avg. Wait Time for Primary Care, Days)
Portland39
Los Angeles42
Dallas12
Houston21
Miami27
Philadelphia17
Denver27
New York26
Albany
122
Boston
109
Washington DC17
Atlanta27
Seattle26
San Diego13
Detroit27
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Portland39
Los Angeles42
Miami27
Philadelphia17
Denver27
New York26
Albany
122
Boston
109
Washington DC17
Atlanta27
Seattle26
Detroit27
Reduced Wait Time 30% unbooked,
cancelled or
rescheduled
Dallas12
Houston21
San Diego13
24
Hours
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Supplying Care to the 21st Century Patient
2017
ALL IN
Zocdoc 2.0
Private Medical
Practices
Larger Health
Systems
Zocdoc AWS Goals
Scale
Horizontally
Diversify
Tech Stack
Open
Source
Data
Liberation
Elevate
Security
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Securing Cloud Infrastructure
Certification Achievement
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Security Controls
Monitor
Alert
Investigate
Prevent/Block
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon
CloudWatch
AWS
Trusted
Advisor
Lambda
Function
AWS
GuardDuty
AWS
CloudTrail
AWS WAF /
Shield
Amazon
Inspector
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Automation in AWS Today
Automated
Remediation
Automated
Alerting
Automated
Monitoring
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Issue: How do we make
sure S3 buckets are
always encrypted?
Decision: Automatic
encryption upon detection
where lacking.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Scenarios
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Encryption Automation Process
Lambda
FunctionS3 operation detected,
calls function
Validate
Crypto;
Encrypts
S3 bucket
events logged
S3
Bucket
AWS
CloudTrail
Amazon
CloudWatch
Processed in
CloudWatch
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Automated Detection in CloudTrail
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
CloudWatch Configuration
{
"source": [ "aws.s3" ],
"detail-type": [ "AWS API Call via CloudTrail" ],
"detail": {
"eventSource": [
"s3.amazonaws.com"
],
"eventName": [
"CreateBucket",
"PutBucketAcl",
"PutBucketPolicy",
"PutBucketEncryption",
"DeleteBucketEncryption"
]
}
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Code: Setup & Test
s3 = boto3.client('s3')
sns = boto3.client('sns')
def lambda_handler(event, context):
bucket_name = event['detail']['requestParameters']['bucketName']
bucket_creator = event['detail']['userIdentity']['principalId']
bucket_user = bucket_creator.split(":",1)
try:
currEncrypt = s3.get_bucket_encryption (Bucket=bucket_name)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Code: Encrypt
except ClientError as e:
toEncrypt = s3.put_bucket_encryption (
Bucket=bucket_name,
ServerSideEncryptionConfiguration = {
'Rules':[ {
'ApplyServerSideEncryptionByDefault':
{ 'SSEAlgorithm': 'AES256' }
}]
} )
response = sns.publish(
TopicArn= 'arn:aws:sns:us-east-1: …
000012345678:unEncryptedS3BucketCreated',
Message= 'Unencrypted Bucket by '+ bucket_user[1] )
else:
return currEncrypt
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Issue: Malware infection
is calling out to
command & control.
Decision: Kill the instance.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Automated Detection & Response
AWS
GuardDuty
Amazon
CloudWatch
Lambda
Function
Processed by
CloudWatch
Call Lambda on
malicious trigger
Kills EC2
instance
DNS lookup of malicious
hostname detected
AWS
EC2
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Post Automation Review
• CloudWatch and CloudTrail log analysis
• Machine forensics on attached storage
• Automated instance rebuild with CloudFormation
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Automated Detection
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
GuardDuty Configuration
Configure IAM
Permissions for
GuardDuty
Sign in &
Enable
GuardDuty
Watch the
Data Flow
1 2 3
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
CloudWatch Configuration
{
"source": [
"aws.guardduty"
],
"detail-type": [
"GuardDuty Finding"
],
"detail": {
"type": [
"Backdoor:EC2/C&CActivity.B!DNS"
]
}
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Code: Initial Sanity Checks
# lots of imports
def lambda_handler(event, context):
source = event['source']
if source != "aws.guardduty":
# wrong caller, just silently return
return
detail_type = event['detail-type']
if detail_type != 'GuardDuty Finding':
# wrong caller, just silently return
return
event_type = event['detail']['type’]
bad_event_list = [ 'Backdoor:EC2/C&CActivity.B!DNS’ ]
if not(event_type in bad_event_list):
# wrong event type, silently return
return
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Code: Event Processing
instance_id =
event['detail']['resource']['instanceDetails']['instanceId']
# only shutdown certain tags:
taglist= event['detail']['resource']['instanceDetails']['tags']
runme=False
for nvp in taglist:
if "security_guillotine" == nvp['key'].lower():
runme=True
if not(runme):
# We are not part of our auto-shutdown EC2 group, return
return
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Code: Euthanize It
print("Shutting down instance ", instance_id)
ec2 = boto3.client('ec2')
try:
response = ec2.stop_instances(
InstanceIds=[ instance_id ]
# , DryRun=True
)
except ClientError as e:
if 'DryRunOperation' not in str(e):
print("No permission to reboot instances.")
raise
else:
print('Error', e)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
GuardDuty Event Detection
'Backdoor:EC2/XORDDOS',
'Backdoor:EC2/Spambot',
'Backdoor:EC2/C&CActivity.B!DNS',
'CryptoCurrency:EC2/BitcoinTool.B!DNS',
'Trojan:EC2/BlackholeTraffic',
'Trojan:EC2/DropPoint',
'Trojan:EC2/BlackholeTraffic!DNS',
'Trojan:EC2/DriveBySourceTraffic!DNS',
'Trojan:EC2/DropPoint!DNS',
'Trojan:EC2/DGADomainRequest.B',
'Trojan:EC2/DGADomainRequest.C!DNS',
'Trojan:EC2/DNSDataExfiltration',
'Trojan:EC2/PhishingDomainRequest!DNS'
GuardDuty
reports on many
events for which
we want to kill
the instance.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Issue: Someone opens
sensitive ports to the
entire Internet.
Decision: Modify the security
group to remove the rule
that opens the sensitive
ports.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Automated Response
Amazon
CloudWatch
Lambda
Function
Alert raised in
CloudWatch
Call to run
Lambda
Remove bad CIDR
from security group
Disallowed
CIDR used
Security
Group
server
AWS
CloudTrail
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Automated Detection in CloudTrail
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
CloudWatch Configuration
{
"source": [
"aws.cloudtrail"
],
"detail-type": [
"AWS API Call via CloudTrail"
],
"detail": {
"eventSource": [
"ec2.amazonaws.com"
],
"eventName": [
"CreateSecurityGroup",
"AuthorizeSecurityGroupIngress"
]
}
}
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Code: Initial Sanity Checks
def lambda_handler(event, context):
source = event['detail']['eventSource']
if source != "ec2.amazonaws.com":
# wrong caller, just silently return
return
allowed_event_list = [
'CreateSecurityGroup',
"AuthorizeSecurityGroupIngress"
]
event_name = event['detail']['eventName']
if not(event_name in allowed_event_list):
# wrong event, just silently return
print("Wrong Filter: source=", source, " / event_name=", event_name)
return
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Code: GetSecurityGroupID
resp = event['detail']['responseElements']
if (resp["_return"] != True):
# event was not a successful update, so we can ignore it.
return
SG_id = 'invalid'
if event_name == 'CreateSecurityGroup':
SG_id = resp["groupId"]
elif event_name == 'AuthorizeSecurityGroupIngress':
SG_id = event['detail']['requestParameters']['groupId']
else:
# We shouldn't actually get here.
return
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Code: Group Sensitivity Training
ec2 = boto3.resource('ec2')
security_group = ec2.SecurityGroup(SG_id)
sensitive_ports = [ 22, 3389, 54321 ]
ingress_list = security_group.ip_permissions
for perm in ingress_list:
fromport=0 ; toport=0 ; ipprot=0 ; sensitive=False
if 'FromPort' in perm:
fromport = perm['FromPort']
if 'ToPort' in perm:
toport = perm['ToPort']
if 'IpProtocol' in perm:
ipprot = perm['IpProtocol']
if ipprot == "-1":
sensitive = True
if fromport > 0:
for p in sensitive_ports:
if fromport <= p and p <= toport:
sensitive = True
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Code: Test for Zero CIDR
if sensitive:
for r in perm['IpRanges']:
# this could be more complex, but 0000/0 catches 95% of the cases
if r['CidrIp'] == "0.0.0.0/0":
print("Removing Ingress Rule violation: ", json.dumps(perm))
try:
security_group.revoke_ingress(
CidrIp = r['CidrIp'],
IpProtocol = perm['IpProtocol'],
FromPort = fromport,
ToPort = toport # , DryRun = True
)
except ClientError as e:
if 'DryRunOperation' not in str(e):
print("Error: ", e)
raise
else:
print('DryRun: ', e)
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Issue: Spend too much on
an underwhelming WAF
solution.
Decision: Leverage AWS WAF
& Shield Protection.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Traditional WAF Configuration Inefficiencies
1) Each site / ALB requires separate WAF configuration
• Ex: www and espanol, different html, same endpoints
2) Need to manage 9 different configurations, one per site
3) No ability to share rules between each configuration
• Ex: blacklist should be the same for all sites
4) No IP reputation lists
So, how did we move forward…
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS WAF Security Automations
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS WAF Security Automations with Modifications
Add: Country-level blocks
Add: Specialty whitelisting for some
URIs/parameters
Add: Specialty blacklisting for obsolete endpoints
Update: Reputation List processing logic
Remove: Bad bot honey pot
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Dual WAFs
Zocdoc has two types of
systems
• Each has a different set of
AWS WAF rules (WebACL)
• Each type points to
multiple ALBs, like www &
espanol
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
WAF Configuration
Our WAFs share
some rules
Exclusions on
XSS/SQL blocks
Some rules are
unneeded on
api
ẅŵẘ ầṗĩ
1 Whitelist by IP
2 Blacklist by IP
3 IP Reputational Blacklist
4 Country Blacklist
5 Whitelist by Criteria
6 Blacklist URL ---
7 Flood
8 Scan
9 SQLi Blocks ---
10 XSS Blocks ---
Default  Allow
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
WAF Comparison
• 9 different rule sets
• No shared rules
• Geoblocking rules
• Many possible rules per set
• Lots of string and regex
match sets
• Specialty “Good Bot” rules
• 2 different rule sets
(WebACLs)
• Many shared rules
• Geoblocking rules
• Maximum 10 rules per set
• Maximum 5 regex match sets
total
• … phase two, “Good Bot”,
maybe
OLD WAF AWS WAF
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What Security is Automated
• Bad Reputation IP blocklists updated hourly
• Floods protection from high rate IPs update periodically
• Probing IPs blocklist is update periodically
• Bad-bots IP blocklist updated instantly after trigger
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS WAF Code
// Our Code is Amazon’s Code, thus it can be Your Code too!
Zocdoc_Customizations = {
“Special Regex Rules”,
“Double WAF with shared rules”,
“Reordering of existing rules”,
“Complex deployment process using Ansible”
}
// But actual automations are all Amazon’s own CloudFormation code!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS WAF Code – Zocdoc Updates
Expanded Reputation List CIDR range processing Lambda code:
https://github.com/awslabs/aws-waf-security-automations/pull/64
This change eliminates the need for one rule
... and removes up to 15,000 comparisons for each web request, thus faster
Once less processing rule saves money for all users of this Security Automation template
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Issue: It’s vulnerability
time.
Decision: Leverage Amazon
Inspector for visibility and
compliance of AWS
environments to industry
standard requirements.
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Basic Requirements
Amazon Inspector agent Amazon Inspector Generated
findings for
review
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Zocdoc Compliance Measures
Infosec reviews the findings and submits patch requests to
teams
Prioritize by severity and compliance requirements
• SOC 2 Type II – Mostly Process
• PHI / HIPPA – Mostly Policy
• CIS – Center for Internet Security – The ever-evolving
system hardening checklist
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
But, what might the future be?
Generate
findings
for review
AWS
Systems
Manager
Patch
Source AMI
Kill
noncompliant
systems
Amazon Inspector
Agent runs on OS
Automatic
findings
processing
Redeploy
system
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Divinations & Seering
We are not there yet, but we can start with baby steps
• OS patches are generally better defined that
Application patching
Some commercial solutions do parts of this idea
• None are perfect and all are pricy
• Amazon gives us , let’s use them
Start with CIS compliance
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• Reduce inefficiencies of manual work through
automation
• Reduce alert traffic through automation
• Drives business enablement
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon
CloudWatch
AWS
Trusted
Advisor
Lambda
Function
AWS
GuardDuty
AWS
CloudTrail
AWS WAF /
Shield
Amazon
Inspector
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Interested in Code?
github.com/Zocdoc/
ZocSec.SecurityAsCode.AWS
Thank you!
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Brian Lozada
CISO
Twitter: @BrianL1775
LinkedIn: blozada
Jay Ball
Head of Application Security
Twitter: @veggiespam
LinkedIn: veggiespam
Security Blog: www.veggiespam.com
Instagram: woolpictures
© 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.

More Related Content

What's hot

IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
Amazon Web Services
 
How to Perform Forensics on AWS Using Serverless Infrastructure (SEC416-R1) -...
How to Perform Forensics on AWS Using Serverless Infrastructure (SEC416-R1) -...How to Perform Forensics on AWS Using Serverless Infrastructure (SEC416-R1) -...
How to Perform Forensics on AWS Using Serverless Infrastructure (SEC416-R1) -...
Amazon Web Services
 
Find All the Threats: AWS Threat Detection and Remediation (SEC331) - AWS re:...
Find All the Threats: AWS Threat Detection and Remediation (SEC331) - AWS re:...Find All the Threats: AWS Threat Detection and Remediation (SEC331) - AWS re:...
Find All the Threats: AWS Threat Detection and Remediation (SEC331) - AWS re:...
Amazon Web Services
 
A DIY Guide to Runbooks, Security Incident Reports, & Incident Response (SEC3...
A DIY Guide to Runbooks, Security Incident Reports, & Incident Response (SEC3...A DIY Guide to Runbooks, Security Incident Reports, & Incident Response (SEC3...
A DIY Guide to Runbooks, Security Incident Reports, & Incident Response (SEC3...
Amazon Web Services
 
Multi-Account Strategy and Security with Centrica Hive
Multi-Account Strategy and Security with Centrica HiveMulti-Account Strategy and Security with Centrica Hive
Multi-Account Strategy and Security with Centrica Hive
Amazon Web Services
 
Securing Machine Learning Deployments for the Enterprise (SEC369-R1) - AWS re...
Securing Machine Learning Deployments for the Enterprise (SEC369-R1) - AWS re...Securing Machine Learning Deployments for the Enterprise (SEC369-R1) - AWS re...
Securing Machine Learning Deployments for the Enterprise (SEC369-R1) - AWS re...
Amazon Web Services
 
Automating Compliance Certification with Automated Mathematical Proof (SEC330...
Automating Compliance Certification with Automated Mathematical Proof (SEC330...Automating Compliance Certification with Automated Mathematical Proof (SEC330...
Automating Compliance Certification with Automated Mathematical Proof (SEC330...
Amazon Web Services
 
The Perimeter is Dead. Long Live the Perimeters. (SEC312-S) - AWS re:Invent 2018
The Perimeter is Dead. Long Live the Perimeters. (SEC312-S) - AWS re:Invent 2018The Perimeter is Dead. Long Live the Perimeters. (SEC312-S) - AWS re:Invent 2018
The Perimeter is Dead. Long Live the Perimeters. (SEC312-S) - AWS re:Invent 2018
Amazon Web Services
 
How LogMeIn Automates Governance and Empowers Developers at Scale (SEC302) - ...
How LogMeIn Automates Governance and Empowers Developers at Scale (SEC302) - ...How LogMeIn Automates Governance and Empowers Developers at Scale (SEC302) - ...
How LogMeIn Automates Governance and Empowers Developers at Scale (SEC302) - ...
Amazon Web Services
 
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
Amazon Web Services
 
Top Cloud Security Myths - Dispelled! (SEC202-R1) - AWS re:Invent 2018
Top Cloud Security Myths - Dispelled! (SEC202-R1) - AWS re:Invent 2018Top Cloud Security Myths - Dispelled! (SEC202-R1) - AWS re:Invent 2018
Top Cloud Security Myths - Dispelled! (SEC202-R1) - AWS re:Invent 2018
Amazon Web Services
 
Threat Detection and Mitigation at Scale on AWS
Threat Detection and Mitigation at Scale on AWS Threat Detection and Mitigation at Scale on AWS
Threat Detection and Mitigation at Scale on AWS
Amazon Web Services
 
A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...
A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...
A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...
Amazon Web Services
 
Detecting Credential Compromise in AWS (SEC389) - AWS re:Invent 2018
Detecting Credential Compromise in AWS (SEC389) - AWS re:Invent 2018Detecting Credential Compromise in AWS (SEC389) - AWS re:Invent 2018
Detecting Credential Compromise in AWS (SEC389) - AWS re:Invent 2018
Amazon Web Services
 
Drive Self-Service & Standardization in the First 100 Days of Your Cloud Migr...
Drive Self-Service & Standardization in the First 100 Days of Your Cloud Migr...Drive Self-Service & Standardization in the First 100 Days of Your Cloud Migr...
Drive Self-Service & Standardization in the First 100 Days of Your Cloud Migr...
Amazon Web Services
 
A 360-Degree Cloud-Native Approach to Secure Your AWS Cloud Stack (SEC313-S) ...
A 360-Degree Cloud-Native Approach to Secure Your AWS Cloud Stack (SEC313-S) ...A 360-Degree Cloud-Native Approach to Secure Your AWS Cloud Stack (SEC313-S) ...
A 360-Degree Cloud-Native Approach to Secure Your AWS Cloud Stack (SEC313-S) ...
Amazon Web Services
 
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
Amazon Web Services
 
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
Amazon Web Services
 
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Amazon Web Services
 
Hybrid Identity Management and Security for Large Enterprises (ENT307-R2) - A...
Hybrid Identity Management and Security for Large Enterprises (ENT307-R2) - A...Hybrid Identity Management and Security for Large Enterprises (ENT307-R2) - A...
Hybrid Identity Management and Security for Large Enterprises (ENT307-R2) - A...
Amazon Web Services
 

What's hot (20)

IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
IAM for Enterprises: How Vanguard Matured IAM Controls to Support Micro Accou...
 
How to Perform Forensics on AWS Using Serverless Infrastructure (SEC416-R1) -...
How to Perform Forensics on AWS Using Serverless Infrastructure (SEC416-R1) -...How to Perform Forensics on AWS Using Serverless Infrastructure (SEC416-R1) -...
How to Perform Forensics on AWS Using Serverless Infrastructure (SEC416-R1) -...
 
Find All the Threats: AWS Threat Detection and Remediation (SEC331) - AWS re:...
Find All the Threats: AWS Threat Detection and Remediation (SEC331) - AWS re:...Find All the Threats: AWS Threat Detection and Remediation (SEC331) - AWS re:...
Find All the Threats: AWS Threat Detection and Remediation (SEC331) - AWS re:...
 
A DIY Guide to Runbooks, Security Incident Reports, & Incident Response (SEC3...
A DIY Guide to Runbooks, Security Incident Reports, & Incident Response (SEC3...A DIY Guide to Runbooks, Security Incident Reports, & Incident Response (SEC3...
A DIY Guide to Runbooks, Security Incident Reports, & Incident Response (SEC3...
 
Multi-Account Strategy and Security with Centrica Hive
Multi-Account Strategy and Security with Centrica HiveMulti-Account Strategy and Security with Centrica Hive
Multi-Account Strategy and Security with Centrica Hive
 
Securing Machine Learning Deployments for the Enterprise (SEC369-R1) - AWS re...
Securing Machine Learning Deployments for the Enterprise (SEC369-R1) - AWS re...Securing Machine Learning Deployments for the Enterprise (SEC369-R1) - AWS re...
Securing Machine Learning Deployments for the Enterprise (SEC369-R1) - AWS re...
 
Automating Compliance Certification with Automated Mathematical Proof (SEC330...
Automating Compliance Certification with Automated Mathematical Proof (SEC330...Automating Compliance Certification with Automated Mathematical Proof (SEC330...
Automating Compliance Certification with Automated Mathematical Proof (SEC330...
 
The Perimeter is Dead. Long Live the Perimeters. (SEC312-S) - AWS re:Invent 2018
The Perimeter is Dead. Long Live the Perimeters. (SEC312-S) - AWS re:Invent 2018The Perimeter is Dead. Long Live the Perimeters. (SEC312-S) - AWS re:Invent 2018
The Perimeter is Dead. Long Live the Perimeters. (SEC312-S) - AWS re:Invent 2018
 
How LogMeIn Automates Governance and Empowers Developers at Scale (SEC302) - ...
How LogMeIn Automates Governance and Empowers Developers at Scale (SEC302) - ...How LogMeIn Automates Governance and Empowers Developers at Scale (SEC302) - ...
How LogMeIn Automates Governance and Empowers Developers at Scale (SEC302) - ...
 
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
Building Fraud Detection Systems with AWS Batch and Containers (DVC301) - AWS...
 
Top Cloud Security Myths - Dispelled! (SEC202-R1) - AWS re:Invent 2018
Top Cloud Security Myths - Dispelled! (SEC202-R1) - AWS re:Invent 2018Top Cloud Security Myths - Dispelled! (SEC202-R1) - AWS re:Invent 2018
Top Cloud Security Myths - Dispelled! (SEC202-R1) - AWS re:Invent 2018
 
Threat Detection and Mitigation at Scale on AWS
Threat Detection and Mitigation at Scale on AWS Threat Detection and Mitigation at Scale on AWS
Threat Detection and Mitigation at Scale on AWS
 
A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...
A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...
A New Approach to Continuous Monitoring in the Cloud: Migrate to AWS with NET...
 
Detecting Credential Compromise in AWS (SEC389) - AWS re:Invent 2018
Detecting Credential Compromise in AWS (SEC389) - AWS re:Invent 2018Detecting Credential Compromise in AWS (SEC389) - AWS re:Invent 2018
Detecting Credential Compromise in AWS (SEC389) - AWS re:Invent 2018
 
Drive Self-Service & Standardization in the First 100 Days of Your Cloud Migr...
Drive Self-Service & Standardization in the First 100 Days of Your Cloud Migr...Drive Self-Service & Standardization in the First 100 Days of Your Cloud Migr...
Drive Self-Service & Standardization in the First 100 Days of Your Cloud Migr...
 
A 360-Degree Cloud-Native Approach to Secure Your AWS Cloud Stack (SEC313-S) ...
A 360-Degree Cloud-Native Approach to Secure Your AWS Cloud Stack (SEC313-S) ...A 360-Degree Cloud-Native Approach to Secure Your AWS Cloud Stack (SEC313-S) ...
A 360-Degree Cloud-Native Approach to Secure Your AWS Cloud Stack (SEC313-S) ...
 
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
Best Practices for Securing Serverless Applications (SEC362-R1) - AWS re:Inve...
 
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
Inside AWS: Technology Choices for Modern Applications (SRV305-R1) - AWS re:I...
 
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
Operational Excellence with Containerized Workloads Using AWS Fargate (CON320...
 
Hybrid Identity Management and Security for Large Enterprises (ENT307-R2) - A...
Hybrid Identity Management and Security for Large Enterprises (ENT307-R2) - A...Hybrid Identity Management and Security for Large Enterprises (ENT307-R2) - A...
Hybrid Identity Management and Security for Large Enterprises (ENT307-R2) - A...
 

Similar to How Zocdoc Achieves Automatic Threat Detection & Remediation with Security as Code (SEC321-R1) - AWS re:Invent 2018

Configure Your Cloud to Make It Rain on Threats (SEC335-R1) - AWS re:Invent 2018
Configure Your Cloud to Make It Rain on Threats (SEC335-R1) - AWS re:Invent 2018Configure Your Cloud to Make It Rain on Threats (SEC335-R1) - AWS re:Invent 2018
Configure Your Cloud to Make It Rain on Threats (SEC335-R1) - AWS re:Invent 2018
Amazon Web Services
 
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
Amazon Web Services
 
An Active Case Study on Insider Threat Detection in your Applications
An Active Case Study on Insider Threat Detection in your ApplicationsAn Active Case Study on Insider Threat Detection in your Applications
An Active Case Study on Insider Threat Detection in your Applications
Amazon Web Services
 
Automating Incident Response and Forensics in AWS
Automating Incident Response and Forensics in AWSAutomating Incident Response and Forensics in AWS
Automating Incident Response and Forensics in AWS
Amazon Web Services
 
Threat Detection and Mitigation at Scale on AWS - SID301 - Toronto AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Toronto AWS SummitThreat Detection and Mitigation at Scale on AWS - SID301 - Toronto AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Toronto AWS Summit
Amazon Web Services
 
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
Amazon Web Services
 
Lock It Down: How to Secure Your Organization's AWS Account
Lock It Down: How to Secure Your Organization's AWS AccountLock It Down: How to Secure Your Organization's AWS Account
Lock It Down: How to Secure Your Organization's AWS Account
Amazon Web Services
 
Intro to Threat Detection & Remediation on AWS: AWS Security Week at the SF Loft
Intro to Threat Detection & Remediation on AWS: AWS Security Week at the SF LoftIntro to Threat Detection & Remediation on AWS: AWS Security Week at the SF Loft
Intro to Threat Detection & Remediation on AWS: AWS Security Week at the SF Loft
Amazon Web Services
 
Threat Detection and Mitigation at Scale on AWS - SID301 - Chicago AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Chicago AWS SummitThreat Detection and Mitigation at Scale on AWS - SID301 - Chicago AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Chicago AWS Summit
Amazon Web Services
 
Red Team vs. Blue Team on AWS (DVC304) - AWS re:Invent 2018
Red Team vs. Blue Team on AWS (DVC304) - AWS re:Invent 2018Red Team vs. Blue Team on AWS (DVC304) - AWS re:Invent 2018
Red Team vs. Blue Team on AWS (DVC304) - AWS re:Invent 2018
Amazon Web Services
 
SID301 Threat Detection and Mitigation
 SID301 Threat Detection and Mitigation SID301 Threat Detection and Mitigation
SID301 Threat Detection and Mitigation
Amazon Web Services
 
Threat Detection and Mitigation at Scale on AWS - SID301 - Atlanta AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Atlanta AWS SummitThreat Detection and Mitigation at Scale on AWS - SID301 - Atlanta AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Atlanta AWS Summit
Amazon Web Services
 
Red Team vs. Blue Team on AWS ~ re:Invent 2018
Red Team vs. Blue Team on AWS ~ re:Invent 2018Red Team vs. Blue Team on AWS ~ re:Invent 2018
Red Team vs. Blue Team on AWS ~ re:Invent 2018
Teri Radichel
 
Security@Scale
Security@ScaleSecurity@Scale
Security@Scale
Amazon Web Services
 
Turner’s Journey to Scale Securely on a Lean Budget (SEC357-R1) - AWS re:Inve...
Turner’s Journey to Scale Securely on a Lean Budget (SEC357-R1) - AWS re:Inve...Turner’s Journey to Scale Securely on a Lean Budget (SEC357-R1) - AWS re:Inve...
Turner’s Journey to Scale Securely on a Lean Budget (SEC357-R1) - AWS re:Inve...
Amazon Web Services
 
Come Out From Behind Your Firewall
Come Out From Behind Your FirewallCome Out From Behind Your Firewall
Come Out From Behind Your Firewall
Amazon Web Services
 
Threat Detection & Remediation Workshop - Module 2
Threat Detection & Remediation Workshop - Module 2Threat Detection & Remediation Workshop - Module 2
Threat Detection & Remediation Workshop - Module 2
Amazon Web Services
 
Scalable, Automated Anomaly Detection with GuardDuty, CloudTrail, & Amazon Sa...
Scalable, Automated Anomaly Detection with GuardDuty, CloudTrail, & Amazon Sa...Scalable, Automated Anomaly Detection with GuardDuty, CloudTrail, & Amazon Sa...
Scalable, Automated Anomaly Detection with GuardDuty, CloudTrail, & Amazon Sa...
Amazon Web Services
 
Deep Dive on Amazon GuardDuty - AWS Online Tech Talks
Deep Dive on Amazon GuardDuty - AWS Online Tech TalksDeep Dive on Amazon GuardDuty - AWS Online Tech Talks
Deep Dive on Amazon GuardDuty - AWS Online Tech Talks
Amazon Web Services
 
Threat Detection and Mitigation at Scale on AWS - SID301 - Anaheim AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Anaheim AWS SummitThreat Detection and Mitigation at Scale on AWS - SID301 - Anaheim AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Anaheim AWS Summit
Amazon Web Services
 

Similar to How Zocdoc Achieves Automatic Threat Detection & Remediation with Security as Code (SEC321-R1) - AWS re:Invent 2018 (20)

Configure Your Cloud to Make It Rain on Threats (SEC335-R1) - AWS re:Invent 2018
Configure Your Cloud to Make It Rain on Threats (SEC335-R1) - AWS re:Invent 2018Configure Your Cloud to Make It Rain on Threats (SEC335-R1) - AWS re:Invent 2018
Configure Your Cloud to Make It Rain on Threats (SEC335-R1) - AWS re:Invent 2018
 
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
Supercharge GuardDuty with Partners: Threat Detection and Response at Scale (...
 
An Active Case Study on Insider Threat Detection in your Applications
An Active Case Study on Insider Threat Detection in your ApplicationsAn Active Case Study on Insider Threat Detection in your Applications
An Active Case Study on Insider Threat Detection in your Applications
 
Automating Incident Response and Forensics in AWS
Automating Incident Response and Forensics in AWSAutomating Incident Response and Forensics in AWS
Automating Incident Response and Forensics in AWS
 
Threat Detection and Mitigation at Scale on AWS - SID301 - Toronto AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Toronto AWS SummitThreat Detection and Mitigation at Scale on AWS - SID301 - Toronto AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Toronto AWS Summit
 
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
Easily Transform Compliance to Code using AWS Config, Config Rules, and the R...
 
Lock It Down: How to Secure Your Organization's AWS Account
Lock It Down: How to Secure Your Organization's AWS AccountLock It Down: How to Secure Your Organization's AWS Account
Lock It Down: How to Secure Your Organization's AWS Account
 
Intro to Threat Detection & Remediation on AWS: AWS Security Week at the SF Loft
Intro to Threat Detection & Remediation on AWS: AWS Security Week at the SF LoftIntro to Threat Detection & Remediation on AWS: AWS Security Week at the SF Loft
Intro to Threat Detection & Remediation on AWS: AWS Security Week at the SF Loft
 
Threat Detection and Mitigation at Scale on AWS - SID301 - Chicago AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Chicago AWS SummitThreat Detection and Mitigation at Scale on AWS - SID301 - Chicago AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Chicago AWS Summit
 
Red Team vs. Blue Team on AWS (DVC304) - AWS re:Invent 2018
Red Team vs. Blue Team on AWS (DVC304) - AWS re:Invent 2018Red Team vs. Blue Team on AWS (DVC304) - AWS re:Invent 2018
Red Team vs. Blue Team on AWS (DVC304) - AWS re:Invent 2018
 
SID301 Threat Detection and Mitigation
 SID301 Threat Detection and Mitigation SID301 Threat Detection and Mitigation
SID301 Threat Detection and Mitigation
 
Threat Detection and Mitigation at Scale on AWS - SID301 - Atlanta AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Atlanta AWS SummitThreat Detection and Mitigation at Scale on AWS - SID301 - Atlanta AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Atlanta AWS Summit
 
Red Team vs. Blue Team on AWS ~ re:Invent 2018
Red Team vs. Blue Team on AWS ~ re:Invent 2018Red Team vs. Blue Team on AWS ~ re:Invent 2018
Red Team vs. Blue Team on AWS ~ re:Invent 2018
 
Security@Scale
Security@ScaleSecurity@Scale
Security@Scale
 
Turner’s Journey to Scale Securely on a Lean Budget (SEC357-R1) - AWS re:Inve...
Turner’s Journey to Scale Securely on a Lean Budget (SEC357-R1) - AWS re:Inve...Turner’s Journey to Scale Securely on a Lean Budget (SEC357-R1) - AWS re:Inve...
Turner’s Journey to Scale Securely on a Lean Budget (SEC357-R1) - AWS re:Inve...
 
Come Out From Behind Your Firewall
Come Out From Behind Your FirewallCome Out From Behind Your Firewall
Come Out From Behind Your Firewall
 
Threat Detection & Remediation Workshop - Module 2
Threat Detection & Remediation Workshop - Module 2Threat Detection & Remediation Workshop - Module 2
Threat Detection & Remediation Workshop - Module 2
 
Scalable, Automated Anomaly Detection with GuardDuty, CloudTrail, & Amazon Sa...
Scalable, Automated Anomaly Detection with GuardDuty, CloudTrail, & Amazon Sa...Scalable, Automated Anomaly Detection with GuardDuty, CloudTrail, & Amazon Sa...
Scalable, Automated Anomaly Detection with GuardDuty, CloudTrail, & Amazon Sa...
 
Deep Dive on Amazon GuardDuty - AWS Online Tech Talks
Deep Dive on Amazon GuardDuty - AWS Online Tech TalksDeep Dive on Amazon GuardDuty - AWS Online Tech Talks
Deep Dive on Amazon GuardDuty - AWS Online Tech Talks
 
Threat Detection and Mitigation at Scale on AWS - SID301 - Anaheim AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Anaheim AWS SummitThreat Detection and Mitigation at Scale on AWS - SID301 - Anaheim AWS Summit
Threat Detection and Mitigation at Scale on AWS - SID301 - Anaheim AWS Summit
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
Amazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
Amazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
Amazon Web Services
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Amazon Web Services
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
Amazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
Amazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Amazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
Amazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Amazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
Amazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

How Zocdoc Achieves Automatic Threat Detection & Remediation with Security as Code (SEC321-R1) - AWS re:Invent 2018

  • 1.
  • 2. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Automating Threat Detection & Remediation Brian Lozada CISO Zocdoc S e s s i o n I D : 3 2 1 Jay Ball Head of Application Security Zocdoc
  • 3. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 4. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. The 21st Century Patient
  • 5. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Solving the Access Problem (Avg. Wait Time for Primary Care, Days) Portland39 Los Angeles42 Dallas12 Houston21 Miami27 Philadelphia17 Denver27 New York26 Albany 122 Boston 109 Washington DC17 Atlanta27 Seattle26 San Diego13 Detroit27
  • 6. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Portland39 Los Angeles42 Miami27 Philadelphia17 Denver27 New York26 Albany 122 Boston 109 Washington DC17 Atlanta27 Seattle26 Detroit27 Reduced Wait Time 30% unbooked, cancelled or rescheduled Dallas12 Houston21 San Diego13 24 Hours
  • 7. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Supplying Care to the 21st Century Patient 2017 ALL IN Zocdoc 2.0 Private Medical Practices Larger Health Systems
  • 8. Zocdoc AWS Goals Scale Horizontally Diversify Tech Stack Open Source Data Liberation Elevate Security
  • 9. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Securing Cloud Infrastructure
  • 11. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 12. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 13. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Security Controls Monitor Alert Investigate Prevent/Block
  • 14. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon CloudWatch AWS Trusted Advisor Lambda Function AWS GuardDuty AWS CloudTrail AWS WAF / Shield Amazon Inspector
  • 15. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Automation in AWS Today Automated Remediation Automated Alerting Automated Monitoring
  • 16. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 17. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 18. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Issue: How do we make sure S3 buckets are always encrypted? Decision: Automatic encryption upon detection where lacking.
  • 19. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Scenarios
  • 20. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Encryption Automation Process Lambda FunctionS3 operation detected, calls function Validate Crypto; Encrypts S3 bucket events logged S3 Bucket AWS CloudTrail Amazon CloudWatch Processed in CloudWatch
  • 21. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Automated Detection in CloudTrail
  • 22. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. CloudWatch Configuration { "source": [ "aws.s3" ], "detail-type": [ "AWS API Call via CloudTrail" ], "detail": { "eventSource": [ "s3.amazonaws.com" ], "eventName": [ "CreateBucket", "PutBucketAcl", "PutBucketPolicy", "PutBucketEncryption", "DeleteBucketEncryption" ] } }
  • 23. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 24. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Code: Setup & Test s3 = boto3.client('s3') sns = boto3.client('sns') def lambda_handler(event, context): bucket_name = event['detail']['requestParameters']['bucketName'] bucket_creator = event['detail']['userIdentity']['principalId'] bucket_user = bucket_creator.split(":",1) try: currEncrypt = s3.get_bucket_encryption (Bucket=bucket_name)
  • 25. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Code: Encrypt except ClientError as e: toEncrypt = s3.put_bucket_encryption ( Bucket=bucket_name, ServerSideEncryptionConfiguration = { 'Rules':[ { 'ApplyServerSideEncryptionByDefault': { 'SSEAlgorithm': 'AES256' } }] } ) response = sns.publish( TopicArn= 'arn:aws:sns:us-east-1: … 000012345678:unEncryptedS3BucketCreated', Message= 'Unencrypted Bucket by '+ bucket_user[1] ) else: return currEncrypt
  • 26. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 27. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Issue: Malware infection is calling out to command & control. Decision: Kill the instance.
  • 28. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Automated Detection & Response AWS GuardDuty Amazon CloudWatch Lambda Function Processed by CloudWatch Call Lambda on malicious trigger Kills EC2 instance DNS lookup of malicious hostname detected AWS EC2
  • 29. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Post Automation Review • CloudWatch and CloudTrail log analysis • Machine forensics on attached storage • Automated instance rebuild with CloudFormation
  • 30. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Automated Detection
  • 31. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. GuardDuty Configuration Configure IAM Permissions for GuardDuty Sign in & Enable GuardDuty Watch the Data Flow 1 2 3
  • 32. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. CloudWatch Configuration { "source": [ "aws.guardduty" ], "detail-type": [ "GuardDuty Finding" ], "detail": { "type": [ "Backdoor:EC2/C&CActivity.B!DNS" ] } }
  • 33. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 34. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Code: Initial Sanity Checks # lots of imports def lambda_handler(event, context): source = event['source'] if source != "aws.guardduty": # wrong caller, just silently return return detail_type = event['detail-type'] if detail_type != 'GuardDuty Finding': # wrong caller, just silently return return event_type = event['detail']['type’] bad_event_list = [ 'Backdoor:EC2/C&CActivity.B!DNS’ ] if not(event_type in bad_event_list): # wrong event type, silently return return
  • 35. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Code: Event Processing instance_id = event['detail']['resource']['instanceDetails']['instanceId'] # only shutdown certain tags: taglist= event['detail']['resource']['instanceDetails']['tags'] runme=False for nvp in taglist: if "security_guillotine" == nvp['key'].lower(): runme=True if not(runme): # We are not part of our auto-shutdown EC2 group, return return
  • 36. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Code: Euthanize It print("Shutting down instance ", instance_id) ec2 = boto3.client('ec2') try: response = ec2.stop_instances( InstanceIds=[ instance_id ] # , DryRun=True ) except ClientError as e: if 'DryRunOperation' not in str(e): print("No permission to reboot instances.") raise else: print('Error', e)
  • 37. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. GuardDuty Event Detection 'Backdoor:EC2/XORDDOS', 'Backdoor:EC2/Spambot', 'Backdoor:EC2/C&CActivity.B!DNS', 'CryptoCurrency:EC2/BitcoinTool.B!DNS', 'Trojan:EC2/BlackholeTraffic', 'Trojan:EC2/DropPoint', 'Trojan:EC2/BlackholeTraffic!DNS', 'Trojan:EC2/DriveBySourceTraffic!DNS', 'Trojan:EC2/DropPoint!DNS', 'Trojan:EC2/DGADomainRequest.B', 'Trojan:EC2/DGADomainRequest.C!DNS', 'Trojan:EC2/DNSDataExfiltration', 'Trojan:EC2/PhishingDomainRequest!DNS' GuardDuty reports on many events for which we want to kill the instance.
  • 38. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 39. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Issue: Someone opens sensitive ports to the entire Internet. Decision: Modify the security group to remove the rule that opens the sensitive ports.
  • 40. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Automated Response Amazon CloudWatch Lambda Function Alert raised in CloudWatch Call to run Lambda Remove bad CIDR from security group Disallowed CIDR used Security Group server AWS CloudTrail
  • 41. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Automated Detection in CloudTrail
  • 42. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. CloudWatch Configuration { "source": [ "aws.cloudtrail" ], "detail-type": [ "AWS API Call via CloudTrail" ], "detail": { "eventSource": [ "ec2.amazonaws.com" ], "eventName": [ "CreateSecurityGroup", "AuthorizeSecurityGroupIngress" ] } }
  • 43. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 44. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Code: Initial Sanity Checks def lambda_handler(event, context): source = event['detail']['eventSource'] if source != "ec2.amazonaws.com": # wrong caller, just silently return return allowed_event_list = [ 'CreateSecurityGroup', "AuthorizeSecurityGroupIngress" ] event_name = event['detail']['eventName'] if not(event_name in allowed_event_list): # wrong event, just silently return print("Wrong Filter: source=", source, " / event_name=", event_name) return
  • 45. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Code: GetSecurityGroupID resp = event['detail']['responseElements'] if (resp["_return"] != True): # event was not a successful update, so we can ignore it. return SG_id = 'invalid' if event_name == 'CreateSecurityGroup': SG_id = resp["groupId"] elif event_name == 'AuthorizeSecurityGroupIngress': SG_id = event['detail']['requestParameters']['groupId'] else: # We shouldn't actually get here. return
  • 46. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Code: Group Sensitivity Training ec2 = boto3.resource('ec2') security_group = ec2.SecurityGroup(SG_id) sensitive_ports = [ 22, 3389, 54321 ] ingress_list = security_group.ip_permissions for perm in ingress_list: fromport=0 ; toport=0 ; ipprot=0 ; sensitive=False if 'FromPort' in perm: fromport = perm['FromPort'] if 'ToPort' in perm: toport = perm['ToPort'] if 'IpProtocol' in perm: ipprot = perm['IpProtocol'] if ipprot == "-1": sensitive = True if fromport > 0: for p in sensitive_ports: if fromport <= p and p <= toport: sensitive = True
  • 47. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Code: Test for Zero CIDR if sensitive: for r in perm['IpRanges']: # this could be more complex, but 0000/0 catches 95% of the cases if r['CidrIp'] == "0.0.0.0/0": print("Removing Ingress Rule violation: ", json.dumps(perm)) try: security_group.revoke_ingress( CidrIp = r['CidrIp'], IpProtocol = perm['IpProtocol'], FromPort = fromport, ToPort = toport # , DryRun = True ) except ClientError as e: if 'DryRunOperation' not in str(e): print("Error: ", e) raise else: print('DryRun: ', e)
  • 48. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 49. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Issue: Spend too much on an underwhelming WAF solution. Decision: Leverage AWS WAF & Shield Protection.
  • 50. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Traditional WAF Configuration Inefficiencies 1) Each site / ALB requires separate WAF configuration • Ex: www and espanol, different html, same endpoints 2) Need to manage 9 different configurations, one per site 3) No ability to share rules between each configuration • Ex: blacklist should be the same for all sites 4) No IP reputation lists So, how did we move forward…
  • 51. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS WAF Security Automations
  • 52. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS WAF Security Automations with Modifications Add: Country-level blocks Add: Specialty whitelisting for some URIs/parameters Add: Specialty blacklisting for obsolete endpoints Update: Reputation List processing logic Remove: Bad bot honey pot
  • 53. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Dual WAFs Zocdoc has two types of systems • Each has a different set of AWS WAF rules (WebACL) • Each type points to multiple ALBs, like www & espanol
  • 54. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. WAF Configuration Our WAFs share some rules Exclusions on XSS/SQL blocks Some rules are unneeded on api ẅŵẘ ầṗĩ 1 Whitelist by IP 2 Blacklist by IP 3 IP Reputational Blacklist 4 Country Blacklist 5 Whitelist by Criteria 6 Blacklist URL --- 7 Flood 8 Scan 9 SQLi Blocks --- 10 XSS Blocks --- Default  Allow
  • 55. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. WAF Comparison • 9 different rule sets • No shared rules • Geoblocking rules • Many possible rules per set • Lots of string and regex match sets • Specialty “Good Bot” rules • 2 different rule sets (WebACLs) • Many shared rules • Geoblocking rules • Maximum 10 rules per set • Maximum 5 regex match sets total • … phase two, “Good Bot”, maybe OLD WAF AWS WAF
  • 56. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. What Security is Automated • Bad Reputation IP blocklists updated hourly • Floods protection from high rate IPs update periodically • Probing IPs blocklist is update periodically • Bad-bots IP blocklist updated instantly after trigger
  • 57. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS WAF Code // Our Code is Amazon’s Code, thus it can be Your Code too! Zocdoc_Customizations = { “Special Regex Rules”, “Double WAF with shared rules”, “Reordering of existing rules”, “Complex deployment process using Ansible” } // But actual automations are all Amazon’s own CloudFormation code!
  • 58. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. AWS WAF Code – Zocdoc Updates Expanded Reputation List CIDR range processing Lambda code: https://github.com/awslabs/aws-waf-security-automations/pull/64 This change eliminates the need for one rule ... and removes up to 15,000 comparisons for each web request, thus faster Once less processing rule saves money for all users of this Security Automation template
  • 59. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 60. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Issue: It’s vulnerability time. Decision: Leverage Amazon Inspector for visibility and compliance of AWS environments to industry standard requirements.
  • 61. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Basic Requirements Amazon Inspector agent Amazon Inspector Generated findings for review
  • 62. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Zocdoc Compliance Measures Infosec reviews the findings and submits patch requests to teams Prioritize by severity and compliance requirements • SOC 2 Type II – Mostly Process • PHI / HIPPA – Mostly Policy • CIS – Center for Internet Security – The ever-evolving system hardening checklist
  • 63. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. But, what might the future be? Generate findings for review AWS Systems Manager Patch Source AMI Kill noncompliant systems Amazon Inspector Agent runs on OS Automatic findings processing Redeploy system
  • 64. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Divinations & Seering We are not there yet, but we can start with baby steps • OS patches are generally better defined that Application patching Some commercial solutions do parts of this idea • None are perfect and all are pricy • Amazon gives us , let’s use them Start with CIS compliance
  • 65. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. • Reduce inefficiencies of manual work through automation • Reduce alert traffic through automation • Drives business enablement
  • 66. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon CloudWatch AWS Trusted Advisor Lambda Function AWS GuardDuty AWS CloudTrail AWS WAF / Shield Amazon Inspector
  • 67. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Interested in Code? github.com/Zocdoc/ ZocSec.SecurityAsCode.AWS
  • 68. Thank you! © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved. Brian Lozada CISO Twitter: @BrianL1775 LinkedIn: blozada Jay Ball Head of Application Security Twitter: @veggiespam LinkedIn: veggiespam Security Blog: www.veggiespam.com Instagram: woolpictures
  • 69. © 2018, Amazon Web Services, Inc. or its affiliates. All rights reserved.