SlideShare a Scribd company logo
1 of 48
Download to read offline
Web Application Security 2014
@ Ibuildings
Boy Baukema
29th January 2014, Vlissingen

Wednesday, February 5, 14
Fear Uncertainty and Doubt (FUD)
Adobe / Apple / Drupal.org / Evernote / LinkedIn
Facebook / NYT / PHP.net
Java 0-days
SSL BREACH
High Profile customers targets:

‣ AbuseHub
‣ MijnDomein
‣ RTLNieuws
Windows XP EOL in April ’14
Wednesday, February 5, 14

2
What to do?

‣ OWASP Top 10 2013
‣ Status (Secure) Software Development Lifecycle
‣ OWASP ASVS 2013
‣ OWASP ASVS Bingo!

3
Wednesday, February 5, 14
Security is a cross-cutting concern
'Thuisrouter directeur ook interessant voor hackers'

4
Wednesday, February 5, 14
OWASP Top 10 (2013) time!

5
Wednesday, February 5, 14
A1-Injection

‣ SQL Injection
‣ HTML Injection
‣ XML Injection
• XML External Entities (XXE)

‣ JavaScript Injection
‣ CSS Injection

6
Wednesday, February 5, 14
A2-Broken Authentication and Session Management

‣ Session Fixation
‣ Missing Session Timeout
‣ Login over HTTP
‣ Unprotected Password Reset

7
Wednesday, February 5, 14
HTTP Strict Transport Security
Strict-Transport-Security:

‣ max-age=60000;
‣ includeSubDomains

8
Wednesday, February 5, 14
A3-Cross-Site Scripting (XSS)

‣ Stored
‣ Reflected
‣ DOM based
See Injection.

9
Wednesday, February 5, 14
Content-Security-Policy
Content-Security-Policy(-Report-Only):

‣ default-src 'none';
‣ script-src https://cdn.mybank.net;
‣ style-src https://cdn.mybank.net;
‣ img-src https://cdn.mybank.net;
‣ connect-src https://api.mybank.com;
‣ frame-src 'self'
‣ report-uri /my_amazing_csp_report_parser;
IE10+, FF4+, Chrome 14+, (iOS)Safari 5.1+, Android 4.4+
http://caniuse.com/contentsecuritypolicy
Wednesday, February 5, 14

10
A4-Insecure Direct Object References

11
Wednesday, February 5, 14
A5-Security Misconfiguration

‣ Out of date PHP version (PHP<5.3, <5.4 after July)
‣ admin/admin
‣ Stack traces
‣ php.ini
• max_execution_time= 0
• session.cookie_httponly = Off
• session.cookie_secure = Off
• allow_url_fopen = On
• See: PhpSecInfo

12
Wednesday, February 5, 14
A6-Sensitive Data Exposure

‣ Unsalted passwords
‣ Unencrypted Credit Cards
‣ Passwords / Session tokens over HTTP

13
Wednesday, February 5, 14
A7-Missing Function Level Access Control

14
Wednesday, February 5, 14
A8-Cross-Site Request Forgery (CSRF)

15
Wednesday, February 5, 14
A9-Using Components with Known Vulnerabilities

16
Wednesday, February 5, 14
A10-Unvalidated Redirects and Forwards

17
Wednesday, February 5, 14
BONUS: Clickjacking

18
Wednesday, February 5, 14
X-Frame-Options
DENY
The page cannot be displayed in a frame, regardless
of the site attempting to do so.
SAMEORIGIN
The page can only be displayed in a frame on the
same origin as the page itself.
ALLOW-FROM uri
The page can only be displayed in a frame on the
specified origin.
IE8+,Chrome 4+, FF 3.6+ Safari 4+
Wednesday, February 5, 14

19
SSDLC

Secure Software Development LifeCycle

20
Wednesday, February 5, 14
Secure Software Development Life Cycle

Source: http://pentestmag.com/security-and-the-software-development-life-cycle/
Wednesday, February 5, 14

21
Requirements / Functional Design
Threat
modeling

Security
Requirements

22
Wednesday, February 5, 14
Architecture & Design / Technical Design

‣ Web App Review

23
Wednesday, February 5, 14
Development / Implementation

‣ Secure Coding Practices
‣ Whitebox Testing

24
Wednesday, February 5, 14
Development: Secure Coding Guidelines

‣ Use only POST for credentials
‣ Notify users when a password reset occurs
‣ Re-authenticate users prior to performing critical
operations

‣ Logout functionality should be available from all pages
protected by authorization

‣ Generate a new session identifier on any reauthentication

‣ Logging controls should support both success and failure
of specified security events

