06-Secure SDLC
06-Secure SDLC
Contents
• What causes poor security?
• Secure SDLC: The roadmap
• Security considerations during various phases of
SDLC
• Application Security Verification Standard (ASVS)
Secure SDLC:
The Roadmap
Clearly defined roles and
responsibilities
Secure SDLC
Automated Policy,
Security Secure Design and manual Security Environment regulation, and
requirements Principles code reviews testing hardening compliance
SECURITY CONSIDERATIONS
DURING REQUIREMENTS STAGE
Automated Policy,
Security Secure Design and manual Security Environment regulation, and
requirements Principles code reviews testing hardening compliance
SECURITY CONSIDERATIONS
DURING SOFTWARE DESIGN STAGE
• Defense in Depth
- Multilayered security approach
- Geographical and technical diversity
- For example, input validation at frond end, business logic,
and back end.
06/15/2025 Application Security
22
Requirements Design Development Testing Deployment Operations
Automated Policy,
Security Secure Design and manual Security Environment regulation, and
requirements Principles code reviews testing hardening compliance
SECURITY CONSIDERATIONS
DURING DEVELOPMENT STAGE
SpotBugs
• Open-source tools
- SpotBugs (previously known as FindBugs)
- Many others
V2
V1
V3 V3
V3 Vx Example of False Positive
…
Static analysis
Vn
Vx
V4 Vn
Application Security
49
Automated Policy,
Security Secure Design and manual Security Environment regulation, and
requirements Principles code reviews testing hardening compliance
SECURITY CONSIDERATIONS
DURING TESTING STAGE
Security Testing
• Security test cases
• Abuse cases
- Document scenarios that must not occur
- Think like an attacker
Security Testing
• Security test cases
1. Check for SQL injection attacks.
2. Secure pages should use the HTTPS protocol.
3. Page crash should not reveal application or server info.
4. Escape special characters in the input.
5. Error messages should not reveal any sensitive information.
6. All credentials should be transferred over an encrypted channel.
7. Test password security and password policy enforcement.
8. Check application logout functionality.
9. Check for Brute Force Attacks.
10. Cookie information should be stored in encrypted format only.
Security Testing
• Abuse cases
- examples
Security Testing
• Automated unit testing to save time and
resources
• e.g., JUnit for Java platform
Pilfering
Covering Tracks
Denial of Service
06/15/2025
62
Automated Policy,
Security Secure Design and manual Security Environment regulation, and
requirements Principles code reviews testing hardening compliance
SECURITY CONSIDERATIONS
DURING DEPLOYMENT STAGE
Automated Policy,
Security Secure Design and manual Security Environment regulation, and
requirements Principles code reviews testing hardening compliance
SECURITY CONSIDERATIONS
DURING OPERATIONS STAGE