SlideShare a Scribd company logo
1 of 24
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Sundar Jayashekar, Sr. Product Manager
Vlad Vlasceanu, Solutions Architect
09/28/2017
Use AWS WAF to Mitigate
OWASP’s Top 10 Web Application
Vulnerabilities
About Today’s Webinar
• AWS WAF Overview
• Mitigating Application Security
Vulnerabilities
• Overview of OWASP Top 10
• Mitigating OWASP Top 10
Application Flaws
Dive Deep:
Whitepaper: Use AWS WAF to Mitigate OWASP’s Top 10 Web Application
Vulnerabilities
Toolkit: Companion CloudFormation Template containing example rules mitigating
OWASP Top 10 vulnerabilities
What is AWS WAF?
• Protect websites and web
applications against common web
exploits
• Mitigate risks impacting application
availability, security, or driving
excessive resource consumption
• HTTP protocol request filtering engine
• Prevent attacks with recognizable
request signatures
• Meet regulatory compliance
requirements
Web App Database
Your Application
Good Users Bad Folks
AWS WAF
WAF Positioning in the Spectrum of Attacks
DDoS
Targeted
attacks
WAF
Reflection and
amplification
Layer 3 & 4
floods
Slowloris
SSL abuse
HTTP floods
SQL injection
Bots and
probes Application
exploits
Social
engineering
Reverse
engineering
XSS
RFI/LFI
Data Exposure
Implementing AWS WAF
Associations
Amazon CloudFront Application Load Balancer
Web ACLs
Ordered set of rules
Rules
Match sets as predicates
Conditions
Match sets
• SQL Injection
• Cross Site Scripting (XSS)
• IP Blacklisting/Whitelisting
• Request Hygene/Size Constraints
• String Pattern Filtering
• Standard Rules
• Rate Based Rules (per 5min interval)
• Actions: Block, Allow, Count
• Perimeter protection
Strategies for Building a WAF Web ACL
• Blacklisting:
• Block bad patterns with rules, default action is: ALLOW
• More commonly used
• Whitelisting:
• Allow good patterns with rules, default action is: BLOCK
• Works best for defined limited pattern sets
• Mixed:
• Considerations: Rule ordering, bypass rules
• Count effects:
• Test pattern effectiveness with COUNT rule action
OWASP Top 10 (2013 & 2017 RC)
Represents a broad consensus about what the most critical web application
security flaws are
A1
Injection
A2
Broken Auth. &
Session Mgmt.
A3
Cross-Site Scripting
(XSS)
A4
Broken Access
Control
A5
Security
Misconfiguration
A6
Sensitive Data
Exposure
A7
Insufficient Attack
Protection
A8
Cross-Site Request
Forgery (CSRF)
A9
Using Components
with Known
Vulnerabilities
A10
Underprotected
APIs
2013 - A10
Unvalidated
redirects and
forwards
New
New
New
QuackyNature.com is the leading online retailer of Widgets
They are constantly under attack by malicious actors
trying to steal sensitive data, such as: payment information,
customer, pricing or supplier information.
You are their new Security Engineer tasked with
protecting their data and mitigating attacks…
Mitigating Application Security Threats
An application oriented approach:
Securing the specific application profile
Mitigate risks of exploiting QuackyNature.com application
specific flaws (code, configurations, features)
✓
Keeping up with a changing landscape✓
Mitigating common attack vectors
Protect QuackyNature.com from common attacks
✓
Using WAF to Mitigate OWASP Top 10
AWS WAF can mitigate application flaws
in the OWASP Top 10 categories
• A WAF does not fix the underlying flaws,
it limits the ability to exploit them
• Ability to derive recognizable HTTP
request pattern is key to effectiveness
• Ability to keep up with changes in attack
patterns is important
Know Your Specific Application Profile
Know your application in-depth, even if it’s a open
source/commercial off-the-shelf product
What services/URL paths does it expose to the web?
Keep them all up-to-date, and install security patches
timely
Keep exposure footprint low
1
3
Know the packages, libraries, components your
application is leveraging
Additional features and services they expose
2
A1 – Injection
Injection flaw: application sends untrusted data to an interpreter, risk
of altering original intent of request
Most well known are SQL Injection flaws
Credit: XKCD: Exploits of a Mom, published by permission.
A1 – Injection
Mitigate using AWS WAF SQL injection match conditions
• What HTTP request components should you scan?
• Query String, URI, Body, Cookie and/or Authorization Header
• What transformations should you apply?
• URL Decode, Decode HTML Entities
• What about other injection types?
• Use string match conditions
A3 – Cross-Site Scripting (XSS)
XSS flaw: include user-provided data in web pages without proper
sanitization. Malicious scripts or objects can be embedded in user
pages
Your Comment:
SEND
<script src=”https://malicious-
site.com/exploit.js”
type=”text/javascript” />
A3 – Cross-Site Scripting (XSS)
Mitigate using AWS WAF cross-site scripting match conditions
• What HTTP request components should you scan?
• Body, Query String, Cookie Header, URI
• What transformations should you apply?
• URL Decode, Decode HTML Entities
• What content types are allowed in HTTP request?
• Risk of false positives if not HTML content
A4 – Broken Access Control
Flaws due to lack/improper enforcement of restrictions on what users
are allowed to do:
• Manipulation of internal application objects
• Component/Function-level access control issues
• Path traversal attacks, local or remote file inclusion (LFI/RFI)
Permission validation flaws are difficult to mitigate by any WAF without
user context.
https://example.com/download.php?file=..%2F..%2Fetc%2Fpasswd
A4 – Broken Access Control
• Filter dangerous patterns using string match conditions that might
indicate path traversal, file inclusion.
• Limit access to administrative modules, or components to a known
set of users from known locations using string match conditions
and IP address match conditions
A5 – Security Misconfigurations
Default configurations aren’t always fit for purpose, recommended
defaults also change over time
Examples
• Leaving Apache’s ServerTokens Full in production
• Leaving default directory listings enabled in production web servers
• Application framework configuration that return stack traces in
production
• Bad/old insecure default configurations for runtimes, interpreters,
etc…
A5 – Security Misconfigurations
WAF mitigation strategies:
• Block or restrict access to paths for administrative consoles,
configuration or status pages, installed or enabled by default
• Protect against known attack patterns specific to your platform,
especially for legacy apps reliant on old platform behavior. Use
string match conditions to match relevant patterns.
http://example.com/?_SERVER[DOCUMENT_ROOT]=http://bad.com/bad.htm
A7 – Insufficient Attack Protection
Category proposed & rejected in the 2017 release candidate review,
still contains valuable lessons
Key coverage:
• HTTP request hygiene enforcement
• Adaptability to changing attack patterns
• Anomaly detection and reaction
• Validation of control effectiveness
A7 – Insufficient Attack Protection
WAF mitigation strategies:
• Use size constraint conditions to limit size of HTTP request
components to application relevant maximums
• Use rate-based rules to detect abnormal request volumes, or
changes in such volumes
• Use AWS WAF Security Automations for capabilities reacting to
abnormal conditions:
• Scanner and probe mitigation
• Known attacker origin mitigation (reputation lists)
• Bot and scraper mitigation
A9 – Components w/ Known Vulnerabilities
One of the most prevalent attack vectors
• Use of vulnerable components due to legacy constraints
• Use of vulnerable sub-components due to dependencies
• Use of vulnerable components due to lack of flaw tracking/reporting
Using WAF to mitigate:
• Block HTTP requests to unused functionality of components
• Block HTTP requests to server-side components in the public web
path
Demo
Thank You!