Source: https://www.owasp.org/images/0/08/OWASP_SCP_Quick_Reference_Guide_v2.pdf 25
Wednesday, February 5, 14
Development: (360) Code Reviews

26
Wednesday, February 5, 14
Testing

‣ Greybox testing

27
Wednesday, February 5, 14
Deployment

‣ Greybox security testing by third party

28
Wednesday, February 5, 14
Maintenance / SLA

‣ Black box quarterly
‣ Grey box annually
‣ Monitoring
‣ Security Patches

29
Wednesday, February 5, 14
Training

‣ Basic WebAppSec training
‣ Secure Coding training
‣ QA & Testing training

30
Wednesday, February 5, 14
OWASP ASVS 2013

31
Wednesday, February 5, 14
Security Checklist

32
Wednesday, February 5, 14
Leveling up
Requirements:
164
136
47

33
Wednesday, February 5, 14
Scope

34
Wednesday, February 5, 14
Requirements
V1. Authentication

V8. Communication Security

V2. Session Management

V9. HTTP Security

V3. Access Control

V10. Malicious Controls

V4. Input Validation

V11. Business Logic

V5. Cryptography (at Rest)

V12. Files and Resources

V6. Error Handling and
Logging

V13. Mobile

V7. Data Protection

35
Wednesday, February 5, 14
An example

36
Wednesday, February 5, 14
Annotated ASVS 2013

37
Wednesday, February 5, 14
An AASVS Requirement has...

‣ Short Title
‣ Long Title
‣ Verification PASS
‣ Verification FAIL
‣ Verification Help
‣ [Verification Help for PHP]
‣ [Verification Help for Drupal]
‣ [Verification Help for Symfony 2]
‣ Related Resources
38
Wednesday, February 5, 14
Security Audit Template

‣ Introduction
• Target Of Verification
• Scope
• Confidentiality

‣ Document History, TOC
‣ Conclusions
‣ V1 - V13
‣ Appendix A: Source Code analysis
‣ Appendix B: Third Party libraries
39
Wednesday, February 5, 14
Risk Rating

Source: https://www.owasp.org/index.php/OWASP_Risk_Rating_Methodology
Wednesday, February 5, 14

40
OWASP ASVS 2013 and the SSDLC

41
Wednesday, February 5, 14
FAQ

‣ So we must be fully
ASVS compliant?

‣ ...?

42
Wednesday, February 5, 14
ASVS BINGO!

43
Wednesday, February 5, 14
BINGO!

44
Wednesday, February 5, 14
Prizes

45
Wednesday, February 5, 14
Bootcamp

46
Wednesday, February 5, 14
Verify it

47
Wednesday, February 5, 14
Your Script for today
100 Fork the Template to your personal space.
220 Pop the ‘TODO’ stack of Requirements
221 If no Requirement, GOTO 350
230 Assign the Requirement (mark with your name).
231 Verify Requirement.
232 Report the results.
240 Push Requirement in the ‘DONE’ stack
241 GOTO 220
350 Review the DONE stack.
Wednesday, February 5, 14

48

More Related Content

Similar to WebAppSec @ Ibuildings in 2014

2013 06-27-securecoding-en - jug pch
2013 06-27-securecoding-en - jug pch2013 06-27-securecoding-en - jug pch
2013 06-27-securecoding-en - jug pch
Sébastien GIORIA
 
MS_Learning_Transcript (3).PDF
MS_Learning_Transcript (3).PDFMS_Learning_Transcript (3).PDF
MS_Learning_Transcript (3).PDF
Ockert Duvenage
 
OISC 2019 - The OWASP Top 10 & AppSec Primer
OISC 2019 - The OWASP Top 10 & AppSec PrimerOISC 2019 - The OWASP Top 10 & AppSec Primer
OISC 2019 - The OWASP Top 10 & AppSec Primer
ThreatReel Podcast
 
AppSec & OWASP Top 10 Primer
AppSec & OWASP Top 10 PrimerAppSec & OWASP Top 10 Primer
AppSec & OWASP Top 10 Primer
ThreatReel Podcast
 

Similar to WebAppSec @ Ibuildings in 2014 (20)

CiNPA Security SIG - AppSec Presentation
CiNPA Security SIG - AppSec PresentationCiNPA Security SIG - AppSec Presentation
CiNPA Security SIG - AppSec Presentation
 
OISF - AppSec Presentation
OISF - AppSec PresentationOISF - AppSec Presentation
OISF - AppSec Presentation
 
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
Security Code Review for .NET - Sherif Koussa (OWASP Ottawa)
 
Autos, Wi-Fi, and IoT
Autos, Wi-Fi, and IoTAutos, Wi-Fi, and IoT
Autos, Wi-Fi, and IoT
 
