© 2009 Stephen Wolff Application Security 1 Spring, 2009 OWASP Top Ten  Ten most critical WebApp security flaws. The top 2 are: 1. XSS – Cross Site Scripting.

Slides:



Advertisements
Similar presentations
Preventing Web Application Injections with Complementary Character Coding Raymond Mui Phyllis Frankl Polytechnic Institute of NYU Presented at ESORICS.
Advertisements

HI-TEC 2011 SQL Injection. Client’s Browser HTTP or HTTPS Web Server Apache or IIS HTML Forms CGI Scripts Database SQL Server or Oracle or MySQL ODBC.
PHP Hypertext Preprocessor Information Systems 337 Prof. Harry Plantinga.
Creating Stronger, Safer, Web Facing Code JPL IT Security Mary Rivera June 17, 2011.
The XSS Files Find, Exploit, and Eliminate. Josh Little Security Engineer at global vertical market business intelligence company. 9 years in application.
3/5/2009Computer systems1 Analyzing System Using Data Dictionaries Computer System: 1. Data Dictionary 2. Data Dictionary Categories 3. Creating Data Dictionary.
By Brian Vees.  SQL Injection  Username Enumeration  Cross Site Scripting (XSS)  Remote Code Execution  String Formatting Vulnerabilities.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 14 Web Database Programming Using PHP.
PHP (2) – Functions, Arrays, Databases, and sessions.
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.
Web Application Security An Introduction. OWASP Top Ten Exploits *Unvalidated Input Broken Access Control Broken Authentication and Session Management.
Chapter 7 Managing Data Sources. ASP.NET 2.0, Third Edition2.
Injection Attacks by Example SQL Injection and XSS Adam Forsythe Thomas Hollingsworth.
Transaction Processing Systems, & Management Information Systems.
Check That Input Preventing SQL Injection Attacks By Andrew Morton For CS 410.
Introduction to Application Penetration Testing
Workshop 3 Web Application Security Li Weichao March
MIS Week 11 Site:
CSCI 6962: Server-side Design and Programming Secure Web Programming.
Lecture 14 – Web Security SFDV3011 – Advanced Web Development 1.
1 PHP and MySQL. 2 Topics  Querying Data with PHP  User-Driven Querying  Writing Data with PHP and MySQL PHP and MySQL.
Introduction to SQL Steve Perry
15/10/20151 PHP & MySQL 'Slide materials are based on W3Schools PHP tutorial, 'PHP website 'MySQL website.
PHP MySQL Introduction. MySQL is the most popular open-source database system. What is MySQL? MySQL is a database. The data in MySQL is stored in database.
Relational Databases (MS Access)
Introduction To Web Application Security in PHP. Security is Big And Often Difficult PHP doesn’t make it any easier.
OWASP Top Ten #1 Unvalidated Input. Agenda What is the OWASP Top 10? Where can I find it? What is Unvalidated Input? What environments are effected? How.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
CHAPTER 3 DATABASES AND DATA WAREHOUSES. 2 OPENING CASE STUDY Chrysler Spins a Competitive Advantage with Supply Chain Management Software Chapter 2 –
6 1 Lecture 8: Introduction to Structured Query Language (SQL) J. S. Chou, P.E., Ph.D.
Web Applications Testing By Jamie Rougvie Supported by.
SQL Basic. What is SQL? SQL (pronounced "ess-que-el") stands for Structured Query Language. SQL is used to communicate with a database.
Web Application Vulnerabilities ECE 4112 Internetwork Security, Spring 2005 Chris Kelly Chris Lewis April 28, 2005 ECE 4112 Internetwork Security, Spring.
Security Considerations Steve Perry
WEB SECURITY WEEK 2 Computer Security Group University of Texas at Dallas.
Web Security Lesson Summary ●Overview of Web and security vulnerabilities ●Cross Site Scripting ●Cross Site Request Forgery ●SQL Injection.
Mr. Justin “JET” Turner CSCI 3000 – Fall 2015 CRN Section A – TR 9:30-10:45 CRN – Section B – TR 5:30-6:45.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley STARTING OUT WITH Python Python First Edition by Tony Gaddis Chapter 2 Input,
Module: Software Engineering of Web Applications Chapter 3 (Cont.): user-input-validation testing of web applications 1.
What Is XSS ? ! Cross-site scripting (XSS) is a type of computer security vulnerability typically found in Web applications. XSS enables attackers to.
INFO 344 Web Tools And Development CK Wang University of Washington Spring 2014.
Example – SQL Injection MySQL & PHP code: // The next instruction prompts the user is to supply an ID $personID = getIDstringFromUser(); $sqlQuery = "SELECT.
Defending Applications Against Command Insertion Attacks Penn State Web Conference 2003 Arthur C. Jones June 18, 2003.
Error-based SQL Injection
SECURE DEVELOPMENT. SEI CERT TOP 10 SECURE CODING PRACTICES Validate input Use strict compiler settings and resolve warnings Architect and design for.
Web Security (cont.) 1. Referral issues r HTTP referer (originally referrer) – HTTP header that designates calling resource  Page on which a link is.
Web Database Programming Using PHP
Group 18: Chris Hood Brett Poche
Module: Software Engineering of Web Applications
Database Access with SQL
Web Application Vulnerabilities, Detection Mechanisms, and Defenses
Connect to SQL Server and run select statements
World Wide Web policy.
Example – SQL Injection
Web Database Programming Using PHP
Intro to Ethical Hacking
Databases and Information Management
ISC440: Web Programming 2 Server-side Scripting PHP 3
Web Systems Development (CSC-215)
PHP: Security issues FdSc Module 109 Server side scripting and
Web DB Programming: PHP
Databases and Information Management
Data Management Innovations 2017 High level overview of DB
Intro to Ethical Hacking
Protecting Against Common Web Application Vulnerabilities
SQL Injection Attack.
Presentation transcript:

