· The risks caused by unsecure applications: application vulnerabilities and associated threats
· Examples of application layer attacks and associated risks
· Security infrastructure and how it helps to protect the application
· Ensure data confidentiality and data integrity
· Symmetric encryption
· Asymmetric encryption
· Message hash functions and HMAC
· Digital signatures and digital certificates
· How to secure the data
· Crypto++ examples
· Confidentiality best practices
· Passwords including password management
· Challenge-resp authentication and tokens
· One-time passwords (OTP) and OTP tokens
· Smart cards and public key technology
· Password storage and management
· Brute force and dictionary attacks
· Biometric authentication
· Two factor authentication
· Ticket based authentication
· Digital certificates
· PKI / PAM / RADIUS / ID Management
· Coding vulnerabilities
· Business logic vulnerabilities
· Server side validation
· Client side validation
· Input validation using positive security logic
· Input validation using negative security logic
· Canonicalization and evasion
· Injection attacks and countermeasures
· The principle of least privileges
· Access control matrix
· Discretionary Access Control (DAC)
· Mandatory Access Control (MAC)
· Role Based Access Control (RBAC)
· Distributed enforcement model with centralized management
· The need
· Central logging
· Auditing and log analysis
· Vulnerability, threat and risk
· Risk analysis and risk mitigation
· Security risks
· Identifying threats
· STRIDE threat model and threat modeling
· DREAD and risk management
· Responding to threats (risk mitigation)
· The Methodology
· Integrating security requirements
· Secure design
· Secure coding
· Security testing
· Security in deployment, support and maintenance
· Security policy management
· Guidelines to designing secure applications
· Reducing the attack surface
· Identifying trusts and secrets
· Microsoft threat analysis and modeling tool
· Pattern and practice check lists
· Creating a threat model
· Business logic vulnerabilities
· Coding vulnerabilities
· Web application vulnerabilities
· XML encryption
· XML digital signatures
· SAML
· XCAML
· Web service security
· SSL
· IPSec
· Summary
· Q&A
· Course’s Evaluation