Hackernoon logoOWASP Top 14 Security Practices For Software Developers by@gtmars.com

OWASP Top 14 Security Practices For Software Developers

image
Mr.Vic Hacker Noon profile picture

@gtmars.comMr.Vic

Founder of gtmars.com & plan2trip.com. Sharing knowledge in the digital world about Cybersecurity

★ The objective of this guide is to provide a comprehensive review of the security principles with limited scope in terms of information. The primary goal of the software developing team is to use the available information resource to provide and build secure applications for your business and software operations. It could be obtained through the industry-standard implementation of security controls.

★ This section specifically focuses on web applications and application infrastructure security, which can be applied on any deployment platform. This checklist is defined to help in developing high-level security elements and helps to overcome common vulnerability scenarios.

★ The key factors to consider that client-side controls such as client-based input validation, hidden fields, interface controls upon developing applications.

★ An attacker can use a variety of tools to conduct an attack against the applications, flash, java applets, and other client-side objects can be decompiled and analyzed for extensive flaws present in the app. Sometimes, developers feel challenging to discover vulnerabilities due to the scope of the software or programming languages.

image

Figure 1. Secure Coding Practice.

Information Collection Techniques:

The Information collection techniques are another integral part of the vulnerability management process, these are the following assessment methodologies that can be performed within an organization to discover a vulnerability, assess, and audit the physical and virtual infrastructure of the network. The industry standard Vulnerability Scanning Tools and controllers are used in this Information and data collection section.

  • ⍟ Vulnerability scanning
  • ⍟ Web application assessment
  • ⍟ Phishing assessment
  • ⍟ Network mapping
  • ⍟ wireless assessment
  • ⍟ Database assessment
  • ⍟ Operating system security assessment (OSSA), and
  • ⍟ Penetration testing.

Depending on the nature of the Software security flaws, it can be introduced at any stage of the software development lifecycle, including to any or all of the following:

  • (i) Not identifying security requirements upfront.
  • (ii) Creating conceptual designs that have logic errors.
  • (iii) Using poor coding practices that introduce technical vulnerabilities.
  • (iv) Deploying the software improperly and
  • (v) Introducing flaws during maintenance or updating.

1 Input Validation:

image

Figure 2. Input Validation.

2. Output Encoding:

image

Figure 3. Output Encoding.

3. Cryptographic Practices:

image

Figure 4. Cryptographic Practices.

4. Communication Security:

image

Figure 5. Communication Security.

5. Authentication and Password Management:

image

Figure 6. Authentication and Password Management.

image

Figure 6. Authentication and Password Management.

6. Session Management:

image

Figure 7. Session Management.

7. Access Control:

image

Figure 8. Access Control.

8. Memory Management:

image

Figure 9. Memory Management.

9. Database Security:

image

Figure 10. Database Security.

10. System Configuration:

image

Figure 11. System Configuration.

11. File Management:

image

Figure 12. File Management.

12. Error Handling and Logging:

image

Figure 13. Error Handling and Logging.

13. Data Protection:

image

Figure 14. Data Protection.

14. General Coding Practices:

image

Figure 15. General Coding Practices.

Conclusion:

★ The public and private sector organizations integrate a vulnerability management framework and secure coding practices successfully into their program to ensure a smooth onboarding and development of any software applications. It helps to identify, defend against any threats, and emerging vulnerability.

Deploying a VMF is all about managing risk, it allows to locate the risk and remediate the required solution to reduce the risk further causing damage to the IT system or its applications. The technical objectives can be met by deploying industry-recommended tools to perform vulnerability scanning. Finally, an appropriate set of measures, and controls to be taken when defining your scope for successful results in the software development life cycle (SDLC).

Refer further to understand how to integrate risk management into SDLC.

What Is Risk Management And How To Integrate It Into SDLC: Best Explanation Ever

Quick Reference: OWASP

Quote of the day: 不挑担子不知重,不走长路不知远 (Bù tiāo dànzi bùzhī zhòng, bù zǒu zhǎng lù bùzhī yuǎn)

Explanation: If you don’t carry a burden, you don’t know how heavy it is. If you don’t walk a long way, you don’t know how far to go

Thanks for reading!

Have a pleasant day!

Also published at https://gtmars.medium.com/top-14-owasp-secure-coding-practices-for-software-developers-5daef14734eb

Mr.Vic Hacker Noon profile picture
by Mr.Vic @gtmars.com. Founder of gtmars.com & plan2trip.com. Sharing knowledge in the digital world about CybersecuritySpace Industry

Tags

Join Hacker Noon

Create your free account to unlock your custom reading experience.