More Related Content

What's hot

Introduction to AWS Lambda and Serverless Applications
Introduction to AWS Lambda and Serverless ApplicationsIntroduction to AWS Lambda and Serverless Applications
Introduction to AWS Lambda and Serverless ApplicationsAmazon Web Services
 
The AWS Shared Security Responsibility Model in Practice
The AWS Shared Security Responsibility Model in PracticeThe AWS Shared Security Responsibility Model in Practice
The AWS Shared Security Responsibility Model in PracticeAmazon Web Services
 
Network Security and Access Control within AWS
Network Security and Access Control within AWSNetwork Security and Access Control within AWS
Network Security and Access Control within AWSAmazon Web Services
 
(SEC323) New: Securing Web Applications with AWS WAF
(SEC323) New: Securing Web Applications with AWS WAF(SEC323) New: Securing Web Applications with AWS WAF
(SEC323) New: Securing Web Applications with AWS WAFAmazon Web Services
 
Module 3: Security, Identity and Access Management - AWSome Day Online Confer...
Module 3: Security, Identity and Access Management - AWSome Day Online Confer...Module 3: Security, Identity and Access Management - AWSome Day Online Confer...
Module 3: Security, Identity and Access Management - AWSome Day Online Confer...Amazon Web Services
 
IAM Introduction and Best Practices
IAM Introduction and Best PracticesIAM Introduction and Best Practices
IAM Introduction and Best PracticesAmazon Web Services
 
