Lập trình An toàn là gì
Thực hành viết mã an toàn
Lập trình An toàn là tập hợp các thực hành và nguyên tắc để viết mã chống lại các cuộc tấn công và lỗ hổng.
Nguyên tắc chính
- Xác thực tất cả dữ liệu đầu vào
- Nguyên tắc quyền tối thiểu
- Phòng thủ theo chiều sâu
- Giá trị mặc định an toàn
- Thất bại an toàn
Lỗ hổng chính (OWASP Top 10)
- SQL Injection
- Cross-Site Scripting (XSS)
- Xác thực bị hỏng
- Lộ dữ liệu nhạy cảm
- XML External Entities (XXE)
Thực hành mã an toàn
- Truy vấn cơ sở dữ liệu có tham số
- Escape đầu ra
- Lưu trữ mật khẩu an toàn (bcrypt, Argon2)
- HTTPS mọi nơi
- Content Security Policy (CSP)
Công cụ
- SAST (phân tích tĩnh): SonarQube, Checkmarx
- DAST (phân tích động): OWASP ZAP, Burp Suite
- Quét phụ thuộc: Snyk, Dependabot
- Đánh giá mã tập trung bảo mật
Lợi ích
- Giảm rủi ro vi phạm
- Tuân thủ tiêu chuẩn (PCI DSS, HIPAA)
- Chi phí khắc phục lỗ hổng thấp hơn
- Bảo vệ danh tiếng công ty