Kiến trúc và tính năng của giải pháp giám sát hoạt động cơ sở dữ liệu

14:49 | 18/02/2020
Vũ Mạnh Hùng (Ngân hàng Vietinbank)

Việc giám sát hoạt động cơ sở dữ liệu là một trong những giải pháp bảo mật được nhiều tổ chức/ doanh nghiệp ứng dụng, đáp ứng nhu cầu kiểm soát tuân thủ và bảo mật dữ liệu. Bài báo này giới thiệu đôi nét về kiến trúc và tính năng của giải pháp giám sát hoạt động cơ sở dữ liệu.

Giám sát hoạt động cơ sở dữ liệu là gì?

Định nghĩa về DAM

Giám sát hoạt động cơ sở dữ liệu (Database Activity Monitoring – DAM) nắm bắt và ghi nhận các truy vấn SQL theo thời gian thực, bao gồm cả các hoạt động quản trị dữ liệu và có thể đưa ra cảnh báo trong trường hợp vi phạm chính sách. Những chức năng của DAM bao gồm:

Khả năng giám sát độc lập và kiểm tra các thao tác trên cơ sở dữ liệu, bao gồm cả thao tác của quản trị viên và các giao dịch vấn tin.

Khả năng lưu các nhật ký này ở ngoài cơ sở dữ liệu cần giám sát.

Khả năng tập hợp và liên kết các hành động cũng như chuẩn hóa các giao dịch từ nhiều hệ quản trị cơ sở dữ liệu (DBMS) khác nhau như Oracle, Microsoft, IBM.

Khả năng phân chia trách nhiệm cho các quản trị viên, giám sát các tác vụ của quản trị viên và ngăn chặn việc chỉnh sửa nội dung nhật ký trên cơ sở dữ liệu.

Khả năng giám sát thời gian thực và phát ra các cảnh báo vi phạm chính sách. Ví dụ, có thể tạo ra cảnh báo khi có quản trị viên nào đó thực hiện vấn tin từ 5 thông tin thẻ tín dụng trở lên.

Nhiều công cụ khác cung cấp một số mức độ giám sát cơ sở dữ liệu như công cụ quản trị sự kiện và thông tin bảo mật (SIEM), công cụ quản trị nhật ký (log management) hay công cụ quản trị cơ sở dữ liệu. Các sản phẩm DAM khác biệt bởi khả năng ghi nhận và phân tích các truy vấn SQL theo thời gian thực hoặc gần như thời gian thực mà không phụ thuộc vào quá trình ghi nhật ký của cơ sở dữ liệu cục bộ. Không dừng ở việc giám sát và cảnh báo đơn giản, các công cụ DAM mạnh còn có khả năng đánh giá rủi ro và quản trị thay đổi.

Ứng dụng của DAM

Các ứng dụng của DAM có thể kể đến như sau:

- Phân chia trách nhiệm của các quản trị viên bằng việc giám sát tất cả các hoạt động của họ và đưa ra các báo cáo theo yêu cầu của Đạo luật Sarbanes-Oxley. Đây là Đạo luật được thông qua bởi Quốc hội Mỹ, trong đó thiết lập các tiêu chuẩn liên quan đến vấn đề bảo vệ dữ liệu, áp dụng đối với các công ty đại chúng và đơn vị kế toán của Mỹ.

- Đưa ra cảnh báo nếu một ứng dụng truy vấn thông tin thẻ tín dụng từ cơ sở dữ liệu với số lượng kết quả vượt ngưỡng nào đó (thường > 1), bởi đó có thể là dấu hiệu của tấn công SQL injection.

- Đảm bảo một tài khoản dịch vụ chỉ truy cập đến cơ sở dữ liệu từ địa chỉ IP định trước và chỉ được chạy một tập nhỏ các truy vấn cho phép. DAM có thể cảnh báo một tài khoản dịch vụ truy cập vào cơ sở dữ liệu từ địa chỉ không xác định.