AWS re:Invent 2016: Workshop: Secure Your Web Application with AWS WAF and Am...
AWS re:Invent 2016: Workshop: Secure Your Web Application with AWS WAF and Am...AWS re:Invent 2016: Workshop: Secure Your Web Application with AWS WAF and Am...
AWS re:Invent 2016: Workshop: Secure Your Web Application with AWS WAF and Am...Amazon Web Services
 
AWS Web Application Firewall and AWS Shield - Webinar
AWS Web Application Firewall and AWS Shield - Webinar AWS Web Application Firewall and AWS Shield - Webinar
AWS Web Application Firewall and AWS Shield - Webinar Amazon Web Services
 
Elastic Load Balancing Deep Dive and Best Practices - NET402 - re:Invent 2017
Elastic Load Balancing Deep Dive and Best Practices - NET402 - re:Invent 2017Elastic Load Balancing Deep Dive and Best Practices - NET402 - re:Invent 2017
Elastic Load Balancing Deep Dive and Best Practices - NET402 - re:Invent 2017Amazon Web Services
 
Iam presentation
Iam presentationIam presentation
Iam presentationAWS UG PK
 
Implementing your landing zone - FND210 - AWS re:Inforce 2019
Implementing your landing zone - FND210 - AWS re:Inforce 2019 Implementing your landing zone - FND210 - AWS re:Inforce 2019
Implementing your landing zone - FND210 - AWS re:Inforce 2019 Amazon Web Services
 
Elastic Load Balancing Deep Dive - AWS Online Tech Talk
Elastic  Load Balancing Deep Dive - AWS Online Tech TalkElastic  Load Balancing Deep Dive - AWS Online Tech Talk
Elastic Load Balancing Deep Dive - AWS Online Tech TalkAmazon Web Services
 
Auto scaling using Amazon Web Services ( AWS )
Auto scaling using Amazon Web Services ( AWS )Auto scaling using Amazon Web Services ( AWS )
Auto scaling using Amazon Web Services ( AWS )Harish Ganesan
 
Introduce AWS Lambda for newbie and Non-IT
Introduce AWS Lambda for newbie and Non-ITIntroduce AWS Lambda for newbie and Non-IT
Introduce AWS Lambda for newbie and Non-ITChitpong Wuttanan
 
Introducing AWS Elastic Beanstalk
Introducing AWS Elastic BeanstalkIntroducing AWS Elastic Beanstalk
Introducing AWS Elastic BeanstalkAmazon Web Services
 

What's hot (20)

AWS Cloud trail
AWS Cloud trailAWS Cloud trail
AWS Cloud trail
 
Introduction to AWS Lambda and Serverless Applications
Introduction to AWS Lambda and Serverless ApplicationsIntroduction to AWS Lambda and Serverless Applications
Introduction to AWS Lambda and Serverless Applications
 
The AWS Shared Security Responsibility Model in Practice
The AWS Shared Security Responsibility Model in PracticeThe AWS Shared Security Responsibility Model in Practice
The AWS Shared Security Responsibility Model in Practice
 
Network Security and Access Control within AWS
Network Security and Access Control within AWSNetwork Security and Access Control within AWS
Network Security and Access Control within AWS
 
(SEC323) New: Securing Web Applications with AWS WAF
(SEC323) New: Securing Web Applications with AWS WAF(SEC323) New: Securing Web Applications with AWS WAF
(SEC323) New: Securing Web Applications with AWS WAF
 
Module 3: Security, Identity and Access Management - AWSome Day Online Confer...
Module 3: Security, Identity and Access Management - AWSome Day Online Confer...Module 3: Security, Identity and Access Management - AWSome Day Online Confer...
Module 3: Security, Identity and Access Management - AWSome Day Online Confer...
 
IAM Introduction and Best Practices
IAM Introduction and Best PracticesIAM Introduction and Best Practices
IAM Introduction and Best Practices
 
