SlideShare a Scribd company logo
1 of 14
OWASP Proactive Controls
Simplified
Sameer Paradia
What is it?
๏ฝ OWASP Top 10 Proactive Controls 2016
๏ฝ 10 Critical Security Areas That Web Developers
Must Be Aware Of
๏ฝ https://www.owasp.org/index.php/OWASP_Proactive
_Controls
๏ฝ The deck tries to simplify and put in concluding way
the approach by OSASP explained in above link
Summary of Controls
1. Verify for Security Early and Often
2. Parameterize Queries
3. Encode Data
4. Validate All Inputs
5. Implement Identity and Authentication Controls
6. Implement Appropriate Access Controls
7. Protect Data
8. Implement Logging and Intrusion Detection
9. Leverage Security Frameworks and Libraries
10. Error and Exception Handling
1) Verify for Security Early and Often
Problem statement โ€ข Security testing is not made part of SDLC/ Agile.
โ€ข It is carried out by other than development team and dev team tries to fix them without
putting much thought from coding and programming point of view.
โ€ข Security must be integral part of SDLC/ Agile development
Vulnerability / Attacks โ€ข All OWASP top 10
Control explained โ€ข Include security while writing testing stories and tasks. Include the Proactive Controls in
stubs and drivers
โ€ข Security testing stories should be defined such that the lowest child story can be
implemented and accepted in a single iterationอพ testing a Proactive Control must be
lightweight
โ€ข Consider OWASP ASVS as a guide to define security requirements and testing
โ€ข Convert scanning output into reusable Proactive Controls to avoid entire classes of
problems
2) Parameterize Queries
Problem statement โ€ข The web application can even be used to run dangerous OS commands against the OS
hosting the database.
โ€ข The main concern with SQL injection is the fact, that the SQL query and its parameters
are contained in one query string.
Vulnerability / Attacks โ€ข A1 โ€“ Injection attacks
โ€ข Mobile: Weak server side controls
Control explained โ€ข Untrusted input should be prevented from being interpreted as part of a SQL command
โ€ข Use โ€˜Query Parameterizationโ€™
โ€ข SQL statements are sent to and parsed by the database server separately from any
parameters
โ€ข Use defense in depth with use of technologies such as automated static analysis and
proper database management system configuration
โ€ข Configure database engines to only support parameterized queries
3) Encode Data
Problem statement โ€ข Web forms written to accept inputs from untrusted sources / users
โ€ข Attacker tricks users into executing malicious script that was not originally built into the
website
โ€ข Manipulation of user response
โ€ข XSS attacks execute in the user's browser
โ€ข Same risk remains in mobile based applications as well
Vulnerability / Attacks โ€ข A1 โ€“ Injection attacks
โ€ข Cross site scripting attacks
โ€ข Mobile: Client side injection
Control explained โ€ข Encoding is translating special characters into some equivalent form that is no longer
dangerous in the target interpreter
โ€ข Manipulating user generated content: ensure that data is filtered and/or encoded when
presenting it in the Web View
โ€ข Loading content from an external source: apps that need to display untrusted content
inside a Web View should use a dedicated server/host to render and escape
HTML/Javascript content in a safe way. This prevents access to local system contents
by malicious JavaScript code.
4) Validate All Inputs
Problem statement โ€ข All the data directly entered by users should be treated as untrusted.
โ€ข An application should check that this data is both syntactically and semantically valid (in
that order) before using it in any way
โ€ข Additionally, the most secure applications treat all variables as untrusted and provide
security controls regardless of source
Vulnerability / Attacks โ€ข A1 โ€“ Injection attacks
โ€ข Cross site scripting attacks
โ€ข Invalidated redirects and forwards
โ€ข Mobile: Client side injection
โ€ข Security decisions via untrusted inputs
Control explained โ€ข Use two general approaches to performing input syntax validation white listing
preferred over black listing
โ€ข Regular expressions offer a way to check whether data matches a specific pattern this is
a great way to implement whitelist validation.
โ€ข The security of the application should be enforced where that input is used, e.g., if input
is used to build an HTML response, then the appropriate HTML encoding should be
performed to prevent XSS attacks. Also, if input is used to build a SQL statement, Query
Parameterization should be used.
5) Implement Identity and Authentication
Controls
Problem statement โ€ข Session management has to be secured in application flow to maintain the state of entity
interacting with server
โ€ข Only authorized users must be accessing the resources after enough authentication
Vulnerability / Attacks โ€ข Broken authentication and session management
โ€ข Poor Authorization and Authentication
Control explained โ€ข Use Multi Factor Authentication
โ€ข For Mobile Application: Token Based Authentication. avoid storing/persisting
authentication credentials locally on the device. Instead, perform initial authentication
using the username and password supplied by the user, and then generate a shortlived
access token which can be used to authenticate a client request without sending the
user's credentials.
โ€ข Implement Secure Password Storage using cryptography controls
โ€ข Implement Secure Password Recovery Mechanism
โ€ข Session: Generation and Expiration: On any successful authentication and
reauthentication the software should generate a new session and session id.
โ€ข Mandatory to set expiration timeouts for every session, after a specified period of
inactivity.
โ€ข Reauthentication for Sensitive Features
6) Implement Access Controls
Problem statement โ€ข Access Control is one of the main areas of application security design that must be
heavily thought through up front, especially when addressing requirements like
multitenancy and horizontal (data specific) access control
Vulnerability / Attacks โ€ข Insecure direct object reference
โ€ข Missing function level access controls
โ€ข Poor authorization and authentication
Control explained โ€ข Force All Requests to go Through Access Control Checks
โ€ข Deny by Default
โ€ข Principle of Least Privilege: each user or system component should be allocated the
minimum privilege required to perform an action for the minimum amount of time
โ€ข Avoid Hard Coded Access Control Checks: enforcement layer (checks in code) and your
access control decision making process (the access control "engine") should be
separated when possible
โ€ข Code to the Activity: Consider checking if the user has access to that feature in code, as
opposed to checking what role the user is in code
โ€ข Server side Trusted Data Should Drive Access Control. Policy data such as a user's role
or an access control rule should never be part of the request
7) Protect Data
Problem statement โ€ข Access Control is one of the main areas of application security design that must be
heavily thought through up front, especially when addressing requirements like
multitenancy and horizontal (data specific) access control
Vulnerability / Attacks โ€ข Sensitive data exposure
โ€ข Mobile: Insecure data storage
Control explained โ€ข Classify and Encrypt Data at rest. Develop your own crypto algorithm & key size should
be optly chosen
โ€ข Encrypt Data in Transit. TLS is by far the most common and widely supported model
used by web applications for encryption in transit
โ€ข Implement Protection in Transit
โ€ข Mobile Application: Secure Local Storage. Avoid storing the sensitive data &
authentication credentials, access token, etc. on local device
8) Implement Logging and Intrusion
Detection
Problem statement โ€ข Logging is used in BIA, Monitoring, Forensics, compliance and intrusion detection
โ€ข It must be designed properly from early SDLC stage
Vulnerability / Attacks โ€ข All OWASP top 10
โ€ข Mobile: Unintended data leakage
Control explained โ€ข Ensure proper level of logging
โ€ข Follow a common logging approach within the system and across systems where
possible to make correlation easy
โ€ข Make sure to always log the timestamp and identifying information like the source IP and
userid, but be careful not to log private or confidential data or opt out data or secrets
โ€ข Design proper positioning of IDS sensors and management
9) Leverage Security Frameworks and
Libraries
Problem statement โ€ข Starting from scratch when it comes to developing security controls for every web
application, web service or mobile application leads to wasted time and massive security
holes.
Vulnerability / Attacks โ€ข All OWASP top 10 particularly those based on syntactically incorrect input
Control explained โ€ข When possible, the emphasis should be on using the existing secure features of
frameworks rather than importing third party libraries. It is preferable to have developers
take advantage of what they're already using instead of forcing yet another library on
them
โ€ข Not all the frameworks are completely secured hence it is important to build in additional
security where possible, updating frequently and verifying them for security early and
often like any other software you depend upon
10) Errors and exceptions handling
Problem statement โ€ข Implementing correct error and exception handling isn't exciting, but like input data
validation, it is an important part of defensive coding, critical to making a system reliable
as well as secure.
โ€ข Mistakes in error handling can lead to different kinds of security vulnerabilities
Vulnerability / Attacks โ€ข All OWASP top 10
Control explained โ€ข Itโ€™s recommended to manage exceptions in a centralized manner to avoid duplicated
try/catch blocks in the code, and to ensure that all unexpected behaviors are correctly
handled inside the application.
โ€ข Ensure that error messages displayed to users do not leak critical data, but are still
verbose enough to explain the issue to the user.
โ€ข Ensure that exceptions are logged in a way that gives enough information for Q/A,
forensics or incident response teams to understand the problem.
Sameer Paradia (CGEIT, CISM, CISSP) (sameer_m_paradia@yahoo.com)
Practicing IT Security Services and Outsourcing for past 24+ years
Photo acknowledgment: https://www.flickr.com/photos/babalas_shipyards/5339531237/in/photostream/
http://www.flickr.com/photos/forgetmeknottphotography/7003899183/sizes/l/in/photost