- Một số tổ chức mã hóa dữ liệu đồng thời sử dụng DAM để giám sát và cảnh báo truy cập thông tin thẻ tín dụng để đảm bảo tuân thủ tiêu chuẩn PCI. Mã hóa sẽ bảo vệ dữ liệu trên đường truyền vật lý còn DAM bảo vệ dữ liệu khỏi tấn công từ bên trong và một số dạng tấn công từ bên ngoài.

- Như một công cụ quản lý cấu hình và thay đổi, một số công cụ DAM tích hợp trực tiếp với các công cụ quản lý thay đổi bên ngoài để tra soát các thay đổi cơ sở dữ liệu được thực thi bởi SQL. Các công cụ khác có thể giám sát hoạt động của quản trị viên và cung cấp báo cáo quản lý thay đổi.

Kiến trúc giải pháp DAM

Kiến trúc cơ bản

Hình 1. Giải pháp DAM triển khai theo kiến trúc phân cấp

Một trong những thế mạnh chính của DAM là khả năng giám sát nhiều cơ sở dữ liệu chạy trên nhiều DBMS khác nhau. Công cụ DAM tập hợp thông tin thu thập từ nhiều nguồn vào một máy chủ trung tâm (central management server). Trong một số trường hợp, máy chủ trung tâm chủ động thu thập dữ liệu, nhưng cũng có trường hợp nó chỉ đơn giản là kho lưu trữ dữ liệu từ các công cụ thu thập gửi đến. Tùy theo yêu cầu của tổ chức mà có 03 lựa chọn triển khai DAM chủ yếu như sau:

- Máy chủ/Ứng dụng đơn: Một máy chủ hay ứng dụng đơn thực hiệc cả hai vai trò thu thập dữ liệu và quản lý dữ liệu.

- Kiến trúc 2 lớp: gồm một máy chủ quản lý trung tâm và các bộ gom dữ liệu (collector) từ xa. Máy chủ trung tâm không trực tiếp giám sát mà chỉ tập hợp dữ liệu từ các hệ thống, quản lý chính sách và phát ra cảnh báo. Các bộ gom dữ liệu từ xa sử dụng kỹ thuật thu thập dữ liệu nào đó và gửi dữ liệu trở lại máy chủ trung tâm.

- Kiến trúc phân cấp: Các điểm thu thập dữ liệu gắn với từng nghiệp vụ hoặc các máy chủ quản lý phân tán theo vùng địa lý, sau đó gửi báo cáo lên máy chủ quản lý trung tâm của doanh nghiệp. Mô hình phân cấp phù hợp nhất đối với các doanh nghiệp lớn thường có các đơn vị nghiệp vụ nằm ở các vùng địa lý khác nhau. Có thể cấu hình chỉ truyền một số loại thông tin nhất định giữa các tầng để quản lý dung lượng thông tin trao đổi hoặc phục vụ các yêu cầu về mặt chính sách và bảo mật của các đơn vị/vùng vật lý.

Dù có kiến trúc nào đi nữa, máy chủ trung tâm vẫn chịu trách nhiệm tập hợp tất cả các thông tin, đưa ra cảnh báo dựa trên chính sách và quản lý luồng quy trình, báo cáo và nhiều tính năng nâng cao khác.

Các kỹ thuật thu thập dữ liệu

Điểm quan trọng nhất của tất cả các giải pháp DAM là bộ gom dữ liệu làm nhiệm vụ giám sát cơ sở dữ liệu sau đó, lưu trữ cục bộ hoặc gửi đến máy chủ trung tâm tùy theo cấu hình và các quy tắc lọc. Tối thiểu bộ gom dữ liệu phải giám sát được lưu lượng truy vấn SQL (SQL traffic), được coi như tính chất khác biệt của DAM so với các ứng dụng quản lý nhật ký, SIEM và các công cụ giám sát cơ sở dữ liệu đơn thuần khác. Có 03 nhóm kỹ thuật thu thập dữ liệu chính như sau:

Giám sát mạng

Kỹ thuật này giám sát lưu lượng mạng của các truy vấn SQL, phân tích và lưu vào cơ sở dữ liệu của bộ gom dữ liệu. Các công cụ trước đây chỉ giám sát được các truy vấn vào trong dữ liệu (inbound SQL), còn hiện tại đa số đã giám sát được cả hai chiều.

- Ưu điểm: Không ảnh hưởng đến hiệu năng của cơ sở dữ liệu cần giám sát, có thể giám sát độc lập và không cần chỉnh sửa cơ sở dữ liệu, đồng thời giám sát được nhiều DBMS khác nhau cùng lúc.

- Nhược điểm: Vì không can thiệp được bên trong cơ sở dữ liệu đích nên không ghi nhận được các hoạt động phát sinh nội tại bên trong mà không đi qua hệ thống mạng, như việc đăng nhập nội bộ và kết nối từ xa (remote console connection). Trong trường hợp đó, giám sát mạng cần triển khai đi kèm với kỹ thuật giám sát có thể ghi nhận được các hoạt động nội bộ. Giám sát mạng vẫn có thể sử dụng khi kết nối đến cơ sở dữ liệu được mã hóa bởi SSL hoặc IPSec bằng cách cài đặt một ứng dụng VPN trước cơ sở dữ liệu, đồng thời giữa hai vị trí đó đặt bộ gom dữ liệu của DAM, nơi lưu lượng dữ liệu chưa bị mã hóa.

Giám sát từ xa

Với kỹ thuật này, bộ gom dữ liệu được cấp quyền quản trị truy cập đến cơ sở dữ liệu đích và tính năng kiểm tra (audit) cơ sở dữ liệu được kích hoạt. Bộ gom dữ liệu giám sát DBMS từ xa và thu thập các hoạt động ghi nhận bởi tính năng kiểm tra dữ liệu. Tải tăng thêm trên hệ thống cần giám sát do sử dụng tính năng audit/logging. Trong một số trường hợp chi phí chịu tải tăng thêm này có thể chấp nhận được, ví dụ MS SQL Server được thiết kế để cung cấp khả năng giám sát từ xa với tải tăng thêm ít hoặc không đáng kể, nhưng riêng các phiên bản trước phiên bản 10g của Oracle lại không được chấp nhận vì ảnh hưởng quá nhiều đến hiệu năng.

- Ưu điểm: Khả năng (phụ thuộc vào nền tảng DBMS) giám sát tất cả các hoạt động của cơ sở dữ liệu không quan tâm đến cách thức kết nối bao gồm cả các hoạt động nội bộ, hiệu năng tương đương với native logging/monitoring.

- Nhược điểm: Tiềm ẩn phát sinh các vấn đề liên quan đến hiệu năng, đặc biệt là các phiên bản cũ của Oracle. Đồng thời kỹ thuật này cũng yêu cầu mở quyền admin và thực hiện thay đổi một số cấu hình cần thiết trên cơ sở dữ liệu cần giám sát.

Tác nhân nội bộ

Kỹ thuật này đòi hỏi bản cài đặt của phần mềm tác nhân trên cơ sở dữ liệu cần giám sát để thu thập thông tin. Mỗi tác nhân sử dụng kỹ thuật khác nhau và có hiệu năng khác nhau (ngay cả cùng dòng sản phẩm) tùy theo nền tảng hỗ trợ trên máy chủ mục tiêu và DBMS cài đặt trên đó. Các tác nhân này hạn chế tác động đến hiệu năng (không vượt quá 3-5%) bằng cách can thiệp sâu vào trong kernel của nền tảng để kiểm tra hoạt động mà không cần phải chỉnh sửa DBMS.