AWS re:Invent 2016: Workshop: Secure Your Web Application with AWS WAF and Am...
AWS re:Invent 2016: Workshop: Secure Your Web Application with AWS WAF and Am...AWS re:Invent 2016: Workshop: Secure Your Web Application with AWS WAF and Am...
AWS re:Invent 2016: Workshop: Secure Your Web Application with AWS WAF and Am...
 
Deep dive into AWS IAM
Deep dive into AWS IAMDeep dive into AWS IAM
Deep dive into AWS IAM
 
Intro to AWS: Database Services
Intro to AWS: Database ServicesIntro to AWS: Database Services
Intro to AWS: Database Services
 
Auto Scaling on AWS
Auto Scaling on AWSAuto Scaling on AWS
Auto Scaling on AWS
 
Intro to AWS Lambda
Intro to AWS Lambda Intro to AWS Lambda
Intro to AWS Lambda
 
AWS Web Application Firewall and AWS Shield - Webinar
AWS Web Application Firewall and AWS Shield - Webinar AWS Web Application Firewall and AWS Shield - Webinar
AWS Web Application Firewall and AWS Shield - Webinar
 
Elastic Load Balancing Deep Dive and Best Practices - NET402 - re:Invent 2017
Elastic Load Balancing Deep Dive and Best Practices - NET402 - re:Invent 2017Elastic Load Balancing Deep Dive and Best Practices - NET402 - re:Invent 2017
Elastic Load Balancing Deep Dive and Best Practices - NET402 - re:Invent 2017
 
Iam presentation
Iam presentationIam presentation
Iam presentation
 
Implementing your landing zone - FND210 - AWS re:Inforce 2019
Implementing your landing zone - FND210 - AWS re:Inforce 2019 Implementing your landing zone - FND210 - AWS re:Inforce 2019
Implementing your landing zone - FND210 - AWS re:Inforce 2019
 
Elastic Load Balancing Deep Dive - AWS Online Tech Talk
Elastic  Load Balancing Deep Dive - AWS Online Tech TalkElastic  Load Balancing Deep Dive - AWS Online Tech Talk
Elastic Load Balancing Deep Dive - AWS Online Tech Talk
 
Auto scaling using Amazon Web Services ( AWS )
Auto scaling using Amazon Web Services ( AWS )Auto scaling using Amazon Web Services ( AWS )
Auto scaling using Amazon Web Services ( AWS )
 
Introduce AWS Lambda for newbie and Non-IT
Introduce AWS Lambda for newbie and Non-ITIntroduce AWS Lambda for newbie and Non-IT
Introduce AWS Lambda for newbie and Non-IT
 
Introducing AWS Elastic Beanstalk
Introducing AWS Elastic BeanstalkIntroducing AWS Elastic Beanstalk
Introducing AWS Elastic Beanstalk
 

Similar to How to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech Talks

AWS DDoS防範: Shield Advanced & WAF
AWS DDoS防範: Shield Advanced & WAFAWS DDoS防範: Shield Advanced & WAF
AWS DDoS防範: Shield Advanced & WAFAmazon Web Services
 
Protect Your Web Applications from Common Attack Vectors Using AWS WAF - SID3...
Protect Your Web Applications from Common Attack Vectors Using AWS WAF - SID3...Protect Your Web Applications from Common Attack Vectors Using AWS WAF - SID3...
Protect Your Web Applications from Common Attack Vectors Using AWS WAF - SID3...Amazon Web Services
 
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017Philippe Gamache
 
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017 OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017 Philippe Gamache
 
Introduction to AWS WAF and AWS Firewall Manager
Introduction to AWS WAF and AWS Firewall ManagerIntroduction to AWS WAF and AWS Firewall Manager
Introduction to AWS WAF and AWS Firewall ManagerAkesh Patil
 
Setup Preconfigured Protections on AWS WAF - November 2016 Webinar Series
Setup Preconfigured Protections on AWS WAF - November 2016 Webinar SeriesSetup Preconfigured Protections on AWS WAF - November 2016 Webinar Series
Setup Preconfigured Protections on AWS WAF - November 2016 Webinar SeriesAmazon Web Services
 
