10 phương thức tấn công cơ sở dữ liệu

NH| 18/01/2017 15:40
Theo dõi ICTVietnam trên

Do lưu giữ những thông tin quan trọng nên cơ sở dữ liệu luôn nằm trong tầm ngắm của nhiều tin tặc. Bài viết giới thiệu một số dạng tấn công phổ biến ảnh hưởng đến an toàn cơ sở dữ liệu.

1.  Lạm dụng quyền vượt mức

Khi người dùng (hay ứng dụng) được gán các đặc quyền truy nhập cơ sở dữ liệu vượt quá các yêu cầu trong chức năng công việc của họ, thì những đặc quyền này có thể bị lạm dụng cho các mục đích xấu. Ví dụ, một người phụ trách cơ sở dữ liệu của trường đại học với công việc là thay đổi các thông tin liên lạc của sinh viên, người này có thể lạm dụng quyền của mình với quyền cập nhật cơ sở dữ liệu để sửa đổi điểm của sinh viên (trái phép).

Một lý do đơn giản là những quản trị viên cơ sở dữ liệu vì bận rộn với công việc quản trị của mình nên không có thời gian để định nghĩa và cập nhật cơ chế kiểm soát quyền truy nhập mịn cho mỗi người dùng. Kết quả là một số lượng lớn người dùng được gán các đặc quyền truy nhập mặc định vượt xa so với yêu cầu công việc của họ.

Giải pháp cho hiểm họa cơ sở dữ liệu này, đó là sử dụng cơ chế kiểm soát truy nhập mức truy vấn (Query-level). Cơ chế này sẽ hạn chế các đặc quyền cơ sở dữ liệu bằng những toán tử SQL (SELECT, UPDATE,…) và dữ liệu được yêu cầu một cách tối thiểu.

2.  Lạm dụng quyền hợp pháp

Người dùng lạm dụng các đặc quyền hợp pháp của mình để thực hiện những mục đích không hợp pháp.

Giải pháp cho hiểm họa này chính là kiểm soát truy nhập cơ sở dữ liệu cần áp dụng cho không chỉ các truy vấn cụ thể như được mô tả ở trên, mà còn áp dụng cho bối cảnh xung quanh truy nhập cơ sở dữ liệu. Bằng cách bắt buộc tuân thủ chính sách cho các ứng dụng khách, thời gian trong ngày, vị trí,… thì có thể nhận dạng được những người dùng đang sử dụng các quyền truy nhập hợp pháp của mình với hành động mờ ám, đáng nghi.

3. Nâng cấp quyền bất hợp pháp

Kẻ tấn công có thể dựa trên các điểm yếu trong phần mềm cơ sở dữ liệu để biến các đặc quyền truy nhập của một người dùng bình thường thành quyền truy nhập của một người quản trị. Những điểm yếu này có thể tìm thấy trong các thủ tục được lưu, trong các hàm được xây dựng bên trong, trong việc thực thi giao thức, thậm chí trong các câu lệnh SQL.

Hiểm họa này có thể bị ngăn chặn bằng việc kết hợp các hệ thống ngăn chặn xâm nhập (IPS) và kiểm soát truy nhập mức truy vấn. IPS sẽ kiểm tra lưu lượng cơ sở dữ liệu để nhận ra các mẫu phù hợp với những điểm yếu đã biết. Chẳng hạn, với một hàm có điểm yếu đã biết, thì một IPS có thể chặn tất cả các truy nhập tới hàm đó, hoặc (nếu có thể) chỉ chặn những truy nhập (của các tấn công) tới hàm này.

4.  Lợi dụng các điểm yếu nền tảng

Các điểm yếu trong hệ điều hành bên dưới (Windows 2000, UNIX, …) và các điểm yếu trong các dịch vụ được cài đặt trên một máy chủ cơ sở dữ liệu có thể dẫn tới truy nhập bất hợp pháp, sự sửa đổi dữ liệu hay từ chối dịch vụ. Chẳng hạn, sâu Blaster lợi dụng một điểm yếu của Windows 2000 để tạo ra các điều kiện cho tấn công từ chối dịch vụ.

