SlideShare a Scribd company logo
1 of 10
Download to read offline
Building Secure Web Applications Infographic
veracode.com/blog/2012/06/building-secure-web-applications-inf ographic/
Add this Infographic to Your Website for FREE!
Small Version
<p><a
href="http://www.v
eracode.com/pro
ducts/application-
security-
elearning.html"><
img
src="http://www.ve
racode.com/blog/
wp-
content/uploads/2
012/05/web-
security.jpg"></a>
</p>
<p>Infographic by
<a
href="http://www.v
eracode.com/">V
eracode
Application
Security</a></p>
Large Version
<p><a
href="http://www.v
eracode.com/pro
ducts/application-
security-
elearning.html"><
img
src="http://www.ve
racode.com/blog/
wp-
content/uploads/2
012/05/web-
security.jpg"></a>
</p>
<p>Infographic by
<a
href="http://www.v
eracode.com/">V
eracode
Application
Security</a></p>
Infographic by Veracode Application Security
the co$t of a data breach averages $5.5 million or $194 per customer record
Companies that take security seriously by employing a Chief Information Security Officer can reduce the cost per customer
record by up to 62%.
So…what can Web developers be doing to PREVENT these dat a breaches and Web application vulnerabilit ies from
happening in the first place?
The OWASP Top 10 Application Security Risks
Injection
Cross-Site Scripting (XSS)
Broken Authentication and Session Management
Insecure Direct Object References
Cross-Site Request Forgery (CSRF)
Security Misconfiguration*
Insecure Cryptographic Storage
Failure to Restrict URL Access
Insufficient Transport Layer Protection*
Unvalidated Redirects and Forwards
*May be outside the developer’s control
Application Security Checklist:
(This is not a comprehensive list, as application security is a constant process)
1. Does the application properly encode or escape data prior to exchanging it with external components such as a database,
LDAP server, web browser, etc?
2. Does the application encrypt sensitive information such as authentication credentials, sensitive customer data, etc. prior to
transmitting such information across the network?
3. Does the application comply with the organization’s existing security standards?
4. Does the application use thread-safe techniques to protect against race conditions that could harm system availability
and/or data integrity?
5. Does the application ensure that numeric values are within expected ranges that do not result in unanticipated
consequences when used in calculations or control structures?
6. Does the application properly control access to the server’s file system?
7. Does the application use currently accepted, industry-standard cryptographic algorithms?
8. Has the application been deployed with secure default permissions?
9. Does the application protect against brute force attacks?
10. Does the application validate all input including parameters, arguments, cookies, anything read from the network,
environment variables, request headers, URL components, e-mail, files, database records and any external system that
provides data to the application?
11. Does the application verify the origin of sensitive requests through the use of unpredictable, unique nonces as hidden input
form values?
12. Does the application fail gracefully and securely without divulging details of the underlying implementation to the end user?
13. Does the application store state information on the server side only or ensure client-side state variables have not been
tampered with?
14. Does the application perform access control checks in a consistent manner across all potential execution paths?
15. Is the application free of hardcoded credentials and cryptographic keys?
16. Does the application use sufficient randomness for generating session ids or in other security-sensitive contexts?
Specific Examples of How to Combat Two Common Flaws
XSS (Cross Site Scripting) Flaws
You May Be Vulnerable If…
Input coming into your applications is not validated
Output to the browser is not properly escaped
How to Prevent It
Use the appropriate escaping method for the context you are in. Here are some examples:
HTML encode all user input returned as part of HTML
URL encode all user input returned as part of URLs (convert ?, &, /, <, >, and spaces to their respective URL encoded
equals)
Convert all user input to a single character encoding before parsing
SQL Injection Flaws
You May Be Vulnerable If…
Unvalidated user input is concatenated into an ad-hoc SQL query
How to Prevent It
Use parameterized prepared statements
Use Input Validation for Length, Type, Syntax & Business rules
Use the lowest privilege database account possible
Really Want Secure Web Applications? Security is a Process: Test Everything!
Never assume security controls are effective until you can validate them with thorough testing.
Most security vulnerabilities will not be discovered during normal application use.
Allocate time for dedicated security testing within your project timeline.
Always test applications and application components, both in isolation and in the environment where the application is
deployed.
Veracode Security Solutions

More Related Content

What's hot

Web Application Firewall intro
Web Application Firewall introWeb Application Firewall intro
Web Application Firewall intro
Rich Helton
 
Security testing presentation
Security testing presentationSecurity testing presentation
Security testing presentation
Confiz
 

What's hot (20)

Why You Need A Web Application Firewall
Why You Need A Web Application FirewallWhy You Need A Web Application Firewall
Why You Need A Web Application Firewall
 
Security Testing for Web Application
Security Testing for Web ApplicationSecurity Testing for Web Application
Security Testing for Web Application
 
Security-testing presentation
Security-testing presentationSecurity-testing presentation
Security-testing presentation
 
Owasp top 10 2017
Owasp top 10 2017Owasp top 10 2017
Owasp top 10 2017
 
Owasp top 10 security threats
Owasp top 10 security threatsOwasp top 10 security threats
Owasp top 10 security threats
 
Owasp first5 presentation
Owasp first5 presentationOwasp first5 presentation
Owasp first5 presentation
 
OWASP Top 10 Vulnerabilities 2017- AppTrana
OWASP Top 10 Vulnerabilities 2017- AppTranaOWASP Top 10 Vulnerabilities 2017- AppTrana
OWASP Top 10 Vulnerabilities 2017- AppTrana
 
Web Application Firewall intro
Web Application Firewall introWeb Application Firewall intro
Web Application Firewall intro
 
Owasp top 10
Owasp top 10Owasp top 10
Owasp top 10
 
Step by step guide for web application security testing
Step by step guide for web application security testingStep by step guide for web application security testing
Step by step guide for web application security testing
 
Owasp top 10 & Web vulnerabilities
Owasp top 10 & Web vulnerabilitiesOwasp top 10 & Web vulnerabilities
Owasp top 10 & Web vulnerabilities
 
Security Testing
Security TestingSecurity Testing
Security Testing
 
Owasp Top 10
Owasp Top 10Owasp Top 10
Owasp Top 10
 
Introduction to security testing
Introduction to security testingIntroduction to security testing
Introduction to security testing
 
Introduction to Web Application Penetration Testing
Introduction to Web Application Penetration TestingIntroduction to Web Application Penetration Testing
Introduction to Web Application Penetration Testing
 
From the Frontline of RASP Adoption
From the Frontline of RASP AdoptionFrom the Frontline of RASP Adoption
From the Frontline of RASP Adoption
 
Owasp Top 10
Owasp Top 10Owasp Top 10
Owasp Top 10
 
A5: Security Misconfiguration
A5: Security Misconfiguration A5: Security Misconfiguration
A5: Security Misconfiguration
 
Security testing presentation
Security testing presentationSecurity testing presentation
Security testing presentation
 
Top 10 Web Security Vulnerabilities (OWASP Top 10)
Top 10 Web Security Vulnerabilities (OWASP Top 10)Top 10 Web Security Vulnerabilities (OWASP Top 10)
Top 10 Web Security Vulnerabilities (OWASP Top 10)
 

Viewers also liked

Viewers also liked (15)

Veracode CISO Round Table
Veracode CISO Round TableVeracode CISO Round Table
Veracode CISO Round Table
 
Veracode - Overview
Veracode - OverviewVeracode - Overview
Veracode - Overview
 
Retail Industry Application Security Survey Insights
Retail Industry Application Security Survey InsightsRetail Industry Application Security Survey Insights
Retail Industry Application Security Survey Insights
 
The Security Industry: How to Survive Becoming Management BSIDESLV 2013 Keynote
The Security Industry: How to Survive Becoming Management BSIDESLV 2013 KeynoteThe Security Industry: How to Survive Becoming Management BSIDESLV 2013 Keynote
The Security Industry: How to Survive Becoming Management BSIDESLV 2013 Keynote
 
Why Benchmark Application Security - Veracode
Why Benchmark Application Security - VeracodeWhy Benchmark Application Security - Veracode
Why Benchmark Application Security - Veracode
 
Secure Code review - Veracode SaaS Platform - Saudi Green Method
Secure Code review - Veracode SaaS Platform - Saudi Green MethodSecure Code review - Veracode SaaS Platform - Saudi Green Method
Secure Code review - Veracode SaaS Platform - Saudi Green Method
 
Mobile Security: Apps are our digital lives.
Mobile Security: Apps are our digital lives.Mobile Security: Apps are our digital lives.
Mobile Security: Apps are our digital lives.
 
Veracode - Inglês
Veracode - InglêsVeracode - Inglês
Veracode - Inglês
 
Selling Your Organization on Application Security
Selling Your Organization on Application SecuritySelling Your Organization on Application Security
Selling Your Organization on Application Security
 
The Seven Kinds of Security
The Seven Kinds of SecurityThe Seven Kinds of Security
The Seven Kinds of Security
 
8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal
8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal
8 Patterns For Continuous Code Security by Veracode CTO Chris Wysopal
 
The Four(ish) Appsec Metrics You Can’t Ignore
The Four(ish) Appsec Metrics You Can’t IgnoreThe Four(ish) Appsec Metrics You Can’t Ignore
The Four(ish) Appsec Metrics You Can’t Ignore
 
Healthcare application-security-practices-survey-veracode
Healthcare application-security-practices-survey-veracodeHealthcare application-security-practices-survey-veracode
Healthcare application-security-practices-survey-veracode
 
A Secure DevOps Journey
A Secure DevOps JourneyA Secure DevOps Journey
A Secure DevOps Journey
 
A Secure DevOps Journey
A Secure DevOps JourneyA Secure DevOps Journey
A Secure DevOps Journey
 

Similar to Developing Web Applications Securely - How to Fix Common Code Vulnerabilities and Flaws

Datasheet app vulnerability_assess
Datasheet app vulnerability_assessDatasheet app vulnerability_assess
Datasheet app vulnerability_assess
Birodh Rijal
 
Reliable and fast security audits - The modern and offensive way-Mohan Gandhi
Reliable and fast security audits - The modern and offensive way-Mohan GandhiReliable and fast security audits - The modern and offensive way-Mohan Gandhi
Reliable and fast security audits - The modern and offensive way-Mohan Gandhi
bhumika2108
 
Security Testing
Security TestingSecurity Testing
Security Testing
ISsoft
 
Benefits of web application firewalls
Benefits of web application firewallsBenefits of web application firewalls
Benefits of web application firewalls
EnclaveSecurity
 

Similar to Developing Web Applications Securely - How to Fix Common Code Vulnerabilities and Flaws (20)

00. introduction to app sec v3
00. introduction to app sec v300. introduction to app sec v3
00. introduction to app sec v3
 
C01461422
C01461422C01461422
C01461422
 
Application Security - Your Success Depends on it
Application Security - Your Success Depends on itApplication Security - Your Success Depends on it
Application Security - Your Success Depends on it
 
Developing Secure Applications and Defending Against Common Attacks
Developing Secure Applications and Defending Against Common AttacksDeveloping Secure Applications and Defending Against Common Attacks
Developing Secure Applications and Defending Against Common Attacks
 
Owasp web security
Owasp web securityOwasp web security
Owasp web security
 
IRJET- Bug Hunting using Web Application Penetration Testing Techniques.
IRJET- Bug Hunting using Web Application Penetration Testing Techniques.IRJET- Bug Hunting using Web Application Penetration Testing Techniques.
IRJET- Bug Hunting using Web Application Penetration Testing Techniques.
 
Datasheet app vulnerability_assess
Datasheet app vulnerability_assessDatasheet app vulnerability_assess
Datasheet app vulnerability_assess
 
Reliable and fast security audits - The modern and offensive way-Mohan Gandhi
Reliable and fast security audits - The modern and offensive way-Mohan GandhiReliable and fast security audits - The modern and offensive way-Mohan Gandhi
Reliable and fast security audits - The modern and offensive way-Mohan Gandhi
 
Security Testing
Security TestingSecurity Testing
Security Testing
 
A security note for web developers
A security note for web developersA security note for web developers
A security note for web developers
 
Mobile Enterprise Application Platform
Mobile Enterprise Application PlatformMobile Enterprise Application Platform
Mobile Enterprise Application Platform
 
OFFTECH TOOL AND END URL FINDER
OFFTECH TOOL AND END URL FINDEROFFTECH TOOL AND END URL FINDER
OFFTECH TOOL AND END URL FINDER
 
How PCI And PA DSS will change enterprise applications
How PCI And PA DSS will change enterprise applicationsHow PCI And PA DSS will change enterprise applications
How PCI And PA DSS will change enterprise applications
 
Demand for Penetration Testing Services.docx
Demand for Penetration Testing Services.docxDemand for Penetration Testing Services.docx
Demand for Penetration Testing Services.docx
 
Mobile SSO: Give App Users a Break from Typing Passwords
Mobile SSO: Give App Users a Break from Typing PasswordsMobile SSO: Give App Users a Break from Typing Passwords
Mobile SSO: Give App Users a Break from Typing Passwords
 
RAJASEKHAR
RAJASEKHARRAJASEKHAR
RAJASEKHAR
 
Bank One App Sec Training
Bank One App Sec TrainingBank One App Sec Training
Bank One App Sec Training
 
Benefits of web application firewalls
Benefits of web application firewallsBenefits of web application firewalls
Benefits of web application firewalls
 
IRJET- Website Health Checker
IRJET- Website Health CheckerIRJET- Website Health Checker
IRJET- Website Health Checker
 
mastering_web_testing_how_to_make_the_most_of_frameworks.pdf
mastering_web_testing_how_to_make_the_most_of_frameworks.pdfmastering_web_testing_how_to_make_the_most_of_frameworks.pdf
mastering_web_testing_how_to_make_the_most_of_frameworks.pdf
 

Recently uploaded

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
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 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
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 - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.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
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
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
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 

Developing Web Applications Securely - How to Fix Common Code Vulnerabilities and Flaws

  • 1. Building Secure Web Applications Infographic veracode.com/blog/2012/06/building-secure-web-applications-inf ographic/
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9. Add this Infographic to Your Website for FREE! Small Version <p><a href="http://www.v eracode.com/pro ducts/application- security- elearning.html">< img src="http://www.ve racode.com/blog/ wp- content/uploads/2 012/05/web- security.jpg"></a> </p> <p>Infographic by <a href="http://www.v eracode.com/">V eracode Application Security</a></p> Large Version <p><a href="http://www.v eracode.com/pro ducts/application- security- elearning.html">< img src="http://www.ve racode.com/blog/ wp- content/uploads/2 012/05/web- security.jpg"></a> </p> <p>Infographic by <a href="http://www.v eracode.com/">V eracode Application Security</a></p> Infographic by Veracode Application Security the co$t of a data breach averages $5.5 million or $194 per customer record Companies that take security seriously by employing a Chief Information Security Officer can reduce the cost per customer record by up to 62%. So…what can Web developers be doing to PREVENT these dat a breaches and Web application vulnerabilit ies from happening in the first place? The OWASP Top 10 Application Security Risks Injection Cross-Site Scripting (XSS) Broken Authentication and Session Management Insecure Direct Object References Cross-Site Request Forgery (CSRF) Security Misconfiguration* Insecure Cryptographic Storage Failure to Restrict URL Access Insufficient Transport Layer Protection* Unvalidated Redirects and Forwards *May be outside the developer’s control Application Security Checklist: (This is not a comprehensive list, as application security is a constant process) 1. Does the application properly encode or escape data prior to exchanging it with external components such as a database, LDAP server, web browser, etc? 2. Does the application encrypt sensitive information such as authentication credentials, sensitive customer data, etc. prior to transmitting such information across the network? 3. Does the application comply with the organization’s existing security standards? 4. Does the application use thread-safe techniques to protect against race conditions that could harm system availability and/or data integrity? 5. Does the application ensure that numeric values are within expected ranges that do not result in unanticipated consequences when used in calculations or control structures? 6. Does the application properly control access to the server’s file system? 7. Does the application use currently accepted, industry-standard cryptographic algorithms? 8. Has the application been deployed with secure default permissions? 9. Does the application protect against brute force attacks?
  • 10. 10. Does the application validate all input including parameters, arguments, cookies, anything read from the network, environment variables, request headers, URL components, e-mail, files, database records and any external system that provides data to the application? 11. Does the application verify the origin of sensitive requests through the use of unpredictable, unique nonces as hidden input form values? 12. Does the application fail gracefully and securely without divulging details of the underlying implementation to the end user? 13. Does the application store state information on the server side only or ensure client-side state variables have not been tampered with? 14. Does the application perform access control checks in a consistent manner across all potential execution paths? 15. Is the application free of hardcoded credentials and cryptographic keys? 16. Does the application use sufficient randomness for generating session ids or in other security-sensitive contexts? Specific Examples of How to Combat Two Common Flaws XSS (Cross Site Scripting) Flaws You May Be Vulnerable If… Input coming into your applications is not validated Output to the browser is not properly escaped How to Prevent It Use the appropriate escaping method for the context you are in. Here are some examples: HTML encode all user input returned as part of HTML URL encode all user input returned as part of URLs (convert ?, &, /, <, >, and spaces to their respective URL encoded equals) Convert all user input to a single character encoding before parsing SQL Injection Flaws You May Be Vulnerable If… Unvalidated user input is concatenated into an ad-hoc SQL query How to Prevent It Use parameterized prepared statements Use Input Validation for Length, Type, Syntax & Business rules Use the lowest privilege database account possible Really Want Secure Web Applications? Security is a Process: Test Everything! Never assume security controls are effective until you can validate them with thorough testing. Most security vulnerabilities will not be discovered during normal application use. Allocate time for dedicated security testing within your project timeline. Always test applications and application components, both in isolation and in the environment where the application is deployed. Veracode Security Solutions