Using AWS WAF to protect against bots and scrapers - SDD311 - AWS re:Inforce ...
Using AWS WAF to protect against bots and scrapers - SDD311 - AWS re:Inforce ...Using AWS WAF to protect against bots and scrapers - SDD311 - AWS re:Inforce ...
Using AWS WAF to protect against bots and scrapers - SDD311 - AWS re:Inforce ...Amazon Web Services
 
How to Harden the Security of Your .NET Website
How to Harden the Security of Your .NET WebsiteHow to Harden the Security of Your .NET Website
How to Harden the Security of Your .NET WebsiteDNN
 
AWS Webcast - Top 3 Ways to Improve Web App Security
AWS Webcast - Top 3 Ways to Improve Web App SecurityAWS Webcast - Top 3 Ways to Improve Web App Security
AWS Webcast - Top 3 Ways to Improve Web App SecurityAmazon Web Services
 
Web Application Firewall (WAF) Data Sheet - Array Networks
Web Application Firewall (WAF) Data Sheet - Array NetworksWeb Application Firewall (WAF) Data Sheet - Array Networks
Web Application Firewall (WAF) Data Sheet - Array Networks Array Networks
 
Aws meetup aws_waf
Aws meetup aws_wafAws meetup aws_waf
Aws meetup aws_wafAdam Book
 
Brocade vADC Portfolio Overview 2016
Brocade vADC Portfolio Overview 2016Brocade vADC Portfolio Overview 2016
Brocade vADC Portfolio Overview 2016Scott Sims
 
SEC304 Advanced Techniques for DDoS Mitigation and Web Application Defense
SEC304 Advanced Techniques for DDoS Mitigation and Web Application DefenseSEC304 Advanced Techniques for DDoS Mitigation and Web Application Defense
SEC304 Advanced Techniques for DDoS Mitigation and Web Application DefenseAmazon Web Services
 
Introduction to Threat Detection and Remediation on AWS
Introduction to Threat Detection and Remediation on AWSIntroduction to Threat Detection and Remediation on AWS
Introduction to Threat Detection and Remediation on AWSAmazon Web Services
 
Introduction to Threat Detection and Remediation
Introduction to Threat Detection and RemediationIntroduction to Threat Detection and Remediation
Introduction to Threat Detection and RemediationAmazon Web Services
 
Hackers versus Developers and Secure Web Programming
Hackers versus Developers and Secure Web ProgrammingHackers versus Developers and Secure Web Programming
Hackers versus Developers and Secure Web ProgrammingAkash Mahajan
 
Why You Need A Web Application Firewall
Why You Need A Web Application FirewallWhy You Need A Web Application Firewall
Why You Need A Web Application FirewallPort80 Software
 
owasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWEowasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWEArun Voleti
 
Protect your applications from DDoS/BOT & Advanced Attacks
Protect your applications from DDoS/BOT & Advanced AttacksProtect your applications from DDoS/BOT & Advanced Attacks
Protect your applications from DDoS/BOT & Advanced AttacksAmazon Web Services
 

Similar to How to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech Talks (20)

AWS DDoS防範: Shield Advanced & WAF
AWS DDoS防範: Shield Advanced & WAFAWS DDoS防範: Shield Advanced & WAF
AWS DDoS防範: Shield Advanced & WAF
 
Protect Your Web Applications from Common Attack Vectors Using AWS WAF - SID3...
Protect Your Web Applications from Common Attack Vectors Using AWS WAF - SID3...Protect Your Web Applications from Common Attack Vectors Using AWS WAF - SID3...
Protect Your Web Applications from Common Attack Vectors Using AWS WAF - SID3...
 
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
 
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017 OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
 
AWS WAF OWASP
AWS WAF OWASPAWS WAF OWASP
AWS WAF OWASP
 
Introduction to AWS WAF and AWS Firewall Manager
Introduction to AWS WAF and AWS Firewall ManagerIntroduction to AWS WAF and AWS Firewall Manager
Introduction to AWS WAF and AWS Firewall Manager
 
Setup Preconfigured Protections on AWS WAF - November 2016 Webinar Series
Setup Preconfigured Protections on AWS WAF - November 2016 Webinar SeriesSetup Preconfigured Protections on AWS WAF - November 2016 Webinar Series
Setup Preconfigured Protections on AWS WAF - November 2016 Webinar Series
 