Để bảo vệ các tài nguyên cơ sở dữ liệu tránh khỏi các tấn công nền tảng, cần thiết phải kết hợp giữa việc cập nhật (các bản vá) phần mềm thường xuyên và sử dụng hệ thống ngăn chặn xâm nhập (IPS). Các nhà cung cấp luôn đưa ra những bản vá cho các điểm yếu trong nền tảng cơ sở dữ liệu. Tuy nhiên, các doanh nghiệp cập nhật và thực thi các phần mềm này theo định kỳ. Khi đó, giữa các chu kỳ cập nhật này, cơ sở dữ liệu không được bảo vệ. Thêm vào đó, vấn đề tương thích đôi khi không cho phép các cập nhật phần mềm này được hoàn chỉnh. Để giải quyết những vấn đề này, cần phải sử dụng IPS. Như mô tả ở trên, IPS kiểm tra lưu lượng cơ sở dữ liệu và xác định được những tấn công nhắm vào các điểm yếu đã biết.

5. Tấn công SQL Injection

Trong một tấn công SQL Injection, kẻ tấn công thường chèn ( hay “tiêm”) các mệnh đề cơ sở dữ liệu bất hợp pháp vào một nguồn dữ liệu SQL dễ bị tổn thương. Thường nguồn dữ liệu đích bao gồm các thủ tục được lưu và các tham số đầu vào của ứng dụng Web. Các nguồn này bị tiêm vào những mệnh đề bất hợp pháp, sau đó chúng được truyền tới cơ sở dữ liệu và được xử lý tại đây. Với SQL Injection, kẻ tấn công có thể đạt được truy nhập không giới hạn tới toàn bộ cơ sở dữ liệu.

Có thể sử dụng kết hợp ba kỹ thuật để chống SQL Injection một cách hiệu quả là: IPS, kiểm soát truy nhập mức truy vấn và sự tương quan sự kiện. IPS có thể xác định các thủ tục được lưu chứa điểm yếu hoặc những chuỗi SQL injection. Các nhà quản trị an toàn nếu chỉ tin cậy vào một mình IPS sẽ luôn nhận được hàng loạt các cảnh báo là SQL injection “có thể đang tồn tại”. Bằng cách tương quan một dấu hiệu của SQL injection với một xâm nhập vào kiểm soát truy nhập mức truy vấn thì có thể xác định được tấn công với độ chính xác cao.

6. Lợi dụng dấu vết kiểm toán yếu

Đối với bất kỳ hoạt động nào liên quan đến cơ sở dữ liệu, cần thiết phải ghi lại một cách tự động tất cả các giao dịch cơ sở dữ liệu nhạy cảm và/hoặc các giao dịch bất thường. Khi chính sách kiểm toán cơ sở dữ liệu yếu sẽ dẫn đến những rủi ro nghiêm trọng cho tổ chức với nhiều mức độ khác nhau.

Các cơ chế kiểm toán là tuyến hàng rào bảo vệ cơ sở dữ liệu cuối cùng. Nếu kẻ tấn công có thể phá vỡ các hàng rào khác thì cơ chế kiểm toán dữ liệu vẫn có thể xác định sự tồn tại của một xâm nhập sau những hành động của kẻ tấn công trước đó. Những vết kiểm toán thu được tiếp tục có thể dùng để xác định người dùng nào vừa thực hiện các hành động này, đồng thời qua vết kiểm toán có thể thực hiện phục hồi lại hệ thống.

Cơ chế kiểm toán yếu đồng nghĩa với việc hệ thống không thể ghi lại đầy đủ những hành động của người dùng, dẫn đến việc không thể phát hiện và ngăn chặn kịp thời những hành động tấn công của người dùng hoặc một nhóm người dùng. Do vậy, kiểm toán là cơ chế quan trọng mà mọi hệ thống cần có và cần thiết phải có cơ chế kiểm toán mạnh đảm bảo an toàn thông tin hay an toàn cơ sở dữ liệu cho mọi hệ thống.

7. Tấn công từ chối dịch vụ

Tấn công từ chối dịch vụ (DoS) là một loại tấn công trong đó các truy nhập của người dùng hợp pháp vào các ứng dụng mạng hay vào dữ liệu sẽ bị từ chối. Các điều kiện từ chối dịch vụ có thể được tạo ra qua nhiều kỹ thuật (nhiều trong số đó liên quan đến các điểm yếu nền tảng). Ví dụ, tấn công D0S có thể dựa trên điểm yếu nền tảng cơ sở dữ liệu để phá hủy một máy chủ. Ngoài ra còn có một số kỹ thuật DoS phổ biến khác như: sửa đổi dữ liệu, làm lụt mạng (network flooding), và làm quá tải tài nguyên máy chủ (bộ nhớ, CPU,…). Trong đó, làm quá tải tài nguyên là một kỹ thuật phổ biến trong môi trường cơ sở dữ liệu.