© 2009 Stephen Wolff Application Security 1 Spring, 2009 OWASP Top Ten  Ten most critical WebApp security flaws. The top 2 are: 1. XSS – Cross Site Scripting  Unvalidated data sent to a browser 2. Injection Flaws  User supplied data (unvalidated) sent to SQL  This is the consensus of security experts globally  Some of the best are right here in Central Texas! 

© 2009 Stephen Wolff Application Security 2 Spring, 2009 SQL Basic Terminology  SQL is a Relational Database Management System - RDBMS  Table - Rows that have the same attributes  Row - collection of related information  Column - attributes of an object, e.g., an Employee  Primary Key - unique for each row NameEmp#TitleMgrPay Dick101SalesSpot$50 Jane102ITSpot$60 Spot103ExecBoD$100 Employee Table

© 2009 Stephen Wolff Application Security 3 Spring, 2009 SQL Basic Query Format  Select – From – Where  SELECT * FROM employee WHERE (emp# = 102)  This will return which can be used or printed.  SELECT * FROM employee WHERE (TRUE) will return all rows. Jane102ITSpot$60 tablename condition

© 2009 Stephen Wolff Application Security 4 Spring, 2009 Other SQL Syntax  -- is the comment sequence used for documenting code. It causes the SQL interpreter to ignore all else that follows.  ; ends one SQL statement and starts another.  ‘ in matched sets is used to enclose a character string.

© 2009 Stephen Wolff Application Security 5 Spring, 2009 SQL Injection Tutorial (YouTube)  nel_page nel_page  Note: there are plenty of SQL Injection automated tools available, and of course, some are better than others.

© 2009 Stephen Wolff Application Security 6 Spring, 2009 Simple XSS Tutorial (YouTube)  Stored and Reflected XSS  Similar, but reflected doesn’t require login credentials!  Failure on both due to no input or output sanitization. Stored Reflected

© 2009 Stephen Wolff Application Security 7 Spring, 2009 Final Thoughts…  Why consider Application Security?  It’s the most current category of vulnerabilities and attacks, it is widespread, and it is devastating.  Barriers to entry (code skilz) are high but coming down, i.e., more tools like MetaSploit  On Whitehat side: more teaching of secure coding practices, groups like OWASP More tools like MetaSploit, WebGoat  Significant local expertise! Rsnake, Matt Tesauro, The Denim Group, others in OWASP