Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.

Slides:



Advertisements
Similar presentations
OWASP Secure Coding Practices Quick Reference Guide
Advertisements

1 Chapter 13 Securing an Access Application. 13 Chapter Objectives Learn about the elements of security Explore application-level security Use user-level.
Computer Software 3 Section A Software Basics CHAPTER PARSONS/OJA
Secure Systems Research Group - FAU Process Standards (and Process Improvement)
PKE PP Mike Henry Jean Petty Entrust CygnaCom Santosh Chokhani.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation.
Software Quality Assurance Plan
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Oracle9i Database Administrator: Implementation and Administration 1 Chapter 2 Overview of Database Administrator (DBA) Tools.
Understand Database Security Concepts
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation.
Unauthorized Reproduction Prohibited SkyPoint Alarm Integration Add-On Using OnGuard Alarms to create events in SkyPoint Also called ‘SkyPoint V0’ CR4400.
Information Security Policies and Standards
The OWASP Foundation Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment, Enhanced Chapter 10: Server Administration.
Software Requirement Specification(SRS)
Data Structures and Programming.  John Edgar2.
Web Application Vulnerabilities Checklist. EC-Council Parameter Checklist  URL request  URL encoding  Query string  Header  Cookie  Form field 
The Re-engineering and Reuse of Software
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 3 Administration of Users.
Website Hardening HUIT IT Security | Sep
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
Exchange Network Node Help Desk NOLA Conference Feb 9-10, 2004.
Database Security and Auditing: Protecting Data Integrity and Accessibility Chapter 3 Administration of Users.
ABSTRACT Zirous Inc. is a growing company and they need a new way to track who their employees working on various different projects. To solve the issue.
Module 14: Configuring Print Resources and Printing Pools.
A Security Review Process for Existing Software Applications
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the Creative Commons Attribution-ShareAlike.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation.
1 Chapter Overview Configuring Account Policies Configuring User Rights Configuring Security Options Configuring Internet Options.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
1 15 quality goals for requirements  Justified  Correct  Complete  Consistent  Unambiguous  Feasible  Abstract  Traceable  Delimited  Interfaced.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
OWASP ESAPI SwingSet An introduction by Fabio Cerullo.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
McGraw-Hill/Irwin The Interactive Computing Series © 2002 The McGraw-Hill Companies, Inc. All rights reserved. Microsoft Access 2002 Using Access Tools.
3 Copyright © 2004, Oracle. All rights reserved. Controlling Access to the Oracle Listener.
Security Planning and Administrative Delegation Lesson 6.
Introduction to c++ programming - object oriented programming concepts - Structured Vs OOP. Classes and objects - class definition - Objects - class scope.
1 Chapter Overview Planning to Install SQL Server 2000 Deciding SQL Server 2000 Setup Configuration Options Running the SQL Server 2000 Setup Program Using.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Visual Basic for Application - Microsoft Access 2003 Finishing the application.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
Copyright © The OWASP Foundation This work is available under the Creative Commons SA 2.5 license The OWASP Foundation OWASP Denver February 2012.
11 SECURITY PLANNING AND ADMINISTRATIVE DELEGATION Chapter 6.
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.
1 BCS 4 th Semester. Step 1: Download SQL Server 2005 Express Edition Version Feature SQL Server 2005 Express Edition SP1 SQL Server 2005 Express Edition.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
19 Copyright © 2008, Oracle. All rights reserved. Security.
SECURITY PLANNING AND ADMINISTRATIVE DELEGATION
^ About the.
A Security Review Process for Existing Software Applications
Introduction of Week 3 Assignment Discussion
OWASP Secure Coding Practices Quick Reference Guide
Lesson 16-Windows NT Security Issues
SharePoint Online Authentication Patterns
OWASP Application Security Verification Standard
OWASP Application Security Verification Standard
Presentation transcript:

Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP Foundation OWASP OWASP Secure Coding Practices Quick Reference Guide Project leader Keith Turpin October, 2010

