Common Web Application Vulnerabilities Know Your Enemy.

Slides:



Advertisements
Similar presentations
OWASP Web Vulnerabilities and Auditing
Advertisements

Creating Stronger, Safer, Web Facing Code JPL IT Security Mary Rivera June 17, 2011.
1 Chapter 8 Fundamentals of System Security. 2 Objectives In this chapter, you will: Understand the trade-offs among security, performance, and ease of.
Current Security Threats WMO CBS ET-CTS Toulouse, France May 2008 Allan Darling, NOAA’s National Weather Service WMO CBS ET-CTS Toulouse, France.
WebGoat & WebScarab “What is computer security for $1000 Alex?”
Web Defacement Anh Nguyen May 6 th, Organization Introduction How Hackers Deface Web Pages Solutions to Web Defacement Conclusions 2.
Security Issues and Challenges in Cloud Computing
It’s always better live. MSDN Events Security Best Practices Part 2 of 2 Reducing Vulnerabilities using Visual Studio 2008.
Information Networking Security and Assurance Lab National Chung Cheng University The Ten Most Critical Web Application Security Vulnerabilities Ryan J.W.
It’s always better live. MSDN Events Securing Web Applications Part 1 of 2 Understanding Threats and Attacks.
Information Networking Security and Assurance Lab National Chung Cheng University 1 Top Vulnerabilities in Web Applications (I) Unvalidated Input:  Information.
Introduction to Web Application Security
Web server security Dr Jim Briggs WEBP security1.
Lesson 9-Securing a Network. Overview Identifying threats to the network security. Planning a secure network.
Presenter Deddie Tjahjono.  Introduction  Website Application Layer  Why Web Application Security  Web Apps Security Scanner  About  Feature  How.
Web Application Vulnerabilities Checklist. EC-Council Parameter Checklist  URL request  URL encoding  Query string  Header  Cookie  Form field 
Website Hardening HUIT IT Security | Sep
OWASP Mobile Top 10 Why They Matter and What We Can Do
Security and Risk Management. Who Am I Matthew Strahan from Content Security Principal Security Consultant I look young, but I’ve been doing this for.
Evolving Threats. Application Security - Understanding the Problem DesktopTransportNetworkWeb Applications Antivirus Protection Encryption (SSL) Firewalls.
OWASP Zed Attack Proxy Project Lead
Cosc 4765 Server side Web security. Web security issues From Cenzic Vulnerability report
Security.NET Chapter 1. How Do Attacks Occur? Stages of attack Examples of attacker actions 1. FootprintRuns a port scan on the firewall 2. PenetrationExploits.
WEB SECURITY WEEK 3 Computer Security Group University of Texas at Dallas.
1-Vulnerabilities 2-Hackers 3-Categories of attacks 4-What a malicious hacker do? 5-Security mechanisms 6-HTTP Web Servers 7-Web applications attacks.
November 13, 2008 Ohio Information Security Forum Attack Surface of Web Applications James Walden Northern Kentucky University
IST 210 Web Application Security. IST 210 Introduction Security is a process of authenticating users and controlling what a user can see or do.
Copyright 2007 © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Software Security Testing Vinay Srinivasan cell:
Denial of Service (DoS) DoS attacks are aggressive attacks on an individual computer or groups of computers with the intent to deny services to intended.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Data Security Assessment and Prevention AD660 – Databases, Security, and Web Technologies Marcus Goncalves Spring 2013.
October 3, 2008IMI Security Symposium Application Security through a Hacker’s Eyes James Walden Northern Kentucky University
Web Applications Testing By Jamie Rougvie Supported by.
Building Secure Web Applications With ASP.Net MVC.
By Sean Rose and Erik Hazzard.  SQL Injection is a technique that exploits security weaknesses of the database layer of an application in order to gain.
PwC New Technologies New Risks. PricewaterhouseCoopers Technology and Security Evolution Mainframe Technology –Single host –Limited Trusted users Security.
Lesson 19-E-Commerce Security Needs. Overview Understand e-commerce services. Understand the importance of availability. Implement client-side security.
CS526Topic 12: Web Security (2)1 Information Security CS 526 Topic 9 Web Security Part 2.
Web Security Lesson Summary ●Overview of Web and security vulnerabilities ●Cross Site Scripting ●Cross Site Request Forgery ●SQL Injection.
Database Security Cmpe 226 Fall 2015 By Akanksha Jain Jerry Mengyuan Zheng.
Module 12: Responding to Security Incidents. Overview Introduction to Auditing and Incident Response Designing an Audit Policy Designing an Incident Response.
Computer Security By Duncan Hall.
Web Application (In)security Note: Unless noted differently, all scanned figures were from the textbook, Stuttard & Pinto, 2011.
Web Applications on the battlefield Alain Abou Tass.
Unit 2 Personal Cyber Security and Social Engineering Part 2.
The Payment Card Industry Data Security Standard (PCI DSS) is a proprietary information security standard for organizations that handle branded credit.
Logging and Monitoring. Motivation Attacks are common (see David's talk) – Sophisticated – hard to reveal, (still) quite limited in our environment –
James F. Fox MENA Cyber Security Practice Lead Presenters Cyber Security in a Mobile and “Always-on” World Booz | Allen | Hamilton.
Lecture 19 Page 1 CS 236 Online 6. Application Software Security Why it’s important: –Security flaws in applications are increasingly the attacker’s entry.
Building Secure ColdFusion Applications
Web Application Vulnerabilities, Detection Mechanisms, and Defenses
Securing Your Web Application in Azure with a WAF
Chapter 7: Identifying Advanced Attacks
TOPIC: Web Security (Part-4)
World Wide Web policy.
Secure Software Confidentiality Integrity Data Security Authentication
Penetration Testing following OWASP
E-commerce Application Security
Unit 1.6 Systems security Lesson 2
Brute force attacks, DDOS, Botnet, Exploit, SQL injection
AppExchange Security Certification
Lecture 2 - SQL Injection
WWW安全 國立暨南國際大學 資訊管理學系 陳彥錚.
Designing IIS Security (IIS – Internet Information Service)
Test 3 review FTP & Cybersecurity
6. Application Software Security
Presentation transcript:

Common Web Application Vulnerabilities Know Your Enemy

Speakers Jason Chrin Infrastructure Security Jonathan Bailer Code Vulnerability Lawrence Wolfe The Human Factor

The State of the Internet January – Target: 70 million contact records stolen – Michaels: 2.6 million credit cards stolen May – eBay: 223 million customer accounts stolen June – Evernote: DDoS September – Home Depot: 56 million credit cards stolen – Google: 5 million accounts compromised – Apple: iCloud hacking

Motivations Behind Attacks Soucre: Hackmageddon.com

SERVER & INFRASTRUCTURE SECURITY Know Your Enemy

Attack Surface The sum of all paths for data/commands into and out of the application The code that protects these paths All valuable data used in the application, including secrets and keys, intellectual property, critical business data, personal data and Personally Identifiable Information The code that protects this data

Limiting your Attack Surface Warner Bros. Pictures 2006

Limiting your Attack Surface Build and maintain a secure network Data Security Policies Encryption and secure transmission

Attack Type 1: Port Scanning Attacker attempts to connect to various ports on your networks Tries to determine what is open on the network and can be used as an entry vector

Firewall – external access The front door to your application Only open access that is needed Only allow ingress from known locations

Firewall – internal access DMZ Network Segmentation Application firewalls

Attack Type 2: Eavesdropping Source: owasp.org

Data Security Types of sensitive data 1.Regulated Financial Information Healthcare Information 2.Unregulated Proprietary Information Confidential Information

How to Handle Your Data Securely store data – use encryption Only store what data is needed Limit Access to data Encrypted transmission - SSL

Attack Type 3: Password Attacks Brute force attacks Info gained from Eavesdropping Default credential attempts

Secure Access Remote access over secure channels – VPN – SSL connections Authentication – Unique credentials for each user – Strong password policy – Multi Factor Authentication

What is MFA? Possession Factor – something user has Knowledge Factor – something user knows Inherence Factor – something the user is

Logging Access Logging for system connections Application level Logging Log monitoring software

Attack type 4: Application Layer Attack Targets application servers looking for OS or application faults Bypass normal access controls Gains Elevated privileges

Patch Management OS Updates Application Updates AV / Malware Definitions

Active Scanning Anti-Virus – Protects against malicious code Malware – Annoyance programs that may offer back door to attacks Intrusion Detection – Automated monitoring for suspicious activity Penetration Testing

Attack Type 5: Man in the Middle Source: 4kcc.com

Preventing Man in the Middle Use strong encryption for communication Segregate production networks

Be Diligent This is just a start New exploits found daily Review your logs and procedures External auditing

CODE VULNERABILITY Know Your Enemy

What does code vulnerability mean? Flaw or oversight in an application allowing unauthorized or unintended use

Types of code vulnerabilities Injection Cross-site scripting (XSS) Cross-site request forgery (CSRF) Information leakage

Injection - What is it? Processing of invalid data changing the course of execution – Arbitrary modification of data – Installation of malware – Privilege escalation – HTML/Script injection

Injection – How does it work?

Injection - Example

Injection – Types SQL Injection HTML Script Injection Dynamic Evaluation Vulnerability Object injection (serialization) Remote File Injection Shell Injection

Injection – Prevention Whitelist input

Injection – Prevention Whitelist input Sanitize input

Injection – Prevention Whitelist input Sanitize input Parameterization

Cross-site Scripting – What is it? Injecting client-side script into Web pages viewed by other users

Cross-site Scripting – Example

Cross-site Scripting – Types Non-Persistent – Query string, post data, etc. (e.g. search results) Persistent – Database or file changes (e.g. comments) DOM-based – Runs entirely in the client

Cross-site Scripting - Prevention Sanitize user input and output that is based on user created content Top-down testing and analysis of client side scripts

Cross-site Request Forgery – What is it? Causing a user’s browser to perform an unwanted action on a trusted site for which the user is authenticated. A form of the confused deputy problem.

Cross-site Request Forgery – Example

Cross-site Request Forgery – Prevention Synchronizer token pattern Cookie-to-header Token

Information Leakage – What is it? Application unintentionally revealing sensitive information – System/environment configuration – User information – etc.

Information Leakage – What is it? Comments visible in response data Overly detailed error information Difference in behavior

Information Leakage – Example

Information Leakage – Example

Information Leakage - Prevention Parse errors before display Remove debugging information from production Always be aware of what your application’s behavior reveals

THE HUMAN FACTOR Know Your Enemy

The Human Factor: Code Review Source: SmartBear

The Human Factor: Code Review Source: SmartBear

The Human Factor: Code Review What if?

The Human Factor: Code Review What if… …one of those bugs is a security vulnerability that exposes customer data?

The Human Factor: Code Review What if… …one of those bugs is a security vulnerability that exposes customer data? Labor + Damages = $$$ Millions? Billions?

The Human Factor: Code Review Self audit through annotation & peer review – Less defects, better performing code – Reduces chance of vulnerable code making it to production – Go from as strong as your weakest link to as good as the best on your team – Reduce technical debt – Continuous education Tools – SmartBear Collaborator, Atlassian Crucible

The Human Factor: Source Control

Source Control – Beyond version management and feature development – Enables code collaboration and vulnerability prevention – Merge workflow, feature/module branches – Git - BitBucket, Github + Console, SourceTree, VS Automated Builds – Continuous Integration – Code Standards, Static Analysis – Reduces potential for introducing insecure configurations – Empowers team and individual accountability – Tools Jenkins, Team Foundation Server, Travis CI (cloud)

The Human Factor: Sensitive Data

Obfuscated, Masked and Mock Data – Limit developer access to production data when possible ex. employee, customer and financial data – Development data sources should not contain real data – Use mock data for test driven development – Tools SQL: redgate SQL Data Generator ruby: Faker::HipsterIpsum

The Human Factor: Modular Dev

For large projects and teams, isolate risks with modular development Architect for modular development. ex. SOA, libraries, packages, gems Developer only needs access to build specific components

The Human Factor: Social Hacking

Phishing – Common behaviors Spear Phishing – Specific target Impersonation - “Service Desk”

Thank You! Q&A