Để ngăn chặn tấn công này, cần yêu cầu bảo vệ ở nhiều mức khác nhau, như: mức mạng, mức ứng dụng và mức cơ sở dữ liệu. Trong đó, một số kỹ thuật bảo vệ mức cơ sở dữ liệu để chống tấn công DOS bao gồm: kiểm soát tốc độ kết nối, kiểm soát giao thức, kiểm soát truy nhập truy vấn, và kiểm soát thời gian phản hồi.

8. Lợi dụng các điểm yếu trong giao thức giao tiếp cơ sở dữ liệu

Các nhà cung cấp cơ sở dữ liệu phát hiện ra một số lượng ngày càng tăng các điểm yếu an toàn trong các giao thức giao tiếp cơ sở dữ liệu. Chẳng hạn 4 trong 7 điểm yếu về giao thức trong IBM DB2 đã được xác định và sửa chữa, 11 trong số 23 điểm yếu cơ sở dữ liệu liên quan đến giao thức đã được xác định trong Oracle gần đây. Sâu SQL Slammer2 cũng khai thác điểm yếu trong giao thức của Microsoft SQL Server để gây ra tấn công từ chối dịch vụ. Ngoài ra, các hoạt động của giao thức không hề được lưu lại trong các vết kiểm toán cho nên càng gây khó khăn cho việc phát hiện lỗi và phát hiện các tấn công.

Có thể giải quyết tấn công này bằng công nghệ phê duyệt giao thức. Công nghệ này sẽ phân tích lưu lượng cơ sở dữ liệu cơ bản và so sánh nó với lưu lượng thông thường.Trong trường hợp lưu lượng hiện tại không phù hợp với lưu lượng cơ sở dữ liệu như mong đợi thì hệ thống sẽ phát ra cảnh báo, thậm chí là chặn luôn hành động đang thực hiện.

9. Lợi dụng sự xác thực yếu

Trong một hệ thống chứa lược đồ xác thực yếu, kẻ tấn công dễ dàng có thể chiếm lấy định danh của những người dùng cơ sở dữ liệu hợp pháp bằng cách lấy cắp thẻ đăng nhập của họ. Kẻ tấn công có thể sử dụng nhiều chiến lược khác nhau để lấy được thẻ đăng nhập của người dùng hợp pháp.

Để phòng chống loại tấn công này, chúng ta cần thực hiện một số cơ chế:

- Xác thực mạnh: Để ngăn chặn kẻ tấn công lợi dụng xác thực yếu, hệ thống cần sử dụng các chính sách và công nghệ xác thực mạnh nhất. Nên sử dụng cơ chế xác thực hai nhân tố (như: token, chứng chỉ, sinh trắc,…). Tuy nhiên, các cơ chế xác thực hai nhân tố thường có chi phí đắt và khó sử dụng hơn nên trong thực tế chúng được sử dụng không nhiều. Với trường hợp này, cần sử dụng chính sách xác thực mạnh cho username/password (như: độ dài tối thiểu, đa dạng ký tự, khó đoán,…).

- Tích hợp danh bạ: Để các cơ chế xác thực mạnh được sử dụng rộng rãi và dễ dàng, nên tích hợp chúng với cơ sở danh bạ của doanh nghiệp. Cơ sở danh bạ cho phép một người dùng có thể sử dụng một tập thẻ đăng nhập cho nhiều cơ cở dữ liệu và ứng dụng. Từ đó làm cho hệ thống xác thực hai nhân tố được sử dụng hiệu quả hơn và người dùng có thể dễ dàng ghi nhớ việc cần phải thay đổi mật khẩu thường xuyên.

10. Lợi dụng sự sơ hở của dữ liệu dự phòng

Chúng ta thấy rằng, trong công tác sao lưu, dự phòng cơ sở dữ liệu, người thực hiện thường lơ là không bảo vệ các phương tiện lưu trữ cơ sở dữ liệu dự phòng một cách đầy đủ. Kết quả là, có rất nhiều băng đĩa sao lưu cơ sở dữ liệu và các đĩa cứng của nhiều hệ thống bị đánh cắp.

Ngăn chặn sơ hở dữ liệu dự phòng

Tất cả các bản sao cơ sở dữ liệu cần thiết phải được mã hóa. Một vài nhà cung cấp khẳng định rằng, các sản phẩm DBMS tương lai của họ sẽ hỗ trợ các bản sao cơ sở dữ liệu được mã hóa.

Nổi bật Tạp chí Thông tin & Truyền thông
Đừng bỏ lỡ
10 phương thức tấn công cơ sở dữ liệu
POWERED BY ONECMS - A PRODUCT OF NEKO