More Related Content

What's hot

What's hot (20)

Redefining Endpoint Security
Redefining Endpoint SecurityRedefining Endpoint Security
Redefining Endpoint Security
ย 
Security Analytics for Data Discovery - Closing the SIEM Gap
Security Analytics for Data Discovery - Closing the SIEM GapSecurity Analytics for Data Discovery - Closing the SIEM Gap
Security Analytics for Data Discovery - Closing the SIEM Gap
ย 
Accelerating OT - A Case Study
Accelerating OT - A Case StudyAccelerating OT - A Case Study
Accelerating OT - A Case Study
ย 
IBM QRadar Security Intelligence Overview
IBM QRadar Security Intelligence OverviewIBM QRadar Security Intelligence Overview
IBM QRadar Security Intelligence Overview
ย 
Security Culture from Concept to Maintenance: Secure Software Development Lif...
Security Culture from Concept to Maintenance: Secure Software Development Lif...Security Culture from Concept to Maintenance: Secure Software Development Lif...
Security Culture from Concept to Maintenance: Secure Software Development Lif...
ย 
Beginner's Guide to SIEM
Beginner's Guide to SIEM Beginner's Guide to SIEM
Beginner's Guide to SIEM
ย 
Secure by design and secure software development
Secure by design and secure software developmentSecure by design and secure software development
Secure by design and secure software development
ย 
Whitepaper IBM Qradar Security Intelligence
Whitepaper IBM Qradar Security IntelligenceWhitepaper IBM Qradar Security Intelligence
Whitepaper IBM Qradar Security Intelligence
ย 
How to Solve Your Top IT Security Reporting Challenges with AlienVault
How to Solve Your Top IT Security Reporting Challenges with AlienVaultHow to Solve Your Top IT Security Reporting Challenges with AlienVault
How to Solve Your Top IT Security Reporting Challenges with AlienVault
ย 
Symantec Cyber Security Solutions | MSS and Advanced Threat Protection
Symantec Cyber Security Solutions | MSS and Advanced Threat ProtectionSymantec Cyber Security Solutions | MSS and Advanced Threat Protection
Symantec Cyber Security Solutions | MSS and Advanced Threat Protection
ย 
IBM Security QFlow & Vflow
IBM Security QFlow & VflowIBM Security QFlow & Vflow
IBM Security QFlow & Vflow
ย 
RSA: Security Analytics Architecture for APT
RSA: Security Analytics Architecture for APTRSA: Security Analytics Architecture for APT
RSA: Security Analytics Architecture for APT
ย 
From SIEM to SOC: Crossing the Cybersecurity Chasm
From SIEM to SOC: Crossing the Cybersecurity ChasmFrom SIEM to SOC: Crossing the Cybersecurity Chasm
From SIEM to SOC: Crossing the Cybersecurity Chasm
ย 
IBM Q-radar security intelligence roadmap
IBM Q-radar security intelligence roadmapIBM Q-radar security intelligence roadmap
IBM Q-radar security intelligence roadmap
ย 
So You Got That SIEM. NOW What Do You Do?ย  by Dr. Anton Chuvakin
So You Got That SIEM. NOW What Do You Do?ย  by Dr. Anton ChuvakinSo You Got That SIEM. NOW What Do You Do?ย  by Dr. Anton Chuvakin
So You Got That SIEM. NOW What Do You Do?ย  by Dr. Anton Chuvakin
ย 
Implementing and Running SIEM: Approaches and Lessons
Implementing  and Running SIEM: Approaches and LessonsImplementing  and Running SIEM: Approaches and Lessons
Implementing and Running SIEM: Approaches and Lessons
ย 
Generic siem how_2017
Generic siem how_2017Generic siem how_2017
Generic siem how_2017
ย 
The Golden Rules - Detecting more with RSA Security Analytics
The Golden Rules  - Detecting more with RSA Security AnalyticsThe Golden Rules  - Detecting more with RSA Security Analytics
The Golden Rules - Detecting more with RSA Security Analytics
ย 
SOC Architecture Workshop - Part 1
SOC Architecture Workshop - Part 1SOC Architecture Workshop - Part 1
SOC Architecture Workshop - Part 1
ย 
DSS ITSEC CONFERENCE - Q1 Labs - Intelligent network security - next genera...
DSS   ITSEC CONFERENCE - Q1 Labs - Intelligent network security - next genera...DSS   ITSEC CONFERENCE - Q1 Labs - Intelligent network security - next genera...
DSS ITSEC CONFERENCE - Q1 Labs - Intelligent network security - next genera...
ย 