Using AWS WAF to protect against bots and scrapers - SDD311 - AWS re:Inforce ...
Using AWS WAF to protect against bots and scrapers - SDD311 - AWS re:Inforce ...Using AWS WAF to protect against bots and scrapers - SDD311 - AWS re:Inforce ...
Using AWS WAF to protect against bots and scrapers - SDD311 - AWS re:Inforce ...
 
How to Harden the Security of Your .NET Website
How to Harden the Security of Your .NET WebsiteHow to Harden the Security of Your .NET Website
How to Harden the Security of Your .NET Website
 
AWS Webcast - Top 3 Ways to Improve Web App Security
AWS Webcast - Top 3 Ways to Improve Web App SecurityAWS Webcast - Top 3 Ways to Improve Web App Security
AWS Webcast - Top 3 Ways to Improve Web App Security
 
Web Application Firewall (WAF) Data Sheet - Array Networks
Web Application Firewall (WAF) Data Sheet - Array NetworksWeb Application Firewall (WAF) Data Sheet - Array Networks
Web Application Firewall (WAF) Data Sheet - Array Networks
 
Aws meetup aws_waf
Aws meetup aws_wafAws meetup aws_waf
Aws meetup aws_waf
 
Brocade vADC Portfolio Overview 2016
Brocade vADC Portfolio Overview 2016Brocade vADC Portfolio Overview 2016
Brocade vADC Portfolio Overview 2016
 
SEC304 Advanced Techniques for DDoS Mitigation and Web Application Defense
SEC304 Advanced Techniques for DDoS Mitigation and Web Application DefenseSEC304 Advanced Techniques for DDoS Mitigation and Web Application Defense
SEC304 Advanced Techniques for DDoS Mitigation and Web Application Defense
 
Introduction to Threat Detection and Remediation on AWS
Introduction to Threat Detection and Remediation on AWSIntroduction to Threat Detection and Remediation on AWS
Introduction to Threat Detection and Remediation on AWS
 
Introduction to Threat Detection and Remediation
Introduction to Threat Detection and RemediationIntroduction to Threat Detection and Remediation
Introduction to Threat Detection and Remediation
 
Hackers versus Developers and Secure Web Programming
Hackers versus Developers and Secure Web ProgrammingHackers versus Developers and Secure Web Programming
Hackers versus Developers and Secure Web Programming
 
Why You Need A Web Application Firewall
Why You Need A Web Application FirewallWhy You Need A Web Application Firewall
Why You Need A Web Application Firewall
 
owasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWEowasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWE
 
