Top Ten 2017
- A1-Injection
- A2-Broken Authentication and Session Management
- A3-Cross-Site Scripting (XSS)
- A4-Broken Access Control
- A5-Security Misconfiguration
- A6-Sensitive Data Exposure
- A7-Insufficient Attack Protection
- A8-Cross-Site Request Forgery (CSRF)
- A9-Using Components with Known Vulnerabilities
- A10-Underprotected APIs
-
-
- A1-Injection
- A2-Broken Authentication and Session Management
- A3-Cross-Site Scripting (XSS)
- A4-Broken Access Control
- A5-Security Misconfiguration
- A6-Sensitive Data Exposure
- A7-Insufficient Attack Protection
- A8-Cross-Site Request Forgery (CSRF)
- A9-Using Components with Known Vulnerabilities
- A10-Underprotected APIs
-
OWASP Top Ten
1) Cross-Site Scripting (XSS)
2) Injection Flaws
4) Insecure Direct Object Reference
5) Cross Site Request Forgery (CSRF)
6) Information Leakage and Improper Error Handling
7) Broken Authentication and Session Management
8) Insecure Cryptographic Storage
9) Insecure Communications
10) Failure to Restrict URL Access
The OWASP Top Ten
Part 0: The OWASP Top Ten and ESAPI
Part 1: The OWASP Top Ten and ESAPI – Part 1 – Cross Site Scripting (XSS)
Part 2: The OWASP Top Ten and ESAPI – Part 2 – Injection Flaws
Part 3: The OWASP Top Ten and ESAPI – Part 3 – Malicious File Execution
Part 4: The OWASP Top Ten and ESAPI – Part 4 – Insecure Direct Object Reference
Part 5: The OWASP Top Ten and ESAPI – Part 5 – Cross Site Request Forgery (CSRF)
Part 6: The OWASP Top Ten and ESAPI – Part 6 – Information Leakage and Improper Error Handling
Part 7: The OWASP Top Ten and ESAPI – Part 7 – Broken Authentication and Session Management
Part 8: The OWASP Top Ten and ESAPI – Part 8 – Insecure Cryptographic Storage
Part 9: The OWASP Top Ten and ESAPI – Part 9 – Insecure Communications
Part 10: The OWASP Top Ten and ESAPI – Part 10 – Failure to Restrict URL Access
eBook top 10 OWASP (tiếng Việt)
OWASP Top Ten (tiếng Việt)
I – Tổng quan
“OWASP Top 10” là danh sách được OWASP tổng hợp và công bố theo từng năm, nhằm đưa ra các cảnh báo rủi ro an ninh của ứng dụng web một cách ngắn gọn và xúc tích, giúp các doanh nghiệp, cá nhân xây dựng, phát triển, hay đánh giá các ứng dụng web có thể tự đưa ra được các giải pháp phù hợp, nâng cao bảo mật thông tin. Danh sách này luôn được thay đổi và cập nhật liên tục để phù hợp với sự thay đổi của các tác động ảnh hưởng từ các lỗ hổng.
Ta có thể thấy được có sự thay đổi cách thức xếp hạng và thay thế những mối rủi ro của “Top 10 OWASP năm 2010” và “Top 10 OWASP năm 2013” thông qua hình dưới:
Trong phiên bản năm 2013, OWASP đã thay đổi vị trí xếp hạng của A2, A3, A5, A6 và A8 trong phiên bản 2010. Vị trí A7 và A8 của phiên bản 2010 đã được gộp lại thành A6 trong phiên bản 2013 đồng thời có một nguy cơ mới được thêm vào phiên bản này là “A9 - Using Known Vulnerable Components”.
II – OWASP Top 10 – Rủi ro an ninh ứng dụng - 2013
1. A1 – Injection (lỗi nhúng mã)
1.1. Nguyên nhân
Các truy vấn đầu vào tại ứng dụng bị chèn thêm dữ liệu không an toàn dẫn đến mã lệnh được gởi tới máy chủ cơ sở dữ liệu.
1.2. Lỗ hổng dặc trưng
- SQL injection
- OS injection
- LDAP injection
- NoSQL injection
- …
1.3. Nguy cơ an ninh
- Truy cập dữ liệu bất hợp pháp
- Insert/update dữ liệu bất hợp lệ vào trong database.
- Thực hiện một số tấn công từ chối dịch vụ
2. A2 - Broken Authentication and Session Management
2.1. Nguyên nhân
Do những đoạn chương trình kiểm tra danh tính và quản lý phiên làm việc của người sử dụng thường hay được làm qua loa không đúng cách.
2.2. Lỗ hổng đặc trưng
- Session Fixation
- …
2.3. Nguy cơ an ninh
- Cho phép kẻ tấn công từ bên ngoài có thể truy cập vào những tài nguyên nội bộ trái phép (admin page, inside, control page …)
- Kẻ tấn công còn có thể thực hiện các hành vi nâng quyền quản trị hoặc tấn công phiên đăng nhập.
3. A3 - Cross-Site Scripting (XSS)
3.1. Nguyên nhân
Do sai sót trong khâu kiểm duyệt nội dung đầu vào dẫn đến việc các dữ liệu bất hợp pháp được gửi đến trình duyệt web mà không cần sự xác thực thông thường.
3.2. Lỗ hổng đặc trưng
- Cross-Site Scripting
- …
3.3. Nguy cơ an ninh
- Đánh cắp cookie/session
- Phát tán mã độc
4. A4 – Insecure Direct Object References (Đối tượng tham thiếu an toàn)
4.1. Nguyên nhân
Do việc phân quyền yếu các tập tin, thư mục hay cơ sở dữ liệu quan trọng dẫn đến việc người dùng có thể truy cập dữ liệu của người dùng khác.
4.2. Lỗ hổng dặc trưng
- Insecure Direct Object References…
4.3. Nguy cơ an ninh
- Kẻ tấn công có thể truy cập dữ liệu bất hợp pháp và thu thập các thông tin nhạy cảm như Credit Card, mã khách hàng, thông tin cá nhân, ...
- ...
5. A5 - Security Misconfiguration (Sai sót cấu hình an ninh)
5.1. Nguyên nhân
Do việc cấu hình an ninh lỏng lẻo tại các tầng trong kiến trúc web như nền tảng, OS, máy chủ ứng dụng, webserver, database, … khiến cho kẻ tấn công có thể khai thác vào các ứng dụng, ví dụ để lộ ra những thông tin quan trọng khi trao đổi các gói tin.
5.2. Lỗ hổng đặc trưng
- Error Codes
- Insecure Configuration Management
5.3. Nguy cơ an ninh
- Cho phép kẻ tấn công có quyền truy cập bất hợp pháp đến những chức năng hay dữ liệu hệ thống. Thậm chí kẻ tân công còn có thể chiếm quyền toàn bộ hệ thống nếu lấy được các thông tin tài khoản quản trị, …
6. A6 - Sensitive Data Exposure (Lộ lọt dữ liệu nhạy cảm)
6.1. Nguyên nhân
Các dữ liệu nhạy cảm không được lưu trữ và bảo vệ cẩn thận, dẫn đến khi bị kẻ tấn công khai thác gây ra những ảnh hưởng to lớn cho hệ thống máy chủ, doanh nghiệp và khách hàng.
6.2. Lỗ hổng đặc trưng
- Cleartext Storage of Sensitive Information
- Cleartext Transmission of Sensitive Information
6.3. Nguy cơ an ninh
- Kẻ tấn công có thể lấy được các thông tin nhạy cảm không được bảo vệ và sử dụng các thông tin đó để phục vụ cho cho các mục đích xấu.
7. A7 - Missing Function Level Access Control
7.1. Nguyên nhân
Do thiếu các điều khoản trong việc phân quyền quản trị các mức, dẫn đến việc kẻ tấn công có thể lợi dụng và truy ra các điểm yếu trên hệ thống hay lợi dụng để leo thangg đặc quyền.
7.2. Lỗ hổng đặc trưng
- Path Traversal
7.3. Nguy cơ an ninh
- Kẻ tấn công có thể lợi dụng để leo thang đặc quyền, từ đó có thể thực hiện các hành động với mục đích xấu.
8. A8 - Cross-Site Request Forgery (CSRF)
8.1. Nguyên nhân
Lợi dụng sơ hở của nạn nhân, kẻ tấn công có thể lừa nạn nhân thực hiện các hành động nguy hiểm mà nạn nhân không hề hay biết, ví dụ như chuyển tiền từ tài khoản nạn nhân sang tài khoản kẻ tấn công, thông qua các lỗ hổng XSS.
8.2. Lỗ hổng đặc trưng
- Cross-Site Request Forgery (CSRF)
8.3. Nguy cơ an ninh
- Kẻ tấn công có thể lừa nạn nhân thực hiện việc thay đổi dữ liệu mà chỉ nạn nhân được phép thay đổi hoặc thực thi những chức năng mà chỉ chính nạn nhân mới được phép thực thi.
9. A9 - Using Known Vulnerable Components
9.1. Nguyên nhân
Do việc sử dụng mà không kiểm duyệt các thư viện, plugin, module, ứng dụng… có tồn tại các lỗ hổng đã được công khai, từ đó kẻ tấn công có thể lợi dụng để tấn công vào hể thống và thực hiện các mục đích xấu.
9.2. Lỗ hổng đặc trưng
- Using Known Vulnerable Components
9.3. Nguy cơ an ninh
- Kẻ tấn công có thể khai thác các lỗ hổng để thực hiện các hành vi xấu như đánh cắp các dữ liệu nhạy cảm, chiếm quyền server,…
10. A10 - Unvalidated Redirects and Forwards
10.1. Nguyên nhân
Việc chuyển hướng không an toàn người dùng đến một đường dẫn bên ngoài có thể bị kẻ tấn công lợi dụng để chuyển hướng nạn nhân đến một trang đích được chuẩn bị sẵn của kẻ tấn công..
10.2. Lỗ hổng đặc trưng
- Open Redirects
10.3. Nguy cơ an ninh
- Đánh cắp dữ liệu người dùng hoặc các thông tin nhạy cảm
- Lừa nạn nhân cài đặt các phần mềm độc hại.