Viewers also liked

Viewers also liked (11)

Security Operation Center - Design & Build
Security Operation Center - Design & BuildSecurity Operation Center - Design & Build
Security Operation Center - Design & Build
ย 
IT - Enterprise Service Operation Center
IT - Enterprise Service Operation CenterIT - Enterprise Service Operation Center
IT - Enterprise Service Operation Center
ย 
Rapid Threat Modeling Techniques
Rapid Threat Modeling TechniquesRapid Threat Modeling Techniques
Rapid Threat Modeling Techniques
ย 
Robert Hurlbut - Threat Modeling for Secure Software Design
Robert Hurlbut - Threat Modeling for Secure Software DesignRobert Hurlbut - Threat Modeling for Secure Software Design
Robert Hurlbut - Threat Modeling for Secure Software Design
ย 
Product Management Lifecycle
Product Management LifecycleProduct Management Lifecycle
Product Management Lifecycle
ย 
Threat Modeling web applications (2012 update)
Threat Modeling web applications (2012 update)Threat Modeling web applications (2012 update)
Threat Modeling web applications (2012 update)
ย 
Ten Commandments of Secure Coding - OWASP Top Ten Proactive Controls
Ten Commandments of Secure Coding - OWASP Top Ten Proactive ControlsTen Commandments of Secure Coding - OWASP Top Ten Proactive Controls
Ten Commandments of Secure Coding - OWASP Top Ten Proactive Controls
ย 
Cyber War ( World War 3 )
Cyber War ( World War 3 )Cyber War ( World War 3 )
Cyber War ( World War 3 )
ย 
Building a Next-Generation Security Operation Center Based on IBM QRadar and ...
Building a Next-Generation Security Operation Center Based on IBM QRadar and ...Building a Next-Generation Security Operation Center Based on IBM QRadar and ...
Building a Next-Generation Security Operation Center Based on IBM QRadar and ...
ย 
SOC presentation- Building a Security Operations Center
SOC presentation- Building a Security Operations CenterSOC presentation- Building a Security Operations Center
SOC presentation- Building a Security Operations Center
ย 
Secure Design: Threat Modeling
Secure Design: Threat ModelingSecure Design: Threat Modeling
Secure Design: Threat Modeling
ย 