- Ưu điểm: Thu thập được nhật ký của tất cả các hoạt động nội tại bên trong (như stored procedure) cũng như tác động từ bên ngoài vào cơ sở dữ liệu mà không cần bật chức năng kiểm tra nguyên bản, do đó ít ảnh hưởng đến hiệu năng xử lý của cơ sở dữ liệu cần giám sát.

- Nhược điểm: Việc xây dựng các tác nhân phụ thuộc vào nền tảng máy chủ đích và yêu cầu cài đặt tác nhân trên tất cả các máy chủ cần giám sát.

Chức năng quản lý trung tâm của DAM

Thu thập và phân tích dữ liệu

Không chỉ thu thập nhật ký hoạt động từ nhiều cơ sở dữ liệu khác nhau như những công cụ quản lý nhật ký hay SIEM, DAM còn cung cấp tính năng chuẩn hóa và kết nối các sự kiện liên quan. Với khả năng hiểu cú pháp SQL trên mỗi nền tảng, DAM có khả năng dịch và phân tích ý nghĩa của các truy vấn. Mỗi nền tảng có cú pháp truy vấn SQL khác nhau, nhưng DAM giúp người dùng không cần biết chi tiết cách thức hoạt động của từng nền tảng mà vẫn có thể sử dụng và khai thác được. Ví dụ, nếu muốn rà soát tất cả các sự kiện leo thang đặc quyền trên tất cả các hệ thống cần giám sát, DAM sẽ phân tích và đưa ra một bản báo cáo hợp nhất mà không yêu cầu phải hiểu rõ về SQL.

Tính năng nâng cao hơn sẽ giúp liên kết hành động phát sinh trên nhiều giao dịch và nền tảng khác nhau chứ không chỉ hạn chế ở một vài sự kiện đơn lẻ. Ví dụ, một số công cụ DAM có thể nhận diện khối lượng giao dịch lớn hơn mức bình thường được người dùng nào đó thực hiện, hoặc kết nối một sự kiện leo thang đặc quyền đến một truy vấn SELECT trả về số lượng lớn thông tin nhạy cảm để suy đoán khả năng tấn công xảy ra. Tất cả các hành động này cũng sẽ được gửi đến kho lưu trữ bảo mật được trang bị các giải pháp phòng ngừa chỉnh sửa, rò rỉ dữ liệu nội tại bên trong đó.

Thiết lập chính sách

Một tính năng nữa của DAM là khả năng phân tích nhật ký để xác định các hành động vi phạm chính sách gần như hoặc ở thời gian thực, từ đó đưa ra cảnh báo và xử lý phù hợp kịp thời. Các vụ tấn công cơ sở dữ liệu hiếm khi gây ra bởi một truy vấn đơn thuần mà nó thường là kết quả của một chuỗi các sự kiện trước khi gây ra thiệt hại cuối cùng. Các chính sách thiết lập được kì vọng có thể phát hiện ra tấn công ở thời điểm sớm để tránh thiệt hại gây ra khi xảy ra tấn công. Ngay cả khi cảnh báo được sinh ra sau thời điểm tấn công phát sinh, DAM cũng được trang bị cách xử lý sự cố ngay lập tức, quá trình điều tra được triển khai ngay thay vì để chậm trễ vài ngày đến vài tuần sau đó.

Chính sách dựa trên nội dung

Một tính năng đang ngày càng được nhiều công cụ DAM hỗ trợ nhằm tránh mất mát dữ liệu là thiết lập các chính sách dựa trên nội dung bằng cách phân tích truy vấn và kết quả đối với các nội dung cụ thể.

Xác định tất cả các địa điểm đã biết có chứa dữ liệu nhạy cảm đối với nhiều DBMS là một quá trình phức tạp. Một cách vô tình hay cố ý, số tài khoản thẻ tín dụng hoặc số an sinh xã hội có thể dễ dàng xuất hiện ở nơi nó đáng lẽ không nên xuất hiện. Các chính sách dựa trên nội dung sử dụng biểu thức chính quy (regular expression) để phân tích hoạt động cơ sở dữ liệu trong việc sư dụng trái phép dữ liệu nhạy cảm.

Cảnh báo

Các công cụ DAM hỗ trợ cảnh báo cũng như hàng đợi quản lý xử lý sự cố. Các cảnh báo này có thể ở nhiều định dạng khác nhau, từ việc tích hợp email đến các sự kiện phát đi nội bộ, tới các cách thức giao tiếp với công cụ bảo mật bên ngoài như SIEM.

Các chính sách cần hỗ trợ việc phân mức độ cảnh báo tùy theo các điều kiện như ngưỡng. Ví dụ, việc phát hiện truy vấn sai có thể phát ra cảnh báo mức độ rủi ro thấp, trong khi sự cố liên quan đến quản trị viên hay số lượng lớn thẻ tín dụng được gửi email đến nhân viên bảo mật được xếp vào mức độ rủi ro cao.

Luồng quy trình

Một khi sự cố xảy ra và bất cứ cảnh báo nào được phát ra, thì cần phải được hiển thị trong hàng đợi quản lý xử lý sự cố. Tương tự như các công cụ chống thất thoát dữ liệu nhưng được thiết kế riêng cho việc quản lý các hoạt động cơ sở dữ liệu.

Hình 2. Ví dụ danh sách hàng đợi xử lý sự cố

Hàng đợi cần hiển thị trực quan, dễ tìm kiếm các thông tin quan trọng và cho phép tùy biến dựa theo nhu cầu và sự quan tâm. Các trường thông tin không cần quá chi tiết về mặt kỹ thuật để người dùng không có nhiều kiến thức về cơ sở dữ liệu hay bảo mật có thể tiếp cận và làm việc, ví dụ như các báo cáo dành cho kiểm toán viên, cán bộ quản trị rủi ro.

Danh sách sự cố cần dễ dàng sắp xếp và có thể gây chú ý bởi màu sắc thể hiện thông tin nhạy cảm hay quan trọng. Ngoài ra, cho phép xem thông tin chi tiết sau khi nhấp chọn vào một sự cố cụ thể nhằm phục vụ quá trình điều tra. Đồng thời cung cấp các tính năng cho phép chuyển giao, chia sẻ và luân chuyển sự cố giữa các người dùng trong

Hệ thống cần hỗ trợ phân quyền truy cập dựa theo vai trò, cho phép phân công người xử lý tùy theo chính sách vi phạm, cơ sở dữ liệu bị ảnh hưởng và các nhân tố khác.

Báo cáo

Công cụ DAM cần cung cấp báo cáo đa chiều, linh hoạt, chủ yếu là báo cáo tuân thủ và kiểm toán. Một số nhà cung cấp làm việc với các công ty kiểm toán lớn để thiết kế các mẫu báo cáo cụ thể giúp tiết kiệm thời gian. Các báo cáo chia làm ba nhóm chính: báo cáo tuân thủ, báo cáo sự cố bảo mật và báo cáo kỹ thuật chung.

Một số tính năng nâng cao khác

Khai phá nội dung (content discovery): Khả năng phân tích sâu hơn vào nội dung thông tin lưu trữ trong cơ sở dữ liệu, từ đó thiết lập chính sách dựa trên nội dung nhằm phát hiện việc khai thác và sử dụng dữ liệu nhạy cảm trái phép.

Xác định người dùng được kết nối chung (conection pooled user identification): Giúp xác định giao dịch bất kì được thực hiện bởi người dùng cụ thể nào trên ứng dụng, đặc biệt hữu ích đối với các ứng dụng kết nối đến cơ sở dữ liệu sử dụng chung một hoặc một vài kết nối thực thi bằng một tài khoản duy nhất (ví dụ: APP_USR) khi không thể xác định chính xác người thực hiện giao dịch ở mức độ cơ sở dữ liệu.

Ngăn chặn (blocking and enforcement): Thay vì chỉ đưa ra các cảnh báo khi có sự can thiệp dữ liệu bất thường, tính năng này hỗ trợ ngăn chặn giao dịch được thực hiện khi xác định vi phạm như việc truy vấn dữ liệu nhạy cảm hoặc ngăn chặn các truy vấn khớp với các mẫu SQL định sẵn. Tùy kiến trúc của từng giải pháp mà việc ngăn chặn này được áp dụng ở tầng mạng hoặc trong bản thân máy chủ cơ sở dữ liệu.

Giám sát hoạt động ứng dụng (application atty monitoring): Cơ sở dữ liệu thường không đứng độc lập mà sẽ liên kết với các ứng dụng. Việc bổ sung thêm tính năng giám sát hoạt động trên ứng dụng cung cấp bức tranh tổng quan, rõ ràng hơn về luồng dịch chuyển của dữ liệu qua các tầng, từ đó phát hiện các dấu hiệu bất thường có khả năng gây ra lỗi bảo mật hoặc tuân thủ.

Chính sách được thiết lập sẵn (pre-configured application/ compliance policies): Một số giải pháp DAM cung cấp bộ chính sách được cấu hình trước cho các ứng dụng thông thường (ví dụ như PeopleSoft). Từ đó, tùy nhu cầu mà mỗi doanh ghiệp có thể bắt tay vào việc tùy biến và xây dựng chính sách bảo mật, tuân thủ một cách nhanh chóng mà không tốn nguồn lực để xây dựng từ đầu.

Quản lý thay đổi (change management): Rất ít doanh nghiệp có chính sách quản lý thay đổi chi tiết đến mức truy vấn. Tính năng này ở DAM cung cấp khả năng tích hợp với các công cụ quản lý thay đổi bên ngoài nhằm liên kết yêu cầu thay đổi gốc thông thường với những thay đổi phát sinh ở mức truy vấn trên cơ sở dữ liệu.

Kết luận

Giải pháp DAM đáp ứng nhu cầu bảo mật thông tin mà không phải can thiệp vào luồng quy trình nghiệp vụ hiện có.

Về mặt nghiệp vụ, nhân tố đóng vai trò quan trọng nhất quyết định việc triển khai DAM thành công là việc thống nhất được các bên liên quan (bộ phận quản trị cơ sở dữ liệu, an ninh bảo mật và quản trị ứng dụng) để chốt được các yêu cầu ban đầu về mặt kỹ thuật và nghiệp vụ. Trở ngại lớn nhất là việc cân bằng kì vọng và trách nhiệm giữa các bên tham gia.

Sau khi xác lập được các mục tiêu của dự án, cần hiểu rõ yêu cầu về mặt hiệu năng, nền tảng hỗ trợ và lường trước được khả năng mở rộng trong tương lai khi đưa ra yêu cầu sản phẩm.

Ngoài việc áp dụng những tính năng cơ bản hệ thống cung cấp, cần mở rộng khả năng ứng dụng, bắt đầu từ việc kiểm soát đơn thuần, sau đó bổ sung các cảnh báo và tích hợp ứng dụng kết hợp với các biện pháp nâng cao như ngăn chặn.

Cuối cùng, DAM là một nền tảng mạnh đáp ứng nhu cầu kiểm soát tuân thủ và bảo mật dữ liệu. Đây là giải pháp tương đối dễ triển khai, mở rộng và linh hoạt.

Tài liệu tham khảo

1. https://securosis.com/assets/library/reports/DAM-Whitepaper-final.pdf

2.https://www.sans.org/reading-room/whitepapers/databases/database-activity-monitoring-dam-understanding-configuring-basic-network-monitoring-impervas-securesphere-36577

3. https://www.datasunrise.com/activity-monitoring/