Protect your applications from DDoS/BOT & Advanced Attacks
Protect your applications from DDoS/BOT & Advanced AttacksProtect your applications from DDoS/BOT & Advanced Attacks
Protect your applications from DDoS/BOT & Advanced Attacks
 

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 FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon 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
 
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 WorkloadsAmazon 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 sfatareAmazon 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 NodeJSAmazon 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 webAmazon 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 sfatareAmazon 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 ServiceAmazon 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 to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech Talks

  • 1. © 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Sundar Jayashekar, Sr. Product Manager Vlad Vlasceanu, Solutions Architect 09/28/2017 Use AWS WAF to Mitigate OWASP’s Top 10 Web Application Vulnerabilities
  • 2. About Today’s Webinar • AWS WAF Overview • Mitigating Application Security Vulnerabilities • Overview of OWASP Top 10 • Mitigating OWASP Top 10 Application Flaws Dive Deep: Whitepaper: Use AWS WAF to Mitigate OWASP’s Top 10 Web Application Vulnerabilities Toolkit: Companion CloudFormation Template containing example rules mitigating OWASP Top 10 vulnerabilities
  • 3. What is AWS WAF? • Protect websites and web applications against common web exploits • Mitigate risks impacting application availability, security, or driving excessive resource consumption • HTTP protocol request filtering engine • Prevent attacks with recognizable request signatures • Meet regulatory compliance requirements Web App Database Your Application Good Users Bad Folks AWS WAF
  • 4. WAF Positioning in the Spectrum of Attacks DDoS Targeted attacks WAF Reflection and amplification Layer 3 & 4 floods Slowloris SSL abuse HTTP floods SQL injection Bots and probes Application exploits Social engineering Reverse engineering XSS RFI/LFI Data Exposure
  • 5. Implementing AWS WAF Associations Amazon CloudFront Application Load Balancer Web ACLs Ordered set of rules Rules Match sets as predicates Conditions Match sets • SQL Injection • Cross Site Scripting (XSS) • IP Blacklisting/Whitelisting • Request Hygene/Size Constraints • String Pattern Filtering • Standard Rules • Rate Based Rules (per 5min interval) • Actions: Block, Allow, Count • Perimeter protection
  • 6. Strategies for Building a WAF Web ACL • Blacklisting: • Block bad patterns with rules, default action is: ALLOW • More commonly used • Whitelisting: • Allow good patterns with rules, default action is: BLOCK • Works best for defined limited pattern sets • Mixed: • Considerations: Rule ordering, bypass rules • Count effects: • Test pattern effectiveness with COUNT rule action
  • 7. OWASP Top 10 (2013 & 2017 RC) Represents a broad consensus about what the most critical web application security flaws are A1 Injection A2 Broken Auth. & Session Mgmt. A3 Cross-Site Scripting (XSS) A4 Broken Access Control A5 Security Misconfiguration A6 Sensitive Data Exposure A7 Insufficient Attack Protection A8 Cross-Site Request Forgery (CSRF) A9 Using Components with Known Vulnerabilities A10 Underprotected APIs 2013 - A10 Unvalidated redirects and forwards New New New
  • 8. QuackyNature.com is the leading online retailer of Widgets They are constantly under attack by malicious actors trying to steal sensitive data, such as: payment information, customer, pricing or supplier information. You are their new Security Engineer tasked with protecting their data and mitigating attacks…
  • 9. Mitigating Application Security Threats An application oriented approach: Securing the specific application profile Mitigate risks of exploiting QuackyNature.com application specific flaws (code, configurations, features) ✓ Keeping up with a changing landscape✓ Mitigating common attack vectors Protect QuackyNature.com from common attacks ✓
  • 10. Using WAF to Mitigate OWASP Top 10 AWS WAF can mitigate application flaws in the OWASP Top 10 categories • A WAF does not fix the underlying flaws, it limits the ability to exploit them • Ability to derive recognizable HTTP request pattern is key to effectiveness • Ability to keep up with changes in attack patterns is important
  • 11. Know Your Specific Application Profile Know your application in-depth, even if it’s a open source/commercial off-the-shelf product What services/URL paths does it expose to the web? Keep them all up-to-date, and install security patches timely Keep exposure footprint low 1 3 Know the packages, libraries, components your application is leveraging Additional features and services they expose 2
  • 12. A1 – Injection Injection flaw: application sends untrusted data to an interpreter, risk of altering original intent of request Most well known are SQL Injection flaws Credit: XKCD: Exploits of a Mom, published by permission.
  • 13. A1 – Injection Mitigate using AWS WAF SQL injection match conditions • What HTTP request components should you scan? • Query String, URI, Body, Cookie and/or Authorization Header • What transformations should you apply? • URL Decode, Decode HTML Entities • What about other injection types? • Use string match conditions
  • 14. A3 – Cross-Site Scripting (XSS) XSS flaw: include user-provided data in web pages without proper sanitization. Malicious scripts or objects can be embedded in user pages Your Comment: SEND <script src=”https://malicious- site.com/exploit.js” type=”text/javascript” />
  • 15. A3 – Cross-Site Scripting (XSS) Mitigate using AWS WAF cross-site scripting match conditions • What HTTP request components should you scan? • Body, Query String, Cookie Header, URI • What transformations should you apply? • URL Decode, Decode HTML Entities • What content types are allowed in HTTP request? • Risk of false positives if not HTML content
  • 16. A4 – Broken Access Control Flaws due to lack/improper enforcement of restrictions on what users are allowed to do: • Manipulation of internal application objects • Component/Function-level access control issues • Path traversal attacks, local or remote file inclusion (LFI/RFI) Permission validation flaws are difficult to mitigate by any WAF without user context. https://example.com/download.php?file=..%2F..%2Fetc%2Fpasswd
  • 17. A4 – Broken Access Control • Filter dangerous patterns using string match conditions that might indicate path traversal, file inclusion. • Limit access to administrative modules, or components to a known set of users from known locations using string match conditions and IP address match conditions
  • 18. A5 – Security Misconfigurations Default configurations aren’t always fit for purpose, recommended defaults also change over time Examples • Leaving Apache’s ServerTokens Full in production • Leaving default directory listings enabled in production web servers • Application framework configuration that return stack traces in production • Bad/old insecure default configurations for runtimes, interpreters, etc…
  • 19. A5 – Security Misconfigurations WAF mitigation strategies: • Block or restrict access to paths for administrative consoles, configuration or status pages, installed or enabled by default • Protect against known attack patterns specific to your platform, especially for legacy apps reliant on old platform behavior. Use string match conditions to match relevant patterns. http://example.com/?_SERVER[DOCUMENT_ROOT]=http://bad.com/bad.htm
  • 20. A7 – Insufficient Attack Protection Category proposed & rejected in the 2017 release candidate review, still contains valuable lessons Key coverage: • HTTP request hygiene enforcement • Adaptability to changing attack patterns • Anomaly detection and reaction • Validation of control effectiveness
  • 21. A7 – Insufficient Attack Protection WAF mitigation strategies: • Use size constraint conditions to limit size of HTTP request components to application relevant maximums • Use rate-based rules to detect abnormal request volumes, or changes in such volumes • Use AWS WAF Security Automations for capabilities reacting to abnormal conditions: • Scanner and probe mitigation • Known attacker origin mitigation (reputation lists) • Bot and scraper mitigation
  • 22. A9 – Components w/ Known Vulnerabilities One of the most prevalent attack vectors • Use of vulnerable components due to legacy constraints • Use of vulnerable sub-components due to dependencies • Use of vulnerable components due to lack of flaw tracking/reporting Using WAF to mitigate: • Block HTTP requests to unused functionality of components • Block HTTP requests to server-side components in the public web path
  • 23. Demo

