3 GIẢI PHÁP QUẢN LÝ CÁC HỆ THỐNG PHÁT HIỆN PHÒNG CHỐNG
3.4 Thiết kế chi tiết
3.4.1 Xác định tác nhân và ca sử dụng
Với cơ chế kiểm soát truy cập người dùng được sử dụng trong hệ thống IPS manager dựa trên vai trò và quyền. Trong hệ thống này, phân biệt các vai trò người dùng như sau:
Bảng 3.1: Danh mục vai trò người dùng trong hệ thống IPS Manager
Kiểu vai trò Mô tả Khách (guest
role)
- Được phép đăng nhập hệ thống, chỉ được quyền xem (đọc) và hiển thị thông tin về danh mục cấu hình hệ thống.
- Không được cấp bất kỳ quyền liên quan đến khai thác, sử dụng hệ thống IPS manager
Giám sát (ob- server role)
- Được phép đăng nhập hệ thống và có đầy đủ quyền của người dùng dạng khách.
- Được phép cập nhật thông tin tài khoản của chính mình.
- Được cấp quyền xem danh mục HostIPS/NetIPS trong vùng, thực hiện các chức năng trực hoá dữ liệu giám sát xâm nhập, xem cấu hình hệ thống.
- Cấm không khai thác sử dụng các chức năng khác của dịch vụ này. Quản trị vùng
(region admin role)
- Được phép đăng nhập hệ thống và có đầy đủ quyền của người giám sát.
- Được phép quản lý thêm/sửa/xoá các nốt HostIPS, NetIPS trong vùng được giao quản trị.
- Có khả năng điều khiển, cập nhật luật/mô hình học máy về các HostIPS và NetIPS trong vùng.
- Có chức năng thêm/sửa/xoá tài khoản giám sát trong vùng. Siêu quản trị
(superadmin - role)
- Được phép đăng nhập hệ thống và có đầy đủ quyền của người quản trị vùng.
- Có chức năng tạo mới, xoá, cập nhật vùng.
- Có khả năng tạo mới người dùng; xoá, cập nhật thông tin người dùng khác; gán vai trò cho người dùng khác.
3.4.2 Biểu đồ ca sử dụng
Để cho thuận lợi minh hoạ các biểu đồ ca sử dụng và biểu đồ tuần tự, các chức năng của mỗi loại tác nhân được mô tả trong bảng quan hệ giữa tác nhân và ca sử dụng chỉ tập trung vào dịch vụ quản lý tác vụ xác định rủi ro ATTT, cụ thể như sau:
Bảng 3.2: Mối quan hệ giữa tác nhân và ca sử dụng
Tác nhân Ca sử dụng Khách (guest
role)
1. Xem danh mục dữ liệu hệ thống 2. Xem danh mục quản lý cấu hình
Giám sát (ob- server role)
1. Cập nhật thông tin tài khoản người dùng
2. Xem danh mục các HostIPS, NetIPS trong hệ thống
3. Xem thông tin chi tiết HostIPS: cảnh bảo, thông tin hệ thống,.. 4. Sinh báo cáo thống kê từ dữ liệu HostIPS
5. Xem thông tin chi tiết NetIPS: cảnh báo, giám sát xâm nhập, . . . 6. Sinh báo cáo thống kê từ dữ liệu thu thập bởi NetIPS
Quản trị vùng (region admin role)
1. Xem danh mục tài khoản người dùng trong vùng 2. Xem chi tiết tài khoản người dùng trong vùng 3. Tạo mới tài khoản người dùng trong vùng 4. Cập nhật tài khoản người dùng trong vùng 5. Xoá tài khoản người dùng trong vùng 6. Xem/Thêm/Xoá/Sửa HostIPS trong vùng 7. Xem/Thêm/Xoá/Sửa NetIPS trong vùng 8. Điều khiển HostIPS trong vùng
9. Điều khiển NetIPS trong vùng
10. Cập nhật luật, mô hình phát hiện dị thường NetIPS 11. Cập nhật luật, mô hình phát hiện dị thường NetIPS
12. Điều khiển cập nhật các luật, mô hình học máy phát hiện bất thường, bản vá ảo, mẫu mã độc,. . . về NetIPS
13. Điều khiển cập nhật các luật, mô hình học máy phát hiện bất thường, bản vá ảo, mẫu mã độc,. . . về HostIPS
14. Xem thông tin chi tiết HostIPS: cảnh bảo, thông tin hệ thống,.. 15. Sinh báo cáo thống kê từ dữ liệu HostIPS
16. Xem thông tin chi tiết NetIPS: cảnh báo, giám sát xâm nhập, . . . 17. Sinh báo cáo thống kê từ dữ liệu thu thập bởi NetIPS
Siêu quản trị (superadmin role)
1. Xem danh mục tài khoản người dùng 2. Xem chi tiết tài khoản người dùng 3. Tạo mới tài khoản người dùng 4. Cập nhật tài khoản người dùng 5. Xoá tài khoản người dùng
6. Xem/Thêm/Sửa/Xoá vùng trong hệ thống 7. Xem/Thêm/Xoá/Sửa HostIPS
8. Xem/Thêm/Xoá/Sửa NetIPS 9. Điều khiển HostIPS
10. Điều khiển NetIPS
11. Cập nhật luật, mô hình phát hiện dị thường NetIPS 12. Cập nhật luật, mô hình phát hiện dị thường NetIPS
13. Điều khiển cập nhật các luật, mô hình học máy phát hiện bất thường, bản vá ảo, mẫu mã độc,. . . về NetIPS
14. Điều khiển cập nhật các luật, mô hình học máy phát hiện bất thường, bản vá ảo, mẫu mã độc,. . . về HostIPS
15. Xem thông tin chi tiết HostIPS: cảnh bảo, thông tin hệ thống,.. 16. Sinh báo cáo thống kê từ dữ liệu HostIPS
17. Xem thông tin chi tiết NetIPS: cảnh báo, giám sát xâm nhập, . . . 18. Sinh báo cáo thống kê từ dữ liệu thu thập bởi NetIPS
19. Cập nhật các luật, mô hình học máy phát hiện bất thường, bản vá ảo, mẫu mã độc,. . .
Từ đó, biểu đồ ca sử dụng của hệ thống IPS manager đối với người dùng khách được minh hoạ như hình sau:
Hình 3.6: Ca sử dụng hệ thống IPSManager với khách
hình sau:
Hình 3.7: Ca sử dụng hệ thống IPS manager với người giám sát
Đối với người dùng có vai trò quản trị một tổ chức, biểu đồ ca sử dụng của họ được minh hoạ như hình sau:
Hình 3.8: Ca sử dụng hệ thống IPS manager với người quản trị vùng
Riêng đối với người siêu quản trị, ca sử dụng của đối tượng này bao hàm toàn bộ các chức năng của dịch vụ IPSManager.
Hình 3.9: Ca sử dụng hệ thống IPS manager với người siêu quản trị
3.4.3 Biểu đồ tuần tự
Nhóm nghiên cứu thực hiện nhiệm vụ này sẽ sử dụng biểu đồ tuần tự để xác định các trình tự diễn ra sự kiện của các ca sử dụng. Biểu đồ này miêu tả chi tiết các thông điệp được gửi và nhận giữa người dùng và các chức năng trong dịch vụ quản trị hệ thống, đồng thời cũng chú trọng đến việc trình tự về mặt thời gian gửi và nhận các thông điệp đó. Trong biểu đồ, thuật ngữ Back-End được dùng để chỉ nền tảng thư viện hệ thống, Front-End đại diện cho các dịch vụ trực tuyến trên nền Web để giao diện hiển thị tương tác với người sử dụng.
Do các ca sử dụng và tác nhân tương đối nhiều, hơn nữa, việc tương tác giữa người dùng, front-end và back-end của hệ thống tương đối giống nhau giữa các các sử dụng. Chính vì thế, chúng tôi chỉ chọn ra hai ca sử dụng tiêu biểu để minh hoạ trong biểu đồ tuần tự dưới đây. Cụ thể đó là hai ca sử dụng liên quan đến cập nhật, tìm kiếm chính sách về NetIPS.
Hình 3.10: Biểu đồ tuần tự minh hoạ một số chức năng quản trị hệ thống
Toàn bộ các ca sử dụng khác của dịch vụ này về cơ bản có biểu đồ tuần tự tương tự như hai ca sử dụng đã nêu trên.
3.4.4 Lược đồ dữ liệu
Lược đồ cơ sở dữ liệu của IPSManager để quản lý các đối tượng người dùng, các Host/NetIPS, điều khiển, tập luật, mô hình học máy tương ứng với các ca sử dụng trên đây được minh hoạ như ở mục 3.4.2. Các dữ liệu quan hệ này được chúng tôi quản lý trong hệ quản trị PostgreSQL phiên bản 12.8.
Hình 3.11: Lược đồ cơ sở dữ liệu của hệ thống IPSManager
Do dữ liệu vết thu thập được từ các HostIPS và NetIPS rất lớn, giải pháp Elasticsearch phiên bản 7.8 đã được chúng tôi sử dụng để quản lý toàn bộ các dữ liệu xâm nhập và trạng thái hoạt động của cả HostIPS lẫn NetIPS. Hình sau minh hoạ một phần lược đồ ánh xạ dữ liệu để lưu trữ dữ liệu xâm nhập thu thập từ NetIPS:
Hình 3.12: Cấu trúc ánh xạ tài liệu để quản lý dữ liệu trạng thái và dữ liệu xâm nhập
3.5 Kết chương 3
Trong chương này, luận văn trình bày về các thành phần của hệ thống IDS/IPS, đưa ra phân tích thiết kế chức năng của hệ thống xâm nhập. Trong chương tiếp theo luận văn sẽ trình bày về môi trường và kết quả thực nghiệm.
THỰC NGHIỆM
4.1 Xây dựng dịch vụ IPS Manager
Dựa trên thiết kế chi tiết của dịch vụ IPSManager quản lý các hệ thống NetIPS và HostIPS đã nêu ở chương 3, chúng tôi đã tiến hành lập trình xây dựng IPSManager cả phần back-end và front-end.
• Back-end: được xây dựng dựa trên khung phát triển ứng dụng Web vi mô Flask, sử dụng ngôn ngữ lập trình Python. Nó được phân loại là microframework vì nó không yêu cầu các công cụ hoặc thư viện cụ thể.Flask hỗ trợ các tiện ích mở rộng có thể thêm các tính năng ứng dụng như thể chúng được triển khai trong chính Flask. Các tiện ích mở rộng tồn tại cho người lập bản đồ quan hệ đối tượng, xác thực biểu mẫu, xử lý tải lên, các công nghệ xác thực mở khác nhau và một số công cụ liên quan đến khuôn khổ chung.
• Front-end: được xây dựng dựa trên khung phát triển dịch vụ Web VueJS sử dụng ngôn ngữ Javascript. VueJS là một khung JavaScript giao diện người dùng model- view-viewmodel mã nguồn mở để xây dựng giao diện người dùng và các ứng dụng một trang (sigle-page application).