Mục lục
1. Lỗ hổng bảo mật là gì?
Lỗ hổng bảo mật (tiếng Anh: vulnerability) là một thuật ngữ quen thuộc trong lĩnh vực an toàn thông tin. Mặc dù có nhiều cách định nghĩa khác nhau, nhưng tất cả đều tập trung vào việc đề cập đến các điểm yếu.Trong đó, có thể là về mặt kỹ thuật hoặc phi kỹ thuật, tồn tại trong phần mềm, phần cứng, giao thức hoặc các hệ thống thông tin.
Dưới đây là một số định nghĩa về lỗ hổng bảo mật:
- Viện Tiêu chuẩn và Công nghệ Quốc gia (NIST) định nghĩa lỗ hổng bảo mật là điểm yếu trong hệ thống thông tin, quy trình bảo mật, kiểm soát nội bộ hoặc cách thức triển khai, có thể bị kẻ tấn công lợi dụng.
- Theo ISO 27005, lỗ hổng là điểm yếu của một tài sản hoặc nhóm tài sản có thể bị khai thác bởi một hoặc nhiều mối đe dọa trên mạng. Ở đây, tài sản bao gồm bất kỳ yếu tố nào có giá trị đối với tổ chức, ảnh hưởng đến hoạt động kinh doanh và tính liên tục của những hoạt động đó, bao gồm cả tài nguyên thông tin phục vụ sứ mệnh của tổ chức.
- Trong khi đó, IETF RFC 4949 mô tả lỗ hổng là một điểm yếu trong quá trình thiết kế, triển khai, vận hành hoặc quản lý hệ thống, có thể bị khai thác để vi phạm các chính sách bảo mật của hệ thống.
-
ENISA định nghĩa lỗ hổng bảo mật là sự tồn tại của một điểm yếu, lỗi thiết kế hoặc lỗi triển khai có thể dẫn đến các sự cố ngoài ý muốn, gây tổn hại đến bảo mật của hệ thống máy tính, mạng, ứng dụng hoặc các giao thức liên quan.
-
The Open Group mô tả lỗ hổng bảo mật như khả năng mà một mối đe dọa có thể vượt qua được các biện pháp phòng vệ của hệ thống.
-
Phân tích nhân tố về rủi ro thông tin cho rằng lỗ hổng là khả năng một tài sản sẽ không đủ sức chống lại các hành động từ một tác nhân đe dọa.
-
Theo ISACA, lỗ hổng bảo mật là bất kỳ điểm yếu nào trong thiết kế, triển khai, vận hành hoặc kiểm soát nội bộ của hệ thống.
- Website và ứng dụng web
- Ứng dụng di động (mobile)
- Thiết bị IoT
- Hệ điều hành và phần mềm
- Mã nguồn (source code) và API
- Cơ chế xác thực, giao thức truyền tải và mã hóa
- Hệ thống mạng và các thiết bị mạng
2. Nguyên nhân gây ra lỗ hổng
- Độ phức tạp: Hệ thống càng phức tạp thì khả năng xuất hiện lỗ hổng càng cao, do dễ xảy ra sai sót trong cấu hình hoặc truy cập ngoài ý muốn.
- Tính phổ biến: Các loại mã, phần mềm, hệ điều hành, và phần cứng phổ biến dễ trở thành mục tiêu tấn công hơn, vì kẻ tấn công có thể dễ dàng tìm thấy hoặc biết về các lỗ hổng đã được công bố.
- Mức độ kết nối: Thiết bị có mức độ kết nối cao với nhiều hệ thống hoặc mạng khác sẽ làm tăng nguy cơ bị khai thác lỗ hổng.
- Quản lý mật khẩu kém: Mật khẩu yếu dễ bị phá bằng tấn công brute-force, và việc sử dụng lại mật khẩu có thể khiến một vụ vi phạm dữ liệu lan rộng sang nhiều hệ thống khác.
-
Lỗi hệ điều hành: Giống như mọi phần mềm khác, hệ điều hành cũng có thể chứa lỗ hổng. Những hệ điều hành thiếu bảo mật, cho phép người dùng truy cập toàn quyền mặc định, có thể tạo điều kiện cho vi-rút và phần mềm độc hại thực thi các lệnh nguy hiểm.
-
Việc sử dụng Internet: Internet chứa nhiều phần mềm gián điệp và quảng cáo độc hại có thể tự động cài đặt trên máy tính mà người dùng không hay biết.
-
Lỗi phần mềm: Lập trình viên có thể vô tình hoặc cố ý để lại các lỗi trong phần mềm, và những lỗi này có thể bị khai thác bởi kẻ tấn công.
-
Đầu vào của người dùng không được kiểm tra: Nếu phần mềm hoặc trang web không xác thực kỹ đầu vào của người dùng, nó có thể cho phép thực thi các lệnh SQL không mong muốn, gây ra rủi ro bảo mật nghiêm trọng.
-
Con người: Yếu tố con người luôn là lỗ hổng lớn nhất trong bất kỳ tổ chức nào. Các cuộc tấn công phi kỹ thuật (social engineering) thường là mối đe dọa nguy hiểm nhất đối với đa số các tổ chức, vì chúng dựa vào sự thiếu cảnh giác của người dùng.
ĐỌC THÊM: TOP 3 cách Kiểm tra Trang Web lừa đảo tránh bị lộ thông tin tiền mất tật mang
3. Các lỗ hổng đã biết có nên được tiết lộ công khai hay không?
- Tiết lộ công khai ngay lập tức (full disclosure): Một số chuyên gia an ninh mạng ủng hộ việc công khai thông tin về các lỗ hổng ngay khi phát hiện. Họ cho rằng, mặc dù điều này có thể khiến các nhà cung cấp không kịp cập nhật bản vá và làm tăng nguy cơ bị khai thác bởi hacker, nhưng việc công khai sớm sẽ thúc đẩy các hành động bảo mật nhanh chóng hơn và khuyến khích việc vá lỗ hổng kịp thời.
- Tiết lộ có trách nhiệm (responsible disclosure): Một số chuyên gia không đồng tình với phương pháp full disclosure vì lo ngại rằng việc công khai lỗ hổng có thể dẫn đến việc các tác nhân xấu khai thác chúng. Họ cho rằng việc chỉ chia sẻ thông tin với các nhóm liên quan và giữ kín thông tin cho đến khi có bản vá sẽ giúp giảm nguy cơ lỗ hổng bị khai thác.
4. Sự khác biệt giữa lỗ hổng và rủi ro là gì?
4.1. Khi nào một lỗ hổng có thể bị khai thác?
4.2. Tấn công khai thác lỗ hổng zero-day là gì?
5. Quản lý lỗ hổng là gì?
- Quét lỗ hổng: Sử dụng các công cụ để tự động phát hiện các điểm yếu trong hệ thống hoặc ứng dụng.
- Kiểm thử xâm nhập: Tiến hành các cuộc tấn công giả lập để phát hiện các lỗ hổng bảo mật mà công cụ quét có thể bỏ sót.
- Google hack: Tìm kiếm các thông tin nhạy cảm hoặc lỗ hổng bảo mật thông qua các truy vấn tìm kiếm đặc biệt trên Google.
- Xác định các lỗ hổng: Phân tích kết quả từ các lần quét hệ thống mạng, kiểm thử xâm nhập, nhật ký tường lửa và các công cụ quét lỗ hổng để phát hiện sự bất thường, từ đó xác định các điểm yếu có thể bị khai thác trong một cuộc tấn công mạng.
- Xác minh lỗ hổng: Đánh giá xem lỗ hổng đã được phát hiện có thể bị khai thác hay không và xác định mức độ nghiêm trọng của lỗ hổng để hiểu rõ mức độ rủi ro liên quan.
- Giảm thiểu các lỗ hổng: Xác định các biện pháp đối phó và cách đánh giá hiệu quả của chúng trong trường hợp chưa có bản vá để giảm thiểu rủi ro từ lỗ hổng.
- Khắc phục lỗ hổng: Tiến hành cập nhật phần mềm hoặc phần cứng bị ảnh hưởng khi có bản vá hoặc bản sửa lỗi phù hợp.
Vì các cuộc tấn công mạng không ngừng phát triển, quản lý lỗ hổng cần được thực hiện liên tục và lặp đi lặp lại để đảm bảo rằng doanh nghiệp luôn được bảo vệ. Điều này giúp duy trì mức độ bảo mật cao và đối phó kịp thời với các mối đe dọa mới.
5.1. Quét lỗ hổng là gì?
Trình quét lỗ hổng là phần mềm được thiết kế để đánh giá máy tính, mạng hoặc ứng dụng nhằm phát hiện các lỗ hổng bảo mật đã biết. Những công cụ này có khả năng nhận diện các điểm yếu phát sinh từ lỗi cấu hình và lập trình trong hệ thống mạng. Chúng có thể thực hiện quét cả xác thực và không xác thực để phát hiện các lỗ hổng:
- Quét xác thực: Cho phép trình quét lỗ hổng truy cập trực tiếp vào các tài sản mạng thông qua các giao thức quản trị từ xa như Secure Shell (SSH) hoặc Remote Desktop Protocol (RDP) và xác thực bằng thông tin hệ thống được cung cấp. Phương pháp này cho phép trình quét tiếp cận dữ liệu chi tiết như các dịch vụ cụ thể và cấu hình hệ thống, từ đó cung cấp thông tin chính xác về hệ điều hành, phần mềm cài đặt, các vấn đề cấu hình và các bản vá bảo mật còn thiếu.
- Quét không xác thực: Thường dẫn đến việc nhận diện sai và thông tin không đáng tin cậy về hệ điều hành và phần mềm cài đặt. Phương pháp này thường được các kẻ tấn công mạng và các nhà phân tích bảo mật sử dụng để đánh giá tình hình bảo mật của các tài sản khi đối mặt với môi trường bên ngoài, cũng như để tìm kiếm khả năng rò rỉ dữ liệu.
5.2. Kiểm thử xâm nhập là gì?
Kiểm thử xâm nhập, hay còn gọi là pentest hoặc hack “có đạo đức” (ethical hacking), là quá trình kiểm tra một tài sản công nghệ thông tin để phát hiện các lỗ hổng bảo mật mà kẻ tấn công có thể khai thác. Kiểm thử xâm nhập có thể được thực hiện bằng cách sử dụng phần mềm tự động hoặc thông qua các phương pháp thủ công.
5.3. Google hack là gì?
- Lỗ hổng phần mềm: Các điểm yếu trong mã nguồn hoặc ứng dụng có thể bị khai thác để tấn công hệ thống.
- Cấu hình sai: Những lỗi trong cấu hình hệ thống hoặc dịch vụ đám mây dẫn đến việc lộ thông tin nhạy cảm hoặc tạo ra lỗ hổng bảo mật.
6. Cơ sở dữ liệu về lỗ hổng là gì?
- Thất bại trong triển khai ban đầu: Đây là những trường hợp mà việc triển khai hệ thống có vẻ hợp lý, nhưng thiếu kiểm tra nghiêm ngặt. Lỗ hổng này có thể cho phép kẻ tấn công xâm nhập, do kiểm soát bảo mật kém, mật khẩu yếu, hoặc cài đặt bảo mật mặc định, dẫn đến việc tài liệu nhạy cảm có thể bị truy cập công khai.
- SQL injection: Đây là một trong những lỗ hổng cơ sở dữ liệu phổ biến, thường được ghi nhận trong cơ sở dữ liệu về lỗ hổng. Các cuộc tấn công SQL injection cho phép kẻ tấn công can thiệp vào các truy vấn cơ sở dữ liệu và có thể dẫn đến việc truy xuất, thay đổi hoặc xóa dữ liệu nhạy cảm.
-
Cấu hình sai: Nhiều công ty không cấu hình chính xác các dịch vụ đám mây của họ, dẫn đến việc tạo ra lỗ hổng và khiến cho các dịch vụ này có thể bị truy cập công khai.
-
Kiểm toán không đầy đủ: Thiếu kiểm toán khiến việc xác định xem dữ liệu đã bị sửa đổi hoặc truy cập hay chưa trở nên khó khăn. Cơ sở dữ liệu về lỗ hổng đã chỉ ra rằng kiểm toán là một biện pháp quan trọng để ngăn chặn các cuộc tấn công mạng và bảo vệ dữ liệu.
7. Các ví dụ về lỗ hổng
- Phần cứng: Bao gồm các vấn đề liên quan đến vật lý như ẩm, bụi, bẩn, thiên tai, mã hóa kém hoặc lỗi firmware.
- Phần mềm: Có thể do các vấn đề như kiểm tra không đầy đủ, thiếu dấu vết kiểm toán, lỗi thiết kế, vi phạm an toàn bộ nhớ (như tràn bộ đệm, đọc quá mức, con trỏ lơ lửng), lỗi xác thực đầu vào (như SQL injection, cross-site scripting (XSS), directory traversal, email injection, tấn công format string, HTTP header injection, HTTP response splitting), lỗi nhầm lẫn đặc quyền (như clickjacking, giả mạo yêu cầu liên trang – cross-site request forgery), tranh đoạt điều khiển (như symlink race, lỗi thời gian kiểm tra đến thời gian sử dụng), tấn công qua kênh phụ (side channel attack), timing attack và lỗi giao diện người dùng (như đổ lỗi cho nạn nhân, tranh đoạt điều khiển, warning fatigue).
- Mạng: Bao gồm các vấn đề như đường truyền thông không được bảo vệ, tấn công trung gian, kiến trúc mạng không an toàn, thiếu xác thực hoặc xác thực mặc định.
- Nhân sự: Các yếu tố như chính sách tuyển dụng kém, thiếu nhận thức và đào tạo về bảo mật, tuân thủ kém về đào tạo bảo mật, quản lý mật khẩu kém hoặc tải xuống phần mềm độc hại qua tệp đính kèm email.
- Vị trí địa lý: Các vấn đề liên quan đến khu vực như thảm họa tự nhiên, nguồn điện không ổn định hoặc không có quyền truy cập thẻ khóa.
- Tổ chức: Bao gồm thiếu kiểm toán, kế hoạch liên tục, bảo mật hoặc kế hoạch ứng phó sự cố.
Tổng kết
Công ty Agency BMT – Marketing chuyên nghiệp
CÔNG TY TNHH TMDV VIETSTAR
Địa chỉ: 62 Bà Triệu, P. Tự An, Tp BMT, Tỉnh Đăklăk
Đường dây nóng: 091 657 1010
Website: www.vietstaragency.com