Secure Coding for Java - An Introduction
Secure Coding for Java - An IntroductionSecure Coding for Java - An Introduction
Secure Coding for Java - An Introduction
 
Secure Coding for Java - An introduction
Secure Coding for Java - An introductionSecure Coding for Java - An introduction
Secure Coding for Java - An introduction
 
2013 06-27-securecoding-en - jug pch
2013 06-27-securecoding-en - jug pch2013 06-27-securecoding-en - jug pch
2013 06-27-securecoding-en - jug pch
 
MS_Learning_Transcript (3).PDF
MS_Learning_Transcript (3).PDFMS_Learning_Transcript (3).PDF
MS_Learning_Transcript (3).PDF
 
OISC 2019 - The OWASP Top 10 & AppSec Primer
OISC 2019 - The OWASP Top 10 & AppSec PrimerOISC 2019 - The OWASP Top 10 & AppSec Primer
OISC 2019 - The OWASP Top 10 & AppSec Primer
 
4-identifying-problems.pdf
4-identifying-problems.pdf4-identifying-problems.pdf
4-identifying-problems.pdf
 
OWASP Testing Guide 4.0
OWASP Testing Guide 4.0OWASP Testing Guide 4.0
OWASP Testing Guide 4.0
 
Owasp testing guide_v4
Owasp testing guide_v4Owasp testing guide_v4
Owasp testing guide_v4
 
Owasp testing guide_v4
Owasp testing guide_v4Owasp testing guide_v4
Owasp testing guide_v4
 
Sharing Best Practices and Recommendations from the Integration Battlefield
Sharing Best Practices and Recommendations from the Integration BattlefieldSharing Best Practices and Recommendations from the Integration Battlefield
Sharing Best Practices and Recommendations from the Integration Battlefield
 
SecDevOps for API Security
SecDevOps for API SecuritySecDevOps for API Security
SecDevOps for API Security
 
Brisk WebApp penetration tester
Brisk WebApp penetration testerBrisk WebApp penetration tester
Brisk WebApp penetration tester
 
Web Security... Level Up
Web Security... Level UpWeb Security... Level Up
Web Security... Level Up
 
AppSec & OWASP Top 10 Primer
AppSec & OWASP Top 10 PrimerAppSec & OWASP Top 10 Primer
AppSec & OWASP Top 10 Primer
 
TCUG - March 2014
TCUG - March 2014TCUG - March 2014
TCUG - March 2014
 
DBA Advanced - Hiram Fleitas - SQL ML / AI
DBA Advanced - Hiram Fleitas - SQL ML / AIDBA Advanced - Hiram Fleitas - SQL ML / AI
DBA Advanced - Hiram Fleitas - SQL ML / AI
 

More from Boy Baukema

Security as a part of quality assurance
Security as a part of quality assuranceSecurity as a part of quality assurance
Security as a part of quality assurance
Boy Baukema
 
Recursive descent parsing
Recursive descent parsingRecursive descent parsing
Recursive descent parsing
Boy Baukema
 
Javascript: 8 Reasons Every PHP Developer Should Love It
Javascript: 8 Reasons Every PHP Developer Should Love ItJavascript: 8 Reasons Every PHP Developer Should Love It
Javascript: 8 Reasons Every PHP Developer Should Love It
Boy Baukema
 

More from Boy Baukema (9)

Security horrors
Security horrorsSecurity horrors
Security horrors
 
Tampering with JavaScript
Tampering with JavaScriptTampering with JavaScript
Tampering with JavaScript
 
Code by the sea: Web Application Security
Code by the sea: Web Application SecurityCode by the sea: Web Application Security
Code by the sea: Web Application Security
 
Security as a part of quality assurance
Security as a part of quality assuranceSecurity as a part of quality assurance
Security as a part of quality assurance
 
Recursive descent parsing
Recursive descent parsingRecursive descent parsing
Recursive descent parsing
 
Dpc14 security as part of Quality Assurance
Dpc14   security as part of Quality AssuranceDpc14   security as part of Quality Assurance
Dpc14 security as part of Quality Assurance
 
SURFconext and Mobile
SURFconext and MobileSURFconext and Mobile
SURFconext and Mobile
 
Let's build a parser!
Let's build a parser!Let's build a parser!
Let's build a parser!
 
Javascript: 8 Reasons Every PHP Developer Should Love It
Javascript: 8 Reasons Every PHP Developer Should Love ItJavascript: 8 Reasons Every PHP Developer Should Love It
Javascript: 8 Reasons Every PHP Developer Should Love It
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 

WebAppSec @ Ibuildings in 2014