SlideShare a Scribd company logo
A Boy,
A Sugar Glider
and the TSA
Brian Clark
@_clarkio
Credit: https://www.flickr.com/photos/pitmanra/
2018 Orlando Devs - Application Security
2018 Orlando Devs - Application Security
Credit: https://www.flickr.com/photos/lostintexas/
Credit: https://www.flickr.com/photos/muar_chee/
Browser
http://insecureheroes.com
Server
http://insecureheroes.com
Browser
http://insecureheroes.com
Server
http://insecureheroes.com
Browser
http://insecureheroes.com
Server
http://insecureheroes.com
Browser
http://insecureheroes.comCookies
Server
http://insecureheroes.com
Browser
http://insecureheroes.comCookies
Server
http://insecureheroes.com
Hero: Luke
Browser
http://insecureheroes.comCookies
Server
http://insecureheroes.com
http://clickbaity.co
Browser
http://insecureheroes.comCookies
Server
http://insecureheroes.com
http://attacker.com
Attack
insecureheroes.com
Hero: Darth
An attack that executes a request on behalf of another
authenticated user that was not intending to perform that action
being requested
Cross-site Request Forgery
Synchronizer
Token Pattern
Random token
Unique to user and session
Part of the request header
Validated server-side
https://www.npmjs.com/package/csurf
2018 Orlando Devs - Application Security
https://angular.io/guide/http#security-xsrf-protection
https://caniuse.com/#search=samesite
2018 Orlando Devs - Application Security
2018 Orlando Devs - Application Security
2018 Orlando Devs - Application Security
2018 Orlando Devs - Application Security
An attack that injects malicious code into a trusted web site such
that it may be executed unintendedly by other users
Cross-site Scripting (XSS)
Prevention
Content Security PolicyInput Handling
Control what resources the
browser is allowed to load
Ensure data is aligned with
the expectations for its
intended use
Input Handling
Input Handling
Input Handling
EscapingSanitizationValidation
Sanitization EscapingValidation
Ensure the data is legit
Invalid EmailResult:
Validation EscapingSanitization
Clean the bad data
BCResult:
SanitizationValidation Escaping
Encode the bad data
B<script>alert(1);</script>CResult:
Do not trust user input
Where should we apply
input handlers?
Where should we apply
input handlers?
Client? Server?
Browser
http://insecureheroes.com
Server
http://insecureheroes.com
Browser
http://insecureheroes.com
Server
http://insecureheroes.com
Security
Boundary
Browser
http://insecureheroes.com
Server
http://insecureheroes.com
Security
Boundary
Untrusted
Browser
http://insecureheroes.com
Server
http://insecureheroes.com
Security
Boundary
Trusted
Both
?
2018 Orlando Devs - Application Security
https://angular.io/guide/security
https://angular.io/guide/security
?
https://www.npmjs.com/package/express-validator
https://www.npmjs.com/package/xss-filters
Summary
Access Control
Malicious Input
Sugar Gliders
Faking Requests
References
https://owasp.org
https://github.com/Azure-Samples/angular-cosmosdb
(branch:	insecure-heroes)
https://angular.io/guide/security
https://www.npmjs.com/package/csurf
https://angular.io/guide/http#security-xsrf-protection
https://caniuse.com/#search=samesite
Brian	Clark
@_clarkio
Thank You!

More Related Content

PDF
The iPad Learning Studio v1
PDF
Best of the web - accessibility & ell - Fall 2013
PPTX
Researching & evaluating online information
PDF
An Incomplete Guide to Open Graph metatags for Facebook
PPT
Web2tools 100415155001-phpapp01 (2)
PPTX
Easy Web 2.0 Tools for Teachers
PPTX
The Connection Between PTSD and Suicide
PPT
SXSW black hat seo presentation preview
The iPad Learning Studio v1
Best of the web - accessibility & ell - Fall 2013
Researching & evaluating online information
An Incomplete Guide to Open Graph metatags for Facebook
Web2tools 100415155001-phpapp01 (2)
Easy Web 2.0 Tools for Teachers
The Connection Between PTSD and Suicide
SXSW black hat seo presentation preview

More from Brian Clark (6)

PPTX
2018 Orlando Code Camp Application Security
PPTX
Securing Angular and Node.js Apps in Azure
PPTX
Debugging in Node.js and Azure
PPTX
Fast Focus: Azure Functions
PPTX
Malicious Input: Angular Has Our Back
PPTX
Forgotten Security
2018 Orlando Code Camp Application Security
Securing Angular and Node.js Apps in Azure
Debugging in Node.js and Azure
Fast Focus: Azure Functions
Malicious Input: Angular Has Our Back
Forgotten Security
Ad

Recently uploaded (20)

PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
WOOl fibre morphology and structure.pdf for textiles
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PDF
2021 HotChips TSMC Packaging Technologies for Chiplets and 3D_0819 publish_pu...
PPT
What is a Computer? Input Devices /output devices
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PPTX
TLE Review Electricity (Electricity).pptx
PPTX
cloud_computing_Infrastucture_as_cloud_p
PDF
Hybrid model detection and classification of lung cancer
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
Getting Started with Data Integration: FME Form 101
PPT
Module 1.ppt Iot fundamentals and Architecture
PPTX
1. Introduction to Computer Programming.pptx
PPTX
Tartificialntelligence_presentation.pptx
PDF
STKI Israel Market Study 2025 version august
Final SEM Unit 1 for mit wpu at pune .pptx
Zenith AI: Advanced Artificial Intelligence
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
WOOl fibre morphology and structure.pdf for textiles
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Hindi spoken digit analysis for native and non-native speakers
NewMind AI Weekly Chronicles – August ’25 Week III
2021 HotChips TSMC Packaging Technologies for Chiplets and 3D_0819 publish_pu...
What is a Computer? Input Devices /output devices
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
TLE Review Electricity (Electricity).pptx
cloud_computing_Infrastucture_as_cloud_p
Hybrid model detection and classification of lung cancer
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Getting Started with Data Integration: FME Form 101
Module 1.ppt Iot fundamentals and Architecture
1. Introduction to Computer Programming.pptx
Tartificialntelligence_presentation.pptx
STKI Israel Market Study 2025 version august
Ad

2018 Orlando Devs - Application Security