Introduction
Introduction
Security Overview
What is security
Why security matters
What is a hacker
Total security is unachievable
Get in the security mind-set
Write a security policy
General Security Principles
Least privilege
Simple is more secure
Never trust users
Expect the unexpected
Defense in depth
Security through obscurity
Blacklisting and whitelisting
Map exposure points and data passageways
Filtering Input, Controlling Output
Regulating requests
Validating input
Sanitizing data
Labeling variables
Keeping code private
Keeping credentials private
Keeping error messages vague
Smart logging
The Most Common Attacks
Cross-site scripting (XSS)
Cross-site request forgery (CSRF)
SQL injection
URL manipulation
Faked requests and forms
Cookie visibility and theft
Session hijacking
Session fixation
Remote system execution
File-upload abuse
Denial of service
Encryption and User Authentication
Password encryption
Salting passwords
Password requirements
Brute-force attacks
Using SSL for login
Protecting cookies
Regulating access privileges
Handling forgotten passwords
Multi-factor authentication
Other Areas of Concern
Credit card payments
Regular expression flaws
Conversions and transformations
Buffer overflows
Source code managers
Database security
Server security
Conclusion
Goodbye