Editor's Notes

  1. Welcome message & intro
  2. Topic coverage Callout to dive deeper by reading the whitepaper & provision the CloudFormation template
  3. … and “you” have heard of this thing called a WAF: Explain the high level capabilities of AWS WAF
  4. … and “you” also keep hearing about all these DDoS attacks… would a WAF help? Explain where a WAF is positioned in the spectrum ranging from large scale DDoS attacks all the way to very targeted attacks…
  5. Describe the concepts and components of an AWS WAF system
  6. Describe the general patterns for deploying rule sets “You” probably should deploy a blacklist – as an operator of a complex e-comm application it would be pretty hard to limit access to a limited set of good access patterns, although that’s certainly possible for specific services
  7. OWASP Top10 is a great framework to guide you through that analysis and security control development process – it calls out the most critical attack vectors and gives guidance how to mitigate them Describe the categories A4, A7, A10 are new ones proposed in the 2017 RC version A7, A10 were rejected recently part of the review process, but not because they do not reflect key attack vectors, so they are still valuable to consider – for example APIs are an emerging target for attacks, and while there are differences in the way systems interact with APIs, as opposed to humans with web interfaces, the vectors themselves aren’t any different then what is reflected in the other categories (an API can be just as vulnerable to SQL injection for example)
  8. Set the story – “you” are a new Security Engineer tasked with developing a solution preventing attacks (as listed)
  9. Which all brings us back to how to approach the process of mitigating security threats: “You” need to protect your web app from common, generic attack vectors (bots out there constantly probing web apps for common vulnerabilities) “You” need to mitigate risks that are unique to your own application: vulnerabilities in your own code, modules and component configurations specific to your own business logic. “You” need to keep up with changes in attack vectors, techniques, scale, etc…
  10. From a practical perspective, while OWASP Top 10 is a useful framework, and AWS WAF can mitigate attacks listed in the framework, a WAF doesn’t fix the underlying flaws in the applications, it just limit the ability to exploit them, and thus the risk to your applications. You should still fix the underlying flaws as you discover them. The effectiveness of a WAF depends on how well you can tell attempts at attack out from legitimate traffic in the HTTP requests apart. …and how well you can keep up as those attack patterns change over time
  11. So what does this all mean for “you” in the context of building an effective WAF protection control in front of your e-comm web app? “You” have to know and understand what public resources and endpoints your application exposes, and for what reasons? Realistically, “you” also have to do the same for all packages, libraries, components your app is using. Know the versions, what features are used and what aren’t… … and then keep all that up to date to keep your exposure footprint low This will help you understand what attack vectors you need to mitigate, and where – next we’ll cover some of the OWASP Top 10 categories in more depth – these are categories where AWS WAF can play a large role in your mitigation strategy