OWASP 2 About Me  Secure Coding Practices Quick Reference Guide project leader  Application security assessments team leader at The Boeing Company  United States delegate to the IEC/ISO SC27 subcommittee on cyber security  Member of the Software Assurance Working Group

OWASP 3 Some Background  Goal: Build a secure coding kick-start tool, to help development teams quickly understand secure coding  Originally developed for use inside The Boeing Company  July 2010, Boeing assigned copyright to OWASP  August 2010, project goes live on owasp.org

OWASP 4 Guide Overview  Technology agnostic coding practices  What to do, not how to do it  Compact, but comprehensive checklist format  Focuses on secure coding requirements, rather then on vulnerabilities and exploits  Includes a cross referenced glossary to get developers and security folks talking the same language

OWASP 5 Sections of the Guide  The bulk of the document is in the checklists, but it contains all of the following: Table of contents Introduction Software Security Principles Overview Secure Coding Practices Checklist Links to useful resources Glossary of important terminology

OWASP 6 Checklist Sections  Input Validation  Output Encoding  Authentication and Password Management  Session Management  Access Control  Cryptographic Practices  Error Handling and Logging  Data Protection  Communication Security  System Configuration  Database Security  File Management  Memory Management  General Coding Practices - Only 9 pages long

OWASP 7 Checklist Practices  Short and to the point  Straight forward "do this" or "don't do that"  Does not attempt to rank the practices  Some practices are conditional recommendations that depend on the criticality of the system or information  The security implications of not following any of the practices that apply to the application, should be clearly understood

OWASP 8 Extract - Database Security  Use strongly typed parameterized queries  Utilize input validation and output encoding and be sure to address meta characters. If these fail, do not run the database command  Ensure that variables are strongly typed  The application should use the lowest possible level of privilege when accessing the database  Use secure credentials for database access  Do not provide connection strings or credentials directly to the client. If this is unavoidable, encrypted them  Use stored procedures to abstract data access  Close the connection as soon as possible  Remove or change all default database administrative passwords. Utilize strong passwords/phrases or implement multi-factor authentication  Turn off all unnecessary database functionality (e.g., unnecessary stored procedures or services, utility packages, install only the minimum set of features and options required (surface area reduction))

OWASP 9 Using the guide  Scenario #1: Developing Guidance Documents Coding Practices General Security Policies Application Security Procedures Application Security Coding Standards Guiding PrinciplesWhat to doHow to do it

OWASP 10 Using the guide continued  Scenario #2: Support Secure Development Lifecycle Application Security Requirements Secure Development Processes Standardized Libraries Standard Guidance for non-Library Solutions Review Solutions Test Solution Implementation What to doHow you should do itWhat you didDid it work Coding Practices

OWASP 11 RFP Best Software Ever Using the guide continued  Scenario #3: Contracted Development  Identify security requirements to be added to outsourced software development projects.  Include them in the RFP and Contract Contract Best Software Ever I need cool Software We can build anything How do I make it work CustomerSalesmanProgrammer Coding Practices

OWASP 12 Summary  Makes it easier for development teams to quickly understand secure coding practices  Assists with defining requirements and adding them to policies and contracts  Provides a context and vocabulary for interactions with security staff  Serves as an easy desk reference

OWASP 13 A Secure Development Framework  Implement a secure software development lifecycle  OWASP CLASP Project OWASP CLASP Project  Establish secure coding standards  OWASP Development Guide Project OWASP Development Guide Project  Build a re-usable object library  OWASP Enterprise Security API (ESAPI) Project OWASP Enterprise Security API (ESAPI) Project  Verify the effectiveness of security controls  OWASP Application Security Verification Standard (ASVS) Project) OWASP Application Security Verification Standard (ASVS) Project)  Establish secure outsourced development practices including defining security requirements and verification methodologies in both the RFP and contract  OWASP Legal Project OWASP Legal Project Guidance on implementing a secure software development framework is beyond the scope of the Quick reference Guide, however the following OWASP projects can help:

OWASP 14 Questions