Similar to Owasp Proactive Controls for Web developer

Security Design Principles.ppt
 Security Design Principles.ppt Security Design Principles.ppt
Security Design Principles.ppt
DrBasemMohamedElomda
ย 
owasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWEowasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWE
Arun Voleti
ย 
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja WarriorsRyan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Ryan Elkins
ย 

Similar to Owasp Proactive Controls for Web developer (20)

Webdays blida mobile top 10 risks
Webdays blida   mobile top 10 risksWebdays blida   mobile top 10 risks
Webdays blida mobile top 10 risks
ย 
Owasp top 10 2017
Owasp top 10 2017Owasp top 10 2017
Owasp top 10 2017
ย 
Security Design Concepts
Security Design ConceptsSecurity Design Concepts
Security Design Concepts
ย 
AppSec in an Agile World
AppSec in an Agile WorldAppSec in an Agile World
AppSec in an Agile World
ย 
Secure coding guidelines
Secure coding guidelinesSecure coding guidelines
Secure coding guidelines
ย 
Security Design Principles.ppt
 Security Design Principles.ppt Security Design Principles.ppt
Security Design Principles.ppt
ย 
How to Test for The OWASP Top Ten
 How to Test for The OWASP Top Ten How to Test for The OWASP Top Ten
How to Test for The OWASP Top Ten
ย 
Secure coding guidelines
Secure coding guidelinesSecure coding guidelines
Secure coding guidelines
ย 
Security testing
Security testingSecurity testing
Security testing
ย 
#ALSummit: Architecting Security into your AWS Environment
#ALSummit: Architecting Security into your AWS Environment#ALSummit: Architecting Security into your AWS Environment
#ALSummit: Architecting Security into your AWS Environment
ย 
owasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWEowasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWE
ย 
chap-1 : Vulnerabilities in Information Systems
chap-1 : Vulnerabilities in Information Systemschap-1 : Vulnerabilities in Information Systems
chap-1 : Vulnerabilities in Information Systems
ย 
Pragmatic Container Security (Sponsored by Trend Micro) - AWS Summit Sydney
Pragmatic Container Security (Sponsored by Trend Micro) - AWS Summit SydneyPragmatic Container Security (Sponsored by Trend Micro) - AWS Summit Sydney
Pragmatic Container Security (Sponsored by Trend Micro) - AWS Summit Sydney
ย 
AWS Community Day - Vitaliy Shtym - Pragmatic Container Security
AWS Community Day - Vitaliy Shtym - Pragmatic Container SecurityAWS Community Day - Vitaliy Shtym - Pragmatic Container Security
AWS Community Day - Vitaliy Shtym - Pragmatic Container Security
ย 
Introduction to security testing raj
Introduction to security testing rajIntroduction to security testing raj
Introduction to security testing raj
ย 
SQLi for Security Champions
SQLi for Security ChampionsSQLi for Security Champions
SQLi for Security Champions
ย 
Secure code practices
Secure code practicesSecure code practices
Secure code practices
ย 
Securing Applications in the Cloud
Securing Applications in the CloudSecuring Applications in the Cloud
Securing Applications in the Cloud
ย 
Develop, Test & Maintain Secure Systems (While Being PCI Compliant)
Develop, Test & Maintain Secure Systems (While Being PCI Compliant)Develop, Test & Maintain Secure Systems (While Being PCI Compliant)
Develop, Test & Maintain Secure Systems (While Being PCI Compliant)
ย 
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja WarriorsRyan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
Ryan Elkins - Simple Security Defense to Thwart an Army of Cyber Ninja Warriors
ย 

Recently uploaded

๐Ÿ“ฑDehradun Call Girls Service ๐Ÿ“ฑโ˜Ž๏ธ +91'905,3900,678 โ˜Ž๏ธ๐Ÿ“ฑ Call Girls In Dehradun ๐Ÿ“ฑ
๐Ÿ“ฑDehradun Call Girls Service ๐Ÿ“ฑโ˜Ž๏ธ +91'905,3900,678 โ˜Ž๏ธ๐Ÿ“ฑ Call Girls In Dehradun ๐Ÿ“ฑ๐Ÿ“ฑDehradun Call Girls Service ๐Ÿ“ฑโ˜Ž๏ธ +91'905,3900,678 โ˜Ž๏ธ๐Ÿ“ฑ Call Girls In Dehradun ๐Ÿ“ฑ
๐Ÿ“ฑDehradun Call Girls Service ๐Ÿ“ฑโ˜Ž๏ธ +91'905,3900,678 โ˜Ž๏ธ๐Ÿ“ฑ Call Girls In Dehradun ๐Ÿ“ฑ
@Chandigarh #call #Girls 9053900678 @Call #Girls in @Punjab 9053900678
ย 
โžฅ๐Ÿ” 7737669865 ๐Ÿ”โ–ป mehsana Call-girls in Women Seeking Men ๐Ÿ”mehsana๐Ÿ” Escorts...
โžฅ๐Ÿ” 7737669865 ๐Ÿ”โ–ป mehsana Call-girls in Women Seeking Men  ๐Ÿ”mehsana๐Ÿ”   Escorts...โžฅ๐Ÿ” 7737669865 ๐Ÿ”โ–ป mehsana Call-girls in Women Seeking Men  ๐Ÿ”mehsana๐Ÿ”   Escorts...
โžฅ๐Ÿ” 7737669865 ๐Ÿ”โ–ป mehsana Call-girls in Women Seeking Men ๐Ÿ”mehsana๐Ÿ” Escorts...
nirzagarg
ย 
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
Call Girls In Delhi Whatsup 9873940964 Enjoy Unlimited Pleasure
ย 
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
SUHANI PANDEY
ย 
Low Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐Ÿฅต
Low Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐ŸฅตLow Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐Ÿฅต
Low Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐Ÿฅต
Chandigarh Call girls 9053900678 Call girls in Chandigarh
ย 
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
SUHANI PANDEY
ย 
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
ย 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
singhpriety023
ย 

Recently uploaded (20)

Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...Katraj ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For S...
Katraj ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For S...
ย 
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...Nanded City ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready ...
Nanded City ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready ...
ย 
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency""Boost Your Digital Presence: Partner with a Leading SEO Agency"
"Boost Your Digital Presence: Partner with a Leading SEO Agency"
ย 
๐Ÿ“ฑDehradun Call Girls Service ๐Ÿ“ฑโ˜Ž๏ธ +91'905,3900,678 โ˜Ž๏ธ๐Ÿ“ฑ Call Girls In Dehradun ๐Ÿ“ฑ
๐Ÿ“ฑDehradun Call Girls Service ๐Ÿ“ฑโ˜Ž๏ธ +91'905,3900,678 โ˜Ž๏ธ๐Ÿ“ฑ Call Girls In Dehradun ๐Ÿ“ฑ๐Ÿ“ฑDehradun Call Girls Service ๐Ÿ“ฑโ˜Ž๏ธ +91'905,3900,678 โ˜Ž๏ธ๐Ÿ“ฑ Call Girls In Dehradun ๐Ÿ“ฑ
๐Ÿ“ฑDehradun Call Girls Service ๐Ÿ“ฑโ˜Ž๏ธ +91'905,3900,678 โ˜Ž๏ธ๐Ÿ“ฑ Call Girls In Dehradun ๐Ÿ“ฑ
ย 
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
(INDIRA) Call Girl Pune Call Now 8250077686 Pune Escorts 24x7
ย 
Top Rated Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...
Top Rated  Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...Top Rated  Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...
Top Rated Pune Call Girls Daund โŸŸ 6297143586 โŸŸ Call Me For Genuine Sex Servi...
ย 
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service AvailableCall Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
Call Girls Ludhiana Just Call 98765-12871 Top Class Call Girl Service Available
ย 
Call Girls Sangvi Call Me 7737669865 Budget Friendly No Advance BookingCall G...
Call Girls Sangvi Call Me 7737669865 Budget Friendly No Advance BookingCall G...Call Girls Sangvi Call Me 7737669865 Budget Friendly No Advance BookingCall G...
Call Girls Sangvi Call Me 7737669865 Budget Friendly No Advance BookingCall G...
ย 
โžฅ๐Ÿ” 7737669865 ๐Ÿ”โ–ป mehsana Call-girls in Women Seeking Men ๐Ÿ”mehsana๐Ÿ” Escorts...
โžฅ๐Ÿ” 7737669865 ๐Ÿ”โ–ป mehsana Call-girls in Women Seeking Men  ๐Ÿ”mehsana๐Ÿ”   Escorts...โžฅ๐Ÿ” 7737669865 ๐Ÿ”โ–ป mehsana Call-girls in Women Seeking Men  ๐Ÿ”mehsana๐Ÿ”   Escorts...
โžฅ๐Ÿ” 7737669865 ๐Ÿ”โ–ป mehsana Call-girls in Women Seeking Men ๐Ÿ”mehsana๐Ÿ” Escorts...
ย 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf
ย 
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls DubaiDubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
Dubai=Desi Dubai Call Girls O525547819 Outdoor Call Girls Dubai
ย 
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
valsad Escorts Service โ˜Ž๏ธ 6378878445 ( Sakshi Sinha ) High Profile Call Girls...
ย 
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...(+971568250507  ))#  Young Call Girls  in Ajman  By Pakistani Call Girls  in ...
(+971568250507 ))# Young Call Girls in Ajman By Pakistani Call Girls in ...
ย 
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
Wagholi & High Class Call Girls Pune Neha 8005736733 | 100% Gennuine High Cla...
ย 
Low Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐Ÿฅต
Low Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐ŸฅตLow Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐Ÿฅต
Low Sexy Call Girls In Mohali 9053900678 ๐ŸฅตHave Save And Good Place ๐Ÿฅต
ย 
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
Yerawada ] Independent Escorts in Pune - Book 8005736733 Call Girls Available...
ย 
Hireโ† Young Call Girls in Tilak nagar (Delhi) โ˜Ž๏ธ 9205541914 โ˜Ž๏ธ Independent Esc...
Hireโ† Young Call Girls in Tilak nagar (Delhi) โ˜Ž๏ธ 9205541914 โ˜Ž๏ธ Independent Esc...Hireโ† Young Call Girls in Tilak nagar (Delhi) โ˜Ž๏ธ 9205541914 โ˜Ž๏ธ Independent Esc...
Hireโ† Young Call Girls in Tilak nagar (Delhi) โ˜Ž๏ธ 9205541914 โ˜Ž๏ธ Independent Esc...
ย 
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Himatnagar 7001035870 Whatsapp Number, 24/07 Booking
ย 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting  High Prof...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 9905417584 Starting High Prof...
ย 
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
Russian Call Girls in %(+971524965298  )#  Call Girls in DubaiRussian Call Girls in %(+971524965298  )#  Call Girls in Dubai
Russian Call Girls in %(+971524965298 )# Call Girls in Dubai
ย 

Owasp Proactive Controls for Web developer

  • 2. What is it? ๏ฝ OWASP Top 10 Proactive Controls 2016 ๏ฝ 10 Critical Security Areas That Web Developers Must Be Aware Of ๏ฝ https://www.owasp.org/index.php/OWASP_Proactive _Controls ๏ฝ The deck tries to simplify and put in concluding way the approach by OSASP explained in above link
  • 3. Summary of Controls 1. Verify for Security Early and Often 2. Parameterize Queries 3. Encode Data 4. Validate All Inputs 5. Implement Identity and Authentication Controls 6. Implement Appropriate Access Controls 7. Protect Data 8. Implement Logging and Intrusion Detection 9. Leverage Security Frameworks and Libraries 10. Error and Exception Handling
  • 4. 1) Verify for Security Early and Often Problem statement โ€ข Security testing is not made part of SDLC/ Agile. โ€ข It is carried out by other than development team and dev team tries to fix them without putting much thought from coding and programming point of view. โ€ข Security must be integral part of SDLC/ Agile development Vulnerability / Attacks โ€ข All OWASP top 10 Control explained โ€ข Include security while writing testing stories and tasks. Include the Proactive Controls in stubs and drivers โ€ข Security testing stories should be defined such that the lowest child story can be implemented and accepted in a single iterationอพ testing a Proactive Control must be lightweight โ€ข Consider OWASP ASVS as a guide to define security requirements and testing โ€ข Convert scanning output into reusable Proactive Controls to avoid entire classes of problems
  • 5. 2) Parameterize Queries Problem statement โ€ข The web application can even be used to run dangerous OS commands against the OS hosting the database. โ€ข The main concern with SQL injection is the fact, that the SQL query and its parameters are contained in one query string. Vulnerability / Attacks โ€ข A1 โ€“ Injection attacks โ€ข Mobile: Weak server side controls Control explained โ€ข Untrusted input should be prevented from being interpreted as part of a SQL command โ€ข Use โ€˜Query Parameterizationโ€™ โ€ข SQL statements are sent to and parsed by the database server separately from any parameters โ€ข Use defense in depth with use of technologies such as automated static analysis and proper database management system configuration โ€ข Configure database engines to only support parameterized queries
  • 6. 3) Encode Data Problem statement โ€ข Web forms written to accept inputs from untrusted sources / users โ€ข Attacker tricks users into executing malicious script that was not originally built into the website โ€ข Manipulation of user response โ€ข XSS attacks execute in the user's browser โ€ข Same risk remains in mobile based applications as well Vulnerability / Attacks โ€ข A1 โ€“ Injection attacks โ€ข Cross site scripting attacks โ€ข Mobile: Client side injection Control explained โ€ข Encoding is translating special characters into some equivalent form that is no longer dangerous in the target interpreter โ€ข Manipulating user generated content: ensure that data is filtered and/or encoded when presenting it in the Web View โ€ข Loading content from an external source: apps that need to display untrusted content inside a Web View should use a dedicated server/host to render and escape HTML/Javascript content in a safe way. This prevents access to local system contents by malicious JavaScript code.
  • 7. 4) Validate All Inputs Problem statement โ€ข All the data directly entered by users should be treated as untrusted. โ€ข An application should check that this data is both syntactically and semantically valid (in that order) before using it in any way โ€ข Additionally, the most secure applications treat all variables as untrusted and provide security controls regardless of source Vulnerability / Attacks โ€ข A1 โ€“ Injection attacks โ€ข Cross site scripting attacks โ€ข Invalidated redirects and forwards โ€ข Mobile: Client side injection โ€ข Security decisions via untrusted inputs Control explained โ€ข Use two general approaches to performing input syntax validation white listing preferred over black listing โ€ข Regular expressions offer a way to check whether data matches a specific pattern this is a great way to implement whitelist validation. โ€ข The security of the application should be enforced where that input is used, e.g., if input is used to build an HTML response, then the appropriate HTML encoding should be performed to prevent XSS attacks. Also, if input is used to build a SQL statement, Query Parameterization should be used.
  • 8. 5) Implement Identity and Authentication Controls Problem statement โ€ข Session management has to be secured in application flow to maintain the state of entity interacting with server โ€ข Only authorized users must be accessing the resources after enough authentication Vulnerability / Attacks โ€ข Broken authentication and session management โ€ข Poor Authorization and Authentication Control explained โ€ข Use Multi Factor Authentication โ€ข For Mobile Application: Token Based Authentication. avoid storing/persisting authentication credentials locally on the device. Instead, perform initial authentication using the username and password supplied by the user, and then generate a shortlived access token which can be used to authenticate a client request without sending the user's credentials. โ€ข Implement Secure Password Storage using cryptography controls โ€ข Implement Secure Password Recovery Mechanism โ€ข Session: Generation and Expiration: On any successful authentication and reauthentication the software should generate a new session and session id. โ€ข Mandatory to set expiration timeouts for every session, after a specified period of inactivity. โ€ข Reauthentication for Sensitive Features
  • 9. 6) Implement Access Controls Problem statement โ€ข Access Control is one of the main areas of application security design that must be heavily thought through up front, especially when addressing requirements like multitenancy and horizontal (data specific) access control Vulnerability / Attacks โ€ข Insecure direct object reference โ€ข Missing function level access controls โ€ข Poor authorization and authentication Control explained โ€ข Force All Requests to go Through Access Control Checks โ€ข Deny by Default โ€ข Principle of Least Privilege: each user or system component should be allocated the minimum privilege required to perform an action for the minimum amount of time โ€ข Avoid Hard Coded Access Control Checks: enforcement layer (checks in code) and your access control decision making process (the access control "engine") should be separated when possible โ€ข Code to the Activity: Consider checking if the user has access to that feature in code, as opposed to checking what role the user is in code โ€ข Server side Trusted Data Should Drive Access Control. Policy data such as a user's role or an access control rule should never be part of the request
  • 10. 7) Protect Data Problem statement โ€ข Access Control is one of the main areas of application security design that must be heavily thought through up front, especially when addressing requirements like multitenancy and horizontal (data specific) access control Vulnerability / Attacks โ€ข Sensitive data exposure โ€ข Mobile: Insecure data storage Control explained โ€ข Classify and Encrypt Data at rest. Develop your own crypto algorithm & key size should be optly chosen โ€ข Encrypt Data in Transit. TLS is by far the most common and widely supported model used by web applications for encryption in transit โ€ข Implement Protection in Transit โ€ข Mobile Application: Secure Local Storage. Avoid storing the sensitive data & authentication credentials, access token, etc. on local device
  • 11. 8) Implement Logging and Intrusion Detection Problem statement โ€ข Logging is used in BIA, Monitoring, Forensics, compliance and intrusion detection โ€ข It must be designed properly from early SDLC stage Vulnerability / Attacks โ€ข All OWASP top 10 โ€ข Mobile: Unintended data leakage Control explained โ€ข Ensure proper level of logging โ€ข Follow a common logging approach within the system and across systems where possible to make correlation easy โ€ข Make sure to always log the timestamp and identifying information like the source IP and userid, but be careful not to log private or confidential data or opt out data or secrets โ€ข Design proper positioning of IDS sensors and management
  • 12. 9) Leverage Security Frameworks and Libraries Problem statement โ€ข Starting from scratch when it comes to developing security controls for every web application, web service or mobile application leads to wasted time and massive security holes. Vulnerability / Attacks โ€ข All OWASP top 10 particularly those based on syntactically incorrect input Control explained โ€ข When possible, the emphasis should be on using the existing secure features of frameworks rather than importing third party libraries. It is preferable to have developers take advantage of what they're already using instead of forcing yet another library on them โ€ข Not all the frameworks are completely secured hence it is important to build in additional security where possible, updating frequently and verifying them for security early and often like any other software you depend upon
  • 13. 10) Errors and exceptions handling Problem statement โ€ข Implementing correct error and exception handling isn't exciting, but like input data validation, it is an important part of defensive coding, critical to making a system reliable as well as secure. โ€ข Mistakes in error handling can lead to different kinds of security vulnerabilities Vulnerability / Attacks โ€ข All OWASP top 10 Control explained โ€ข Itโ€™s recommended to manage exceptions in a centralized manner to avoid duplicated try/catch blocks in the code, and to ensure that all unexpected behaviors are correctly handled inside the application. โ€ข Ensure that error messages displayed to users do not leak critical data, but are still verbose enough to explain the issue to the user. โ€ข Ensure that exceptions are logged in a way that gives enough information for Q/A, forensics or incident response teams to understand the problem.
  • 14. Sameer Paradia (CGEIT, CISM, CISSP) (sameer_m_paradia@yahoo.com) Practicing IT Security Services and Outsourcing for past 24+ years Photo acknowledgment: https://www.flickr.com/photos/babalas_shipyards/5339531237/in/photostream/ http://www.flickr.com/photos/forgetmeknottphotography/7003899183/sizes/l/in/photost

Editor's Notes

  1. Possibility of Injection attacks due to output encoding like Cross Site Scripting (HTML entity encoding, JavaScript hex encoding, etc). Applications input encoding injection like command injection (Unix command encoding, Windows command encoding), LDAP injection (LDAP encoding) and XML injection (XML encoding).
  2. Syntax validity means that the data is in the form that is expected. For example, an application may allow a user to select a four digit โ€œaccount IDโ€ to perform some kind of operation. The application should assume the user is entering a SQL injection payload, and should check that the data entered by the user is exactly four digits in length, and consists only of numbers (in addition to utilizing proper query parameterization). Semantic validity means that the data is meaningful: In the above example, the application should assume that the user is maliciously entering an account ID the user is not permitted to access. The application should then check that the user has permission to access said account ID. Input validation must be wholly serverside: clientside controls may be used for convenience. For example, JavaScript validation may alert the user that a particular field must consist of numbers, but the server must validate that the field actually does consist of numbers. Blacklisting vs Whitelisting There are two general approaches to performing input syntax validation, commonly known as blacklisting and whitelisting: โ— Blacklisting attempts to check that a given user input does not contain โ€œknown to be maliciousโ€ content. This is similar to how an antivirus program will operate: as a first line of defense, an antivirus checks if a file exactly matches known malicious content, and if it does, it will reject it. This tends to be the weaker security strategy. โ— Whitelisting attempts to check that a given user input matches a set of โ€œknown goodโ€ inputs. For example, a web application may allow you to select one of three cities the application will then check that one of these cities has been selected, and rejects all other possible input. Character based whitelisting is a form of whitelisting where an application will check that user input contains only โ€œknown goodโ€ characters, or matches a known format. For example, this may involve checking that a username contains only alphanumeric characters, and contains exactly two numbers. When building secure software, whitelisting is the generally preferred approach Blacklisting is prone to error and can be bypassed with various evasion techniques (and needs to be updated with new โ€œsignaturesโ€ when new attacks are created).