Web Security Best Practices
76%
of applications have security vulnerabilities
$4.35M
average cost of a data breach
OWASP Top 10 Security Risks
Injection Attacks
SQL, NoSQL, OS, and LDAP injection flaws
// Vulnerable Code
$query = "SELECT * FROM users WHERE username = '$username'";
// Secure Code
$stmt = $pdo->prepare("SELECT * FROM users WHERE username = ?");
$stmt->execute([$username]);
Broken Authentication
Session management and authentication flaws
- Implement MFA
- Secure password storage
- Session timeout
Cross-Site Scripting (XSS) Prevention
// Unsafe output
echo $userInput;
// Safe output
echo htmlspecialchars($userInput, ENT_QUOTES, 'UTF-8');
// Content Security Policy
header("Content-Security-Policy: default-src 'self';");
Essential Security Headers
X-Frame-Options
X-Frame-Options: SAMEORIGIN
Prevents clickjacking attacks
X-XSS-Protection
X-XSS-Protection: 1; mode=block
Enables browser's XSS filtering