Adversary Model
Các ứng dụng mạng thông thường như Chrome và MSN sử dụng ngăn xếp TCP/IP và giao diện của hệ điều hành để giao tiếp mạng Lưu lượng của các ứng dụng này đi qua các thành phần như trình điều khiển giao thức TCP/IP, giao diện trình điều khiển mạng (NDIS), trình điều khiển bộ lọc NDIS và cổng thu nhỏ NDIS trước khi đến phần cứng thẻ giao diện mạng (NIC) Tường lửa cá nhân hoạt động ở một trong bốn lớp để phân tích lưu lượng đến và đi, và khi phát hiện lưu lượng độc hại, nó sẽ thông báo cho người dùng để quyết định xử lý theo chính sách bảo mật.
Một số phần mềm độc hại có khả năng sử dụng ngăn xếp TCP/IP riêng để vượt qua tường lửa cá nhân Cụ thể, phần mềm độc hại này kết nối với NdisM Register Miniport Driver để thực hiện các hoạt động trái phép.
NdisM Register Miniport và đăng ký chức năng xử lý miniport của phần mềm độc hại
Trước khi trình điều khiển bộ điều hợp mạng đăng ký với NDIS, phần mềm độc hại có thể sử dụng chức năng xử lý miniport riêng để gửi hoặc nhận các gói qua ngăn xếp TCP/IP của nó, từ đó bỏ qua sự giám sát của tường lửa cá nhân.
Phần mềm độc hại có khả năng tấn công tường lửa cá nhân bằng cách chặn giao tiếp giữa tường lửa và hệ điều hành hoặc thậm chí tắt tường lửa Để bảo vệ hệ thống phòng thủ, người dùng cần nhận diện các hoạt động độc hại một cách dễ dàng Để tăng cường an ninh, người dùng nên quét máy chủ lưu trữ nhằm loại bỏ phần mềm độc hại.
Nền SDN
Mạng do phần mềm xác định (SDN) là một công nghệ mạng tiên tiến, tách biệt mặt phẳng điều khiển và dữ liệu Control plane trong SDN chịu trách nhiệm điều khiển toàn bộ hành vi của mạng Sự tập trung này mang đến một phương pháp quản lý và kiểm soát lưu lượng mạng đơn giản hơn, đồng thời linh hoạt hơn thông qua việc sử dụng một giao thức hiệu quả.
Mạng OpenFlow sử dụng quy tắc luồng để quản lý lưu lượng mạng Khi một gói tin đến, công tắc OpenFlow sẽ kiểm tra bảng luồng để xác định xem gói tin đó có phù hợp với quy tắc nào không Nếu tìm thấy một quy tắc phù hợp, công tắc sẽ xử lý gói tin theo cách đã được xác định.
OpenFlow sử dụng quy tắc luồng để xử lý gói tin, với các hành động như chuyển tiếp, thả gói hoặc báo cáo lên mặt phẳng điều khiển Nếu gói tin không khớp với bất kỳ mục nhập luồng nào, công tắc OpenFlow sẽ gửi một thông điệp đến máy bay điều khiển để nhận hướng dẫn Máy bay điều khiển sẽ quyết định cách xử lý gói mới dựa trên logic của các ứng dụng và phản hồi bằng các quy tắc hành động và luồng Phương pháp này mang lại sự linh hoạt trong quản lý và kiểm soát lưu lượng mạng, được áp dụng rộng rãi trong các ứng dụng OpenFlow.
Vấn đề và thách thức
Bài báo này nghiên cứu phương pháp phát hiện mã độc trong lưu lượng phần mềm độc hại trên máy chủ, đồng thời nêu rõ các thách thức cần phải vượt qua để giải quyết vấn đề này.
Để tránh lưu lượng truy cập độc hại vượt qua tường lửa cá nhân, cần áp dụng giải pháp phát hiện ở lớp phần cứng mạng, thấp hơn lớp mà phần mềm độc hại hoạt động Hiện tại, không có tường lửa cá nhân nào giám sát lưu lượng ở lớp NIC, điều này tạo ra lỗ hổng bảo mật Ngoài ra, việc đảm bảo hệ thống vẫn hoạt động và cảnh báo người dùng khi có cuộc tấn công xảy ra cũng là một thách thức lớn Do đó, việc phát triển một khung bảo mật mới để phát hiện lưu lượng độc hại là cần thiết.
Để xác định chính xác lưu lượng truy cập độc hại, việc thiếu thông tin máy chủ lưu trữ trên tường lửa mạng có thể dẫn đến phân loại không chính xác Tường lửa cá nhân sử dụng cổng TCP để liên kết mỗi gói với thông tin máy chủ, từ đó giúp cập nhật danh sách đen và trắng một cách động Tuy nhiên, nếu thông tin máy chủ không có trong một gói, tường lửa mạng sẽ gặp khó khăn trong việc nhận diện lưu lượng tấn công Ví dụ, khi tên máy chủ của phần mềm độc hại thay đổi từ “evil.com” sang “newevil.com”, tường lửa mạng có thể không phát hiện được các gói độc hại nếu không có thông tin từ máy chủ.
Để cung cấp khả năng lập trình cho các dịch vụ bảo mật, cần nhận thức rằng mặc dù tường lửa có thể tự động cập nhật các chính sách bảo mật dựa trên các tính năng và thuật toán nhất định, nhưng chúng vẫn có khả năng bỏ qua những chính sách này khi các thông tin được tiết lộ Quản lý an ninh các chính sách vẫn thuộc về lĩnh vực quản trị mạng Hơn nữa, việc áp dụng trực tiếp SDN vào bảo mật máy chủ lưu trữ để có khả năng lập trình gặp khó khăn do thiếu cấp ứng dụng điều khiển trong thông số kỹ thuật.
OpenFlow là một giao thức quan trọng trong mạng SDN, tuy nhiên, bộ điều khiển không thể quản lý các thiết bị mạng không hỗ trợ chức năng SDN Điều này dẫn đến việc mất khả năng lập trình của mạng với các công tắc hàng hóa hiện có Nhiều công ty gặp khó khăn trong việc thay thế các thiết bị mạng truyền thống do chi phí cao Vì vậy, một giải pháp hiệu quả là tuân theo các cơ chế trong SDN để kích hoạt luồng quản lý chi tiết trên một số thiết bị mạng có thể điều khiển, như NIC Qua đó, các công ty có thể dần thay thế thiết bị mạng của họ trên những máy chủ quan trọng để đảm bảo an toàn và hiệu suất.
Những kỹ thuật chính được đề xuất để bảo vệ an ninh máy chủ lưu trữ
Chúng tôi đề xuất một mô hình lưu trữ tường lửa mới bằng cách trừu tượng hóa các Control plane và Data plane trong SDN Data plane giám sát lưu lượng mạng trên phần cứng và lọc lưu lượng bất hợp pháp theo các quy tắc bảo mật, trong khi Control plane thu thập thông tin máy chủ và cập nhật động các quy tắc bảo mật trong Data plane Đồng thời, một cuộc kiểm toán máy chủ được thực hiện để phát hiện các cuộc tấn công nhằm vào Control plane.
Chúng tôi giới thiệu cơ chế mới nhằm tăng cường bảo mật máy chủ và cung cấp khả năng lập trình cao cho việc kiểm soát bảo mật cấp ứng dụng Khác với các giải pháp tường lửa hiện tại, thiết kế của chúng tôi cho phép quản trị viên mạng tạo ra các quy tắc bảo mật dựa trên thuật toán do người dùng xác định Hơn nữa, hệ thống của chúng tôi có khả năng phát hiện lưu lượng phần mềm độc hại ngay cả khi nó sử dụng TCP/IP riêng để tránh bị phát hiện bởi tường lửa truyền thống.
Dựa trên kiến trúc và cơ chế đã đề cập, chúng tôi đã thiết kế và triển khai SDF, đồng thời tiến hành đánh giá hiệu suất của nó qua các thử nghiệm thực tế Kết quả cho thấy SDF có khả năng giám sát toàn bộ mạng lưu lượng và xác định chính xác lưu lượng độc hại Nhân viên kiểm toán có thể cảnh báo người dùng khi máy bay điều khiển bị nhiễm độc hoặc cần đóng lại Hơn nữa, hai trường hợp sử dụng của SDF được trình bày để minh chứng rằng khả năng lập trình mạng hiện nay đã đơn giản hóa các giải pháp bảo mật.
Giới thiệu mô hình và kiến trúc hệ thống
Thiết kế của SDF dựa trên khái niệm SDN bằng cách tập trung hóa các API
“Southbound” (OpenFlow) để cung cấp khả năng kiểm soát chính sách bảo mật linh hoạt.
SDF có phần cứng mạng như mặt phẳng dữ liệu để giám sát lưu lượng, xử lý từng gói dựa trên quy tắc luồng nhằm ngăn chặn lưu lượng truy cập độc hại Nó sử dụng khả năng phát hiện và kiểm soát bảo mật có thể lập trình qua cổng sup với giao diện OpenFlow, tương tự như công tắc OpenFlow Việc triển khai có thể diễn ra ở phía máy chủ với NetFPGA hoặc NIC có thể lập trình, hoặc ở phía chuyển mạch với công tắc OpenFlow thay thế công tắc truyền thống Mặt phẳng điều khiển của SDF được tích hợp trong máy chủ, cung cấp khả năng lập trình và kiểm soát chính sách bảo mật linh hoạt Dựa trên lưu lượng thống kê từ mặt phẳng dữ liệu và thông tin từ mặt phẳng điều khiển, ứng dụng điều khiển có thể xác định chính xác lưu lượng độc hại.
Kiến trúc của SDF sử dụng ứng dụng mạng, như Chrome và Twitter, để xem chúng như các máy chủ trong mô hình SDN Điều này không có nghĩa là các ứng dụng mạng này "thấp hơn" so với lớp hệ điều hành, mà thể hiện sự tương tác và tích hợp giữa các lớp trong hệ thống mạng.
Kiến trúc SDF được cấu thành từ sáu mô-đun chức năng chính, bao gồm giám sát lưu lượng, giám sát trạng thái máy chủ, nền tảng bộ điều khiển, kiểm soát trừu tượng hóa ứng dụng, phát hiện tấn công và máy chủ kiểm tra, như thể hiện trong Hình 3.
Mô-đun giám sát lưu lượng hoạt động như một mặt phẳng dữ liệu, hoạt động trên phần cứng mạng Nó có khả năng xử lý và giám sát lưu lượng cả đến và đi dựa trên các quy tắc luồng được thiết lập trong bảng lưu lượng.
Mô-đun giám sát trạng thái máy chủ là một ứng dụng quan trọng giúp theo dõi thông tin của máy chủ Nó lưu trữ dữ liệu vào Mô-đun trừu tượng hóa ứng dụng điều khiển, từ đó hỗ trợ quản lý cấp ứng dụng hiệu quả và phát hiện các cuộc tấn công một cách chính xác.
Nền tảng bộ điều khiển hoạt động tương tự như các bộ điều khiển kho mềm SDN hiện có như NOX, POX và RYU Vì có thể triển khai dễ dàng thông qua việc cài đặt bộ điều khiển phần mềm, chúng tôi sẽ không đề cập đến thiết kế chi tiết trong bài viết này.
Mô-đun trừu tượng hóa ứng dụng điều khiển đóng vai trò là lớp trung gian giữa nền tảng điều khiển và các ứng dụng điều khiển Nó sử dụng thông tin lưu lượng và máy chủ lưu trữ để liên kết từng gói tin với thông tin máy chủ, giúp tối ưu hóa quá trình quản lý và điều khiển.
Các mô-đun tóm tắt ngôn ngữ triển khai bộ điều khiển cho phép sử dụng ngôn ngữ cấp cao và cung cấp giao diện thân thiện với người dùng, giúp cập nhật linh hoạt các chính sách bảo mật mạng.
Mô-đun phát hiện tấn công là ứng dụng điều khiển được cài đặt sẵn, có khả năng xác định lưu lượng truy cập độc hại và thông tin dựa trên máy chủ Chúng tôi cũng hỗ trợ người dùng phát triển các mô-đun phát hiện tấn công riêng, phù hợp với nhu cầu của họ.
Máy chủ kiểm tra là thiết bị quan trọng trong mạng nội bộ, giúp phát hiện sự nhiễm độc của máy bay điều khiển bởi phần mềm độc hại Thiết bị này hoạt động trong Intranet để xác minh các quy tắc phân luồng trên thiết bị giám sát giao thông Nó thường xuyên thu thập thông tin từ máy chủ và lưu lượng truy cập, sử dụng cơ sở dữ liệu và thuật toán phát hiện tấn công để xác thực tính hợp pháp của các quy tắc này.
Hình 4 Đường ống xử lý gói trong bộ giám sát lưu lượng.
Quy trình làm việc của SDF bao gồm việc giám sát và kiểm tra mô-đun giao thông, chuyển tiếp lưu lượng giữa Internet/Intranet và máy chủ dựa trên các quy tắc bảo mật Khi phát hiện lưu lượng bất thường, SDF sẽ thực hiện ba bước xử lý, bắt đầu bằng việc báo cáo luồng lưu lượng bất thường tới bộ điều khiển.
Các luồng bất thường được báo cáo sẽ được gửi đến điều khiển Mô-đun trừu tượng hóa ứng dụng kèm theo thông tin máy chủ từ trình theo dõi trạng thái Những luồng này sẽ được gắn thẻ với thông tin máy chủ và chuyển đến ứng dụng điều khiển để xác định lưu lượng truy cập độc hại Cuối cùng, việc phát hiện cuộc tấn công hoặc các ứng dụng kiểm soát khác sẽ quyết định các hành động cần thực hiện và cập nhật quy tắc bảo mật trên các Mô-đun giám sát mạng.
Khi các Modules khác hoạt động, máy chủ kiểm tra sẽ thu thập thông tin về các mục nhập luồng, máy chủ lưu trữ và lưu lượng truy cập nhằm xác minh tính hợp pháp của các mục nhập này.
Giám sát lưu lượng
Giám sát lưu lượng là một cấu trúc chuyển tiếp xử lý từng gói dữ liệu dựa trên các quy tắc luồng của nó, nhằm ngăn chặn phần mềm độc hại vượt qua SDF, đặc biệt qua lớp TCP/IP Chức năng này dựa vào việc duy trì các quy tắc dòng chảy trong bảng dòng chảy, tương tự như quy tắc luồng trong công tắc OpenFlow, để thực thi chính sách bảo mật Ngoài ra, giám sát lưu lượng cung cấp giao diện API hướng nam (như OpenFlow) để hỗ trợ kiểm soát an ninh có thể lập trình Việc triển khai có thể diễn ra bên máy chủ hoặc bên chuyển đổi, trong đó giám sát lưu lượng thường được thực hiện qua phần cứng.
Giống như công tắc OpenFlow, trình giám sát lưu lượng thực hiện các hành động như chuyển tiếp, giảm hoặc báo cáo cho từng luồng dữ liệu dựa trên các quy tắc trong bảng luồng, được lưu trữ trong bộ nhớ địa chỉ nội dung bậc ba.
TCAM (Ternary Content Addressable Memory) kết nối máy chủ với Internet/Intranet thông qua hai cổng ảo trên phía máy chủ, giúp phân biệt lưu lượng truy cập đến và đi một cách dễ dàng Hệ thống giám sát lưu lượng bao gồm bốn thành phần chính: bảng lưu lượng, trình phân tích cú pháp tiêu đề, tra cứu bảng luồng và trình xử lý hành động Mặc dù mô-đun giám sát lưu lượng có thể được triển khai theo OpenFlow v1.3 hoặc các phiên bản cao hơn, chúng tôi nêu rõ các yêu cầu tối thiểu trong thiết kế để phù hợp với các nguồn lực hạn chế trong một số trường hợp.
Bảng lưu lượng chứa các mục nhập luồng trong TCAM, bao gồm trường đối sánh, trường hành động, cùng với các trường ưu tiên, bộ đếm và thời gian chờ, như minh họa trong Hình 5-a.
Hình 5 Các cấu trúc trong giám sát giao thông.
Trong SDF, chúng tôi hỗ trợ ba hành động chính: chuyển tiếp đến Server/Internet, thả gói tin và báo cáo để điều khiển Trong trường hợp đếm, chỉ cần đếm các gói và byte tương ứng với mục nhập luồng Để phát hiện các hoạt động độc hại trong trường hợp phần mềm độc hại tấn công mặt phẳng điều khiển, thành phần bảng luồng cung cấp API chỉ đọc cho máy chủ kiểm tra nhằm lấy thông tin dòng chảy, giúp xác định xem máy bay điều khiển có bị xâm phạm hay không.
Trình phân tích cú pháp Header là thành phần quan trọng giúp trích xuất thông tin tiêu đề của từng gói dữ liệu để xác định các luồng Hình 5-b minh họa các trường khác nhau trong tiêu đề, trong đó hầu hết các trường trong SDF tương đồng với các trường trong giao thức OpenFlow Tuy nhiên, trường IN_PORT có sự khác biệt nhẹ, do bộ giám sát lưu lượng chỉ sử dụng hai cổng dữ liệu trong SDF, bao gồm các giao diện với Internet và máy chủ.
PORT IN trong SDF chỉ biểu thị liệu một gói có phải là một gói xâm nhập hay không (Từ
Internet đến máy chủ) hoặc một gói tin đi ra (Từ máy chủ đến Internet)
Tra cứu Bảng Lưu lượng là quá trình quan trọng trong việc xác định các mục nhập luồng phù hợp với thông tin tiêu đề Sau khi trích xuất thông tin, chúng tôi sử dụng hai hàm băm trên tiêu đề luồng để đảm bảo tra cứu chính xác và giảm va chạm Đồng thời, tra cứu ký tự đại diện cũng được thực hiện bằng cách sử dụng mặt nạ để kiểm tra các kết quả phù hợp trong bảng lưu lượng Nếu có bất kỳ mục nhập luồng nào phù hợp với gói, hệ thống sẽ cung cấp tất cả các mục nhập phù hợp đến bộ xử lý hành động; ngược lại, kết quả sẽ là rỗng.
Bộ xử lý hành động quyết định hành động nào sẽ được áp dụng cho gói tin, với các hành động có mức ưu tiên cao nhất được thực hiện trước Trong trường hợp không có kết quả, hành động mặc định là báo cáo cho bộ điều khiển sẽ được áp dụng Sau khi một hành động được thực hiện, bộ đếm trường của mục nhập luồng tương ứng sẽ được cập nhật.
Mặc dù OpenFlow cho phép thiết bị chuyển mạch bảo toàn gói ban đầu và gói gọn thông tin tiêu đề, việc giám sát lưu lượng đến bộ điều khiển được thực hiện bằng cách áp dụng "Gói gọn toàn bộ gói đến bộ điều khiển" trong hành động của các quy tắc luồng Trong trường hợp thay thế, hành động có thể là "Gương đến bộ điều khiển", do bộ nhớ trong NIC có giới hạn Gói gọn toàn bộ gói cũng giúp Mô-đun trừu tượng hóa ứng dụng điều khiển, khớp với trọng tải của lớp ứng dụng và chữ ký tấn công cơ sở dữ liệu, như URL máy chủ phần mềm độc hại và thông tin cá nhân.
Hình 6 Bảng thông tin cổng-máy chủ lưu trữ với hai thao tác: chèn và tra
Giám sát trạng thái máy chủ
Bộ theo dõi trạng thái máy chủ hoạt động trên máy chủ cung cấp API cho phép lấy thông tin về tên tác vụ, mức sử dụng CPU và bộ nhớ của nhiệm vụ thông qua một cổng được chỉ định.
Thông tin về tên nhiệm vụ (Task) giúp xác định ứng dụng tạo gói, trong khi thông tin về CPU và bộ nhớ phản ánh tình trạng hiện tại của nhiệm vụ Những tính năng này góp phần cải thiện độ chính xác trong việc phát hiện các cuộc tấn công Đồng thời, các ứng dụng điều khiển cũng cung cấp khả năng quản lý luồng cấp ứng dụng một cách chi tiết.
Chúng tôi sử dụng bảng thông tin máy chủ lưu trữ cổng để liên kết thông tin máy chủ với từng cổng Trình giám sát trạng thái máy chủ thực hiện các truy vấn đầu tiên để lấy tất cả các bản ghi id quy trình (Pid) từ các cổng đã bật Sau đó, nó truy vấn thông tin về CPU và khả năng sử dụng bộ nhớ của các nhiệm vụ tương ứng với các Pid này Mỗi bản ghi cổng sẽ được liên kết với nhiệm vụ, CPU và bộ nhớ, với CPU và bộ nhớ giống nhau cho các Pid khác nhau thuộc cùng một nhiệm vụ Để tối ưu hóa hiệu quả lập chỉ mục, trường cổng được sử dụng làm khóa cho bảng băm, và thời gian sẽ được thêm vào khi chèn bản ghi mới Mỗi bản ghi sẽ hết hạn sau thời gian texpire, ban đầu được đặt là 120 giây, và các bảng thông tin cổng-máy chủ sẽ được cập nhật sau mỗi 5 giây.
Bảng thông tin Port-host_info hỗ trợ hai chức năng chính là chèn bản ghi mới và tra cứu bản ghi Khi trình theo dõi trạng thái máy chủ lưu trữ phát hiện có một bản ghi hiện có trong quá trình chèn, nó sẽ so sánh trường nhiệm vụ giữa bản ghi hiện tại và bản ghi mới Nếu nhiệm vụ giống nhau, trạng thái máy chủ chỉ theo dõi các cập nhật.
CPU, bộ nhớ và các trường thời gian, như thể hiện trong (1) - hoạt động trong Hình 6
Nếu không, màn hình trạng thái của máy chủ sẽ ghi đè lên toàn bộ bản ghi Khi tra cứu bản ghi, trạng thái máy chủ sẽ kiểm tra thời gian của bản ghi đó Nếu bản ghi chưa hết hạn, máy chủ sẽ trả về bản ghi phù hợp.
Nếu trạng thái máy chủ không được theo dõi và trả về EXPIRED, như mô tả trong (4) - hoạt động, các bản ghi mới có thể ghi đè lên các bản ghi hiện có Trường thời gian được sử dụng để xác định các bản ghi đã hết hạn, vì vậy bảng thông tin máy chủ cổng không cần chức năng xóa trong bảng băm thông thường Kích thước ban đầu của bảng thông tin máy chủ lưu trữ cổng được đặt là 1000 mục nhập, và nó cũng hỗ trợ thêm vào cùng với các chiến lược thu gọn để điều chỉnh kích thước một cách linh hoạt.
Trình theo dõi trạng thái máy chủ hoạt động bằng cách gọi hệ điều hành để nhận thông tin về tác vụ, CPU và bộ nhớ thông qua cổng trong thời gian thực Điều này diễn ra khi không tìm thấy bản ghi hoặc khi bản ghi đã hết hạn trong thông tin máy chủ lưu trữ cổng bàn, nhằm mục đích giảm thiểu độ trễ.
Trong quá trình cập nhật bảng, các cuộc gọi thời gian thực có thể đáp ứng yêu cầu của GetHostInfoByPort, nhưng tra cứu thông tin từ bảng cổng-máy chủ lại hiệu quả hơn nhiều Nếu kết nối bị đóng trước khi thực hiện GetHostInfoByPort, trình theo dõi trạng thái máy chủ sẽ không thể lấy thông tin cần thiết nếu không có hồ sơ trước đó.
Ngôn ngữ trừu tượng cấp cao trong ứng dụng điều khiển sự trừu tượng cho phép xác định các giá trị trong một vùng cụ thể Trong trường Match, "HEADER" đại diện cho toàn bộ tiêu đề của một gói, bao gồm từ lớp MAC đến lớp truyền tải nếu có, trong khi "HEADERS" chỉ các tiêu đề cụ thể như loại Ethernet và IP nguồn.
Phát hiện tấn công
Phát hiện tấn công giúp xác định lưu lượng truy cập độc hại và đánh dấu từng gói tin để quản lý ứng dụng hiệu quả hơn Chúng tôi sử dụng công nghệ đối sánh hai giai đoạn để nhận diện lưu lượng độc hại dựa trên các chữ ký tấn công Khi gói tin đến, hệ thống sẽ liên kết gói này với thông tin máy chủ và phân loại nó theo các trường tiêu đề, đồng thời lưu trữ trong hàng đợi lưu lượng Trong giai đoạn đầu, mô-đun phát hiện tấn công so khớp các trường của gói với chữ ký trong cơ sở dữ liệu, và trong giai đoạn thứ hai, quá trình phân tích tiếp tục diễn ra để xác định tính chất của lưu lượng.
Các mô-đun phát hiện tấn công sử dụng máy vector hỗ trợ (SVM) để xác định các luồng và thẻ độc hại, trong đó SVM CLASS cho biết luồng có phải là lưu lượng độc hại hay không (SVM CLASS = TRUE nghĩa là luồng được phân loại là độc hại) Các ứng dụng điều khiển có khả năng quyết định hành động tiếp theo cho mỗi gói tin.
Trong giai đoạn đầu tiên, mô-đun phát hiện tấn công sử dụng phân loại mức gói để kiểm tra các trường trong gói, đặc biệt là tải trọng, vì hầu hết chữ ký tấn công nằm trong đó Nếu gói tin chứa chữ ký tấn công, nó sẽ được phân loại là lưu lượng độc hại và liên kết với cơ sở dữ liệu Ngược lại, nếu không có chữ ký phù hợp, gói tin sẽ không được liên kết Chúng tôi cung cấp giao diện để cập nhật cơ sở dữ liệu tấn công, cho phép người dùng tải xuống chữ ký mới từ Internet hoặc phát triển ứng dụng điều khiển để tự động cập nhật cơ sở dữ liệu dựa trên các mẫu tấn công được xác định.
Trong giai đoạn thứ hai, mô-đun phát hiện tấn công sử dụng phân loại mức luồng với SVM để xác định lưu lượng truy cập độc hại dựa trên dữ liệu đào tạo SVM tối đa hóa khoảng cách giữa các mẫu đào tạo và siêu phẳng, là một thuật toán phân loại mạnh mẽ ngay cả với dữ liệu đào tạo ồn ào Chúng tôi sử dụng tần số như một đặc điểm cho mỗi luồng bằng cách đếm "gói trên mỗi luồng" và "byte trên mỗi luồng" Tập huấn luyện bao gồm lưu lượng truy cập từ hai cuộc tấn công (SYN flood và rò rỉ thông tin riêng tư) cùng với lưu lượng truy cập bình thường để xây dựng siêu phẳng f(x) với hạt nhân.
Bộ phân loại SVM có khả năng phân loại hiệu quả các luồng dữ liệu bằng cách đánh giá dấu hiệu của f(xs) Các gói trong luồng được phân loại là "bất hợp pháp" sẽ được gán nhãn SVM CLASS = TRUE, trong khi các gói "hợp pháp" sẽ được gán nhãn SVM CLASS = FALSE Để cải thiện độ chính xác của bộ phân loại SVM, chúng tôi cung cấp giao diện cập nhật dữ liệu đào tạo, cho phép thêm mẫu mới vào quá trình huấn luyện Mặc dù chi phí xử lý lưu lượng lớn có thể là một vấn đề, nhưng việc cài đặt quy tắc phân luồng giúp loại bỏ lưu lượng độc hại và chỉ xử lý lưu lượng "đáng ngờ" bằng mô-đun phát hiện tấn công Kết quả thử nghiệm cho thấy, mặc dù quá trình đào tạo bộ phân loại SVM tốn nhiều thời gian, nhưng nó rất hiệu quả trong việc phân loại, do đó, chi phí phát hiện tấn công là chấp nhận được.
Máy chủ kiểm tra
Máy chủ kiểm tra là thiết bị quan trọng trong mạng nội bộ, giúp xác minh tính hợp pháp của các mục nhập luồng trên bộ giám sát lưu lượng Thiết bị này có thể hoạt động một cách tập trung hoặc hỗ trợ nhiều máy chủ với chỉ một máy chủ kiểm tra Khi phát hiện các mục nhập luồng bất hợp pháp hoặc thiếu sót trong quy trình quan trọng, chẳng hạn như kiểm soát máy bay bị nhiễm độc hoặc bị tắt do phần mềm độc hại, máy chủ kiểm tra sẽ cảnh báo các quản trị viên mạng để tiến hành phân tích thêm.
Máy chủ kiểm tra thu thập thông tin về lưu lượng và máy chủ lưu trữ, bao gồm tác vụ, CPU, bộ nhớ và cơ sở dữ liệu chữ ký tấn công, định kỳ Sau đó, nó áp dụng các thuật toán phân loại và chính sách bảo mật để tạo các mục nhập luồng nhằm xác minh Tương tự, máy chủ kiểm tra gắn thẻ nhiệm vụ, CPU và bộ nhớ cho từng gói, rồi tạo các mục nhập luồng dựa trên chính sách bảo mật Những mục nhập này giúp xác định luồng không mong muốn và phát hiện sự thiếu hụt từ bộ theo dõi lưu lượng Mọi mâu thuẫn sẽ được báo cáo cho quản trị mạng để thông báo cho quản trị viên khi hệ thống bị tấn công bởi phần mềm độc hại.
Để giảm thiểu cảnh báo sai trong luồng phân loại, chúng tôi giới thiệu khái niệm "Mức độ rủi ro" cho các mâu thuẫn Mức độ rủi ro được xác định bằng khoảng cách từ mẫu bị phân loại sai hoặc thiếu tới siêu phẳng trong SVM Cụ thể, siêu phẳng được định nghĩa bởi f(x) = ω^T x + b, với ω là vectơ pháp tuyến và được biểu diễn qua các mẫu huấn luyện (xi, yi) cùng với các nhân Lagrange αi: ω = Σi=1^m αi yi xi Khoảng cách giữa siêu phẳng và mẫu bị phân loại sai xs là Ds = |ω^T xs + b| / ||ω|| Khi sử dụng hàm nhân κ, Ds được tính bằng Ds = |Σi=1^m αi yi κ(xi, xs) + b| / ||ω|| Cuối cùng, mức độ rủi ro được biểu diễn bằng khoảng cách chuẩn hóa Rs = mDs.
Buổi chiều i = 1 Di Các mức độ rủi ro của các mục nhập luồng không nhất quán khác
Luồng các mục nhập được kích hoạt bởi kết quả khớp chính xác trong chữ ký tấn công cơ sở dữ liệu sẽ được mặc định đặt thành 100.
Máy chủ kiểm tra có thể đóng vai trò như bộ điều khiển, tương tự như mặt phẳng điều khiển tập trung trong SDN, nhằm ngăn chặn các cuộc tấn công từ máy bay điều khiển Tuy nhiên, thiết kế này có thể tiêu tốn nhiều băng thông do sự giao tiếp giữa bộ điều khiển và giám sát trạng thái máy chủ, đặc biệt khi SDF cung cấp quản lý lưu lượng cấp ứng dụng Do đó, việc thiết kế mặt phẳng điều khiển trên máy chủ sẽ giúp giảm chi phí liên lạc và độ trễ Mặc dù mặt phẳng điều khiển có thể trở thành mục tiêu của phần mềm độc hại, nhưng máy chủ kiểm tra vẫn có khả năng cảnh báo cho quản trị viên mạng về những bất thường xảy ra.
KẾT QUẢ THỰC HIỆN VÀ ĐÁNH GIÁ
Thực hiện
Nguyên mẫu của giám sát lưu lượng trong SDF được xây dựng trên một phần cứng mạng hỗ trợ OpenFlow, Broadcom BCM56960 Series, hỗ trợ các chức năng
OpenFlow được trình bày chi tiết trong Phần III Chúng tôi đã chọn bộ điều khiển RYU làm nền tảng và tiến hành cài đặt trên máy tính cá nhân sử dụng CPU i7 cùng với bộ nhớ RAM phù hợp.
Chúng tôi phát triển một mô-đun phát hiện tấn công cho máy chủ phần trừu tượng hóa ứng dụng bằng Python, sử dụng LIBSVM làm bộ phân loại SVM để giám sát và kiểm soát trạng thái.
Máy chủ kiểm tra được phát triển trên nền tảng máy chủ Linux, sử dụng ngôn ngữ lập trình Python Nó áp dụng cùng một bộ phân loại và ứng dụng kiểm soát tương tự trên máy chủ.
Thiết lập
Một trong những cải tiến quan trọng nhất trong SDF là khả năng bỏ qua tường lửa cá nhân, giúp đánh giá giám sát lưu lượng phần mềm độc hại hiệu quả hơn Để thực hiện điều này, chúng tôi đã cài đặt bộ khởi động SDF.
Rovnix trên máy chủ đã được thử nghiệm (máy chủ 1) và áp dụng chính sách “Match: *;
Event: LOG, FORWARD; Quy tắc: null ”để ghi lại tất cả những gì đã chụp giao thông
Bên cạnh đó, hai tường lửa cá nhân khác nhau (McAfee và Norton) và bộ khởi động
Rovnix được cài đặt trên một máy chủ khác (Host 2) với tư cách là đối tượng kiểm soát
Một công tắc kết nối với Internet, các mô-đun giám sát lưu lượng và hai máy chủ, cho phép phản ánh toàn bộ lưu lượng truy cập giữa Internet và máy chủ được kiểm tra Điều này giúp máy chủ giám sát ghi lại tất cả lưu lượng từ và đến máy chủ, như mô tả trong Hình 10 Qua đó, hiệu suất có thể được đánh giá bằng cách so sánh lưu lượng đã ghi với lưu lượng được nhân bản.
Hình 10 Cấu trúc liên kết trong thử nghiệm phát hiện lưu lượng phần mềm độc hại.
Chúng tôi phân loại thông tin máy chủ và nghiên cứu cách mà các yếu tố như tác vụ, CPU và thời gian bộ nhớ ảnh hưởng đến độ chính xác trong việc nhận diện lưu lượng độc hại Hai chương trình được phát triển để tạo ra lưu lượng độc hại là SYN Floer, với khả năng tạo gói SYN từ IP nguồn giả mạo, và người rò rỉ quyền riêng tư, thường xuyên gửi thông tin máy chủ như địa chỉ MAC, địa chỉ IP, tên máy chủ và nhiệm vụ đang chạy Chúng tôi áp dụng hai chính sách “Đối sánh” để tối ưu hóa quy trình này.
Trong cơ sở dữ liệu, payload có thể nằm trong DB hoặc HEADER Các sự kiện quan trọng bao gồm LOG và DROP Quy tắc xác định rằng giá trị null và các nhật ký lưu lượng truy cập đáng ngờ khác sẽ được phân loại là bất hợp pháp bởi trình phân loại SVM.
Chúng tôi đã vô hiệu hóa trình theo dõi trạng thái máy chủ lưu trữ bằng cách trả về các giá trị task = null, CPU = 0, và memory = 0, đồng thời hiển thị phân loại mà không có thông tin máy chủ lưu trữ Dữ liệu đào tạo của chúng tôi được thu thập từ các loại tấn công trong ba tình huống: duyệt web, tải xuống và tải lên dữ liệu, cùng với việc tạo tiểu thuyết mới không dựa trên dữ liệu đào tạo Mục tiêu là đánh giá hiệu suất của cả phân loại thông tin máy chủ lưu trữ và máy chủ thông tin máy chủ phân loại bị vô hiệu hóa trong các trường hợp khác nhau.
Chúng tôi đã tiến hành kiểm tra các cuộc tấn công nhằm vào máy bay điều khiển, đặc biệt là khả năng của máy chủ kiểm toán trong việc cảnh báo quản trị viên mạng khi phần mềm độc hại tấn công Cụ thể, chúng tôi sử dụng phần mềm độc hại Mal1.exe để can thiệp vào thông báo "sửa đổi trạng thái", nhằm cài đặt hoặc gỡ bỏ các mục nhập luồng vào giám sát lưu lượng, đồng thời thêm một mục nhập luồng để chuyển tiếp lưu lượng tấn công Bên cạnh đó, phần mềm độc hại mal2.exe được sử dụng để can thiệp vào chức năng "FlowStatsReply", thay thế số gói và số byte của các luồng với các giá trị không chính xác, dẫn đến việc phân loại sai các cuộc tấn công thống kê.
Phần mềm độc hại mal3.exe được thiết kế để tắt máy bay điều khiển khi phát hiện điểm đến không thể truy cập, đồng thời cài đặt quy tắc luồng nhằm chuyển tiếp lưu lượng truy cập của nó.
Để ngăn chặn các cuộc tấn công máy bay điều khiển, cần phải tắt tất cả phần mềm độc hại đang gửi tràn ngập gói SYN đến một máy chủ với tốc độ 20 gói mỗi giây Các chính sách bảo vệ phải được thiết lập để chặn những gói bất hợp pháp, được xác định bởi Bộ phân loại SVM, nhằm đảm bảo chỉ những tính năng tác vụ hợp lệ được thực hiện.
Mal1.exe mới có trong cơ sở dữ liệu chữ ký tấn công
Chi phí xử lý gói tin chủ yếu phát sinh từ các thủ tục bỏ sót trong các luồng, bao gồm việc tra cứu bảng luồng, gói trong yêu cầu, các tính năng đang chờ xử lý, phân loại và cài đặt quy tắc luồng.
Để đảm bảo tính chính xác trong việc đánh giá chi phí, tất cả các thủ tục đã đề cập đều phải được thực hiện đầy đủ, ví dụ như không thể chấp nhận Rule = null Chúng tôi áp dụng chính sách "Match" để đảm bảo sự nhất quán trong quá trình này.
(SVM CLASS = FALSE, IN PORT = máy chủ); Event: FORWARD; Quy tắc:
Để cho phép các kết nối được xác định là lưu lượng lành tính bởi bộ phân loại SVM, chúng tôi sử dụng quy tắc OFMatch với IN = host & IP DST = ip dst và Action = FORWARD Chúng tôi đánh giá chi phí xử lý gói tin bằng cách đo thời gian khứ hồi của 100 gói tin được tạo ra từ hai máy chủ đã được thử nghiệm, cả trong trường hợp có và không có SDF.
Kết quả thử nghiệm
Trong thử nghiệm thu thập lưu lượng phần mềm độc hại, chúng tôi đã sử dụng gói tin được máy chủ lưu trữ để tính toán tốc độ bắt gói Kết quả cho thấy rằng trong đối tượng kiểm soát, mặc dù McAfee và Norton phát hiện phần mềm độc hại khi Rovnix được sao chép vào máy chủ, họ không thể nắm bắt lưu lượng truy cập của bộ khởi động Rovnix Ngược lại, SDF có khả năng nắm bắt tất cả các gói của Rovnix bootkit, trong khi số lượng gói được tạo ra là rất lớn và khó kiểm soát.
Trong quá trình xác định lưu lượng độc hại, chúng tôi đã phân tích ảnh hưởng của các tính năng khác nhau đến kết quả phân loại, đặc biệt là trong bối cảnh của trình phân loại SVM Các tính năng được đề cập trong phần 3.5 cho thấy rằng trọng số của chúng thay đổi tùy thuộc vào loại tấn công Cụ thể, các yếu tố như tác vụ, tần suất, CPU và trường giao thức trong tiêu đề có vai trò quan trọng trong việc nhận diện các cuộc tấn công ARP và SYN-Flood, trong khi tác vụ và trường giao thức cũng rất cần thiết để phát hiện các rò rỉ quyền riêng tư Chúng tôi cũng sử dụng tỷ lệ dương tính thật (TPR) và tỷ lệ dương tính giả (FPR) để đánh giá hiệu quả của quá trình phân loại, trong đó TPR được tính bằng số gói độc hại được phát hiện chia cho tổng số gói độc hại.
Các gói lành tính được sử dụng để so sánh thông tin máy chủ khi được bật và khi bị vô hiệu hóa trong các trường hợp duyệt, tải xuống và tải lên Kết quả, như thể hiện trong Hình 11, cho thấy rằng cả hai phân loại theo SYN-Floer chính xác hơn trong việc phát hiện rò rỉ quyền riêng tư Điều này là do sự tạo ra gói tin độc hại.
SYN-lụter là các gói SYN Do đó, “TCP giao thức ”trở thành một tính năng quan trọng
Lưu lượng truy cập xâm phạm quyền riêng tư thường khó phát hiện, đặc biệt trong kịch bản tải lên, do một số thông tin riêng tư như các tác vụ đang chạy không được đưa vào chữ ký tấn công cơ sở dữ liệu Việc phân biệt lưu lượng độc hại với các cập nhật giao thông thông thường là một thách thức Phân loại thông tin máy chủ lưu trữ theo từng hình thức hiệu quả hơn so với phân loại thông tin trong mọi tình huống Kết quả cho thấy rằng các tính năng của máy chủ lưu trữ có thể nâng cao tỷ lệ phát hiện đúng (TPR) lên hơn 15% và giảm tỷ lệ phát hiện sai (FPR) khoảng 5% trong việc xác định lưu lượng truy cập rò rỉ quyền riêng tư.
Máy chủ kiểm tra có khả năng phát hiện các mâu thuẫn trong mục nhập luồng, từ đó cảnh báo về các tấn công vào máy bay điều khiển Các thông báo này có thể ngăn chặn các cuộc tấn công cài đặt quy tắc luồng (Mal1.exe) và các cuộc tấn công thống kê lưu lượng truy cập (Mal2.exe), như được minh họa trong Hình 12 Hình ảnh về việc ngăn chặn các cuộc tấn công vào máy bay điều khiển cũng được trình bày rõ ràng.
Trong cài đặt quy tắc dòng chặn các cuộc tấn công, mức độ rủi ro của mục nhập luồng gian lận được xác định là 100 cho mal1.exe, vì nó có mặt trong cơ sở dữ liệu chữ ký tấn công Ngược lại, mal2.exe không có trong cơ sở dữ liệu này, dẫn đến mức độ rủi ro của đầu độc các cuộc tấn công thống kê lưu lượng truy cập được tính là 8.2, dựa trên khoảng cách chuẩn hóa tới siêu phẳng.
Khi bộ điều khiển gặp sự cố tắt máy bay điều khiển tấn công (mal3.exe), máy chủ kiểm tra có thể phát hiện sự không đồng nhất trong các mục nhập luồng, với mức độ rủi ro của quy tắc gian lận là 6.4 Ngoài ra, khi bộ điều khiển tắt, có thể xuất hiện một số cảnh báo rủi ro thấp do bộ phân loại có tỷ lệ dương tính giả cao Kết quả của các cuộc tấn công này gần như giống nhau, khiến máy chủ kiểm toán không thể phân biệt được loại tấn công mà bộ điều khiển phải đối mặt Do đó, người điều hành quản trị mạng cần tiến hành phân tích sâu hơn dựa trên các cảnh báo từ máy chủ kiểm tra.
Trễ gói: Bảng 2 mô tả quá trình xử lý gói tin chi phí cao trong hệ thống SDF
TCAM đảm bảo rất ngắn sự chậm trễ để xử lý các gói phù hợp, ít hơn độ trễ trung bình
Thời gian xử lý các gói bỏ sót bảng có độ trễ trung bình tăng lên 105ms do cần phải gửi gói đến người điều khiển và nhận phản hồi Tuy nhiên, các gói bỏ sót bảng chỉ chiếm một phần nhỏ trong lưu lượng mạng, và bộ điều khiển có khả năng cập nhật quy tắc luồng để xử lý gói khi nhận lại Chúng tôi đã phát triển trình giám sát lưu lượng như một phần cứng cụ thể trong nguyên mẫu, giúp giảm thiểu độ trễ của các gói bỏ sót bảng khi hoạt động.
Hình 11 So sánh giữa phân loại kích hoạt thông tin máy chủ và phân loại thông tin máy chủ bị vô hiệu hóa trong SDF.
Hình 12 Cảnh báo chặn các cuộc tấn công cài đặt quy tắc luồng và đầu độc các cuộc tấn công thống kê lưu lượng.
Hình 13 Cảnh báo tắt các cuộc tấn công máy bay điều khiển.
Hình 14 Cách sử dụng 1: bảo vệ máy chủ.
Trường hợp sử dụng
Bảo vệ máy chủ là một trong những trường hợp sử dụng quan trọng, đặc biệt đối với các máy chủ web có thể bị tấn công từ bên ngoài Các cuộc tấn công mạng như DDoS và XSS thường nhắm vào những máy chủ này, vì vậy việc giới hạn truy cập chỉ cho phép các cổng cụ thể như 80 (HTTP) và 443 (HTTPS) là rất cần thiết Những yêu cầu đến từ các cổng không hợp lệ sẽ được chuyển hướng đến một đại lý bảo mật để phân tích Đồng thời, việc giám sát lưu lượng là cần thiết để phát hiện các hoạt động độc hại trong quá trình giao tiếp, bao gồm việc theo dõi các IP đen, lưu lượng truy cập bất thường và các tập lệnh độc hại Để duy trì hiệu quả bảo vệ, cơ sở dữ liệu tấn công trong hệ thống giám sát cần được cập nhật thường xuyên dựa trên phản hồi từ đội ngũ bảo mật.
Chúng tôi có thể sử dụng SDF để tự động cập nhật chính sách bảo mật mà không cần hai đại lý Điều này cho phép các yêu cầu đến cổng 80 và 443, đồng thời phân tích các yêu cầu khác Trước tiên, chúng tôi áp dụng các quy tắc luồng chủ động (các chính sách bảo mật cơ bản) để chuyển tiếp các gói đến lành tính.
Chúng tôi đã thiết kế một ứng dụng phân tích bảo mật nhằm phát hiện các gói đến trên cổng DST 80 hoặc 443, đồng thời báo cáo các gói này đến bộ điều khiển Ứng dụng có khả năng tạo ra các tấn công chữ ký cho các gói độc hại, bao gồm cả địa chỉ IP của máy chủ độc hại và các mô hình WebShell.
Dựa trên các chữ ký mới, ứng dụng phân tích bảo mật động đã cập nhật cơ sở dữ liệu chữ ký tấn công Chúng tôi cũng đã phát triển một ứng dụng kiểm soát chính sách an ninh nhằm báo cáo lưu lượng truy cập đáng ngờ và tự động cập nhật các chính sách bảo mật Hình 14 mô tả một mô hình bảo vệ an ninh máy chủ với SDF, trong đó máy chủ kiểm tra không được trình bày để đơn giản hóa mô tả.
Trong thử nghiệm, chúng tôi đã cố gắng kết nối với cổng trái phép 8080 và tải lên phần mềm độc hại qua cổng 80 Tuy nhiên, khi SDF được kích hoạt, chúng tôi không thể thiết lập kết nối với máy chủ qua cổng 8080, mặc dù cổng này đang mở Việc tải lên cũng không thành công, và địa chỉ IP của khách hàng đã bị thêm vào cơ sở dữ liệu chữ ký của cuộc tấn công.
Kiểm soát mạng của phụ huynh trên PC cho phép quản lý quyền truy cập internet của các người dùng khác nhau, đảm bảo an toàn và bảo mật cho trẻ em khi trực tuyến.
Ban đầu, kiểm soát của phụ huynh liên kết mỗi số lượng ac với một blacklist/whitelist
PC chỉ đơn giản từ chối hoặc cho phép yêu cầu dựa trên danh sách đen và danh sách trắng, dẫn đến việc kiểm soát truy cập không linh hoạt Chiến lược này có thể ảnh hưởng đến các trang web có liên kết bên ngoài và không ngăn chặn được trò chơi trực tuyến nếu trò chơi không nằm trong danh sách đen Nếu chính sách thay đổi theo ứng dụng và thời gian, có thể cần sử dụng hai tài khoản với các chính sách khác nhau và đặt khoảng thời gian hoạt động cho từng tài khoản Hơn nữa, vì các chính sách này là bộ lọc cấp hệ điều hành, chúng có thể bị bỏ qua khi sử dụng ngăn xếp TCP/IP riêng.
Với sự hỗ trợ của SDF, chúng tôi đã phát triển khả năng quản lý truy cập mạng linh hoạt chỉ với một tài khoản Chúng tôi áp dụng ba quy tắc luồng chủ động để chuyển tiếp yêu cầu tới “a.com”, đồng thời kiểm tra các gói dữ liệu để đảm bảo không bị ảnh hưởng bởi các ứng dụng chiếm quá 50% CPU hoặc bộ nhớ Một Trình phân tích Dst được thiết kế để kiểm tra tính liên kết của yêu cầu hiện tại với các yêu cầu trước đó và quyết định hành động cho từng yêu cầu Chúng tôi cũng thiết lập một ứng dụng kiểm soát chính sách bảo mật để gửi yêu cầu tới trình phân tích Dst trong khung giờ từ 08:00 đến 18:00, đảm bảo truy cập miễn phí ngoài khung giờ này Quan trọng, thiết kế của Dst Analyzer không thêm quy tắc luồng mới vào giám sát lưu lượng, giúp loại bỏ các yêu cầu đến “b.com” ngay cả khi chúng xuất hiện trong các liên kết bên ngoài của “a.com”, từ đó tạo ra một mạng gốc điều khiển linh hoạt.
Trong thử nghiệm của chúng tôi, chúng tôi truy cập "Google.com" và tìm kiếm "Facebook" trên Google Hình ảnh Kết quả hiển thị tất cả các hình ảnh liên quan đến chủ đề này, với các URL thuộc các liên kết bên ngoài Chúng tôi cũng cố gắng kết nối với những nguồn tài liệu này.
“www.facebook.com” lúc 17:55, nhưng bị chặn
Yêu cầu kết nối được phép vào lúc 18:05 Chúng tôi sử dụng Warcraft để kiểm tra lưu lượng truy cập và tìm kiếm một số lưu lượng truy cập cùng với phần mềm Warcraft, giúp cập nhật và ghi lại thông tin lưu lượng này.
Hình 15 Ca sử dụng 2: điều khiển mạng của phụ huynh.
KẾT LUẬN, HẠN CHẾ VÀ NHỮNG VẤN ĐỀ BÀN LUẬN
Giám sát lưu lượng trên NIC có thể được triển khai trên cả hai chuyển đổi bên hoặc bên NIC, nhưng việc triển khai phía NIC thường thuận tiện hơn cho người dùng phổ thông Trong khi đó, triển khai bên chuyển đổi phức tạp hơn với nhiều máy chủ, yêu cầu giá trị trường IN_PORT phải lớn hơn hai để xác định các máy chủ khác nhau Các ứng dụng điều khiển cũng cần được phân tách thành các nhóm khác nhau để quản lý hiệu quả từng máy chủ Mặc dù chúng tôi coi việc triển khai phía NIC là giải pháp ưu việt hơn, nhưng hạn chế về tài nguyên phần cứng có thể là một thách thức Do đó, chúng tôi dự định thực hiện và tối ưu hóa SDF trên phía NIC trong bối cảnh tài nguyên phần cứng hạn chế trong tương lai.
Kiểm soát lưu lượng cấp ứng dụng mang lại sự linh hoạt cho việc quản lý lưu lượng kỹ thuật Mặc dù SDF có khả năng kiểm soát bỏ sót bảng cấp ứng dụng thông qua việc liên kết thông tin máy chủ lưu trữ với từng gói ở phía máy chủ, nhưng bộ giám sát lưu lượng không thể thực hiện liên kết này mà không có bảng thông tin cổng - máy chủ.
Gói bỏ sót bảng (OFMatch: *, Action REPORT) có thể là một giải pháp đơn giản để nhận và xác định máy chủ thông tin cho mỗi gói Tuy nhiên, giải pháp này có thể gây ra chi phí cao cho mạng, như độ trễ lâu và tiêu thụ băng thông lớn trong lưu lượng giám sát Mục tiêu của chúng tôi là duy trì cổng - bảng thông tin máy chủ lưu trữ ở phía giám sát và tạo các tác vụ, CPU, cùng các trường bộ nhớ trong tiêu đề Mặc dù việc duy trì bảng tiêu tốn một phần băng thông, nhưng chi phí thấp hơn đáng kể so với giải pháp đơn giản Tuy nhiên, việc sửa đổi giao thức OpenFlow bằng cách thêm các trường bổ sung và cổng - bảng thông tin máy chủ lưu trữ có thể không thực tế trong các kịch bản triển khai bên chuyển đổi.
SDF thu thập thông tin từ giám sát trạng thái máy chủ để phát hiện các gói bất hợp pháp, nhưng phần mềm độc hại có thể lợi dụng API của các trình theo dõi để cung cấp thông tin giả Để đối phó với tình huống này, chúng tôi đề xuất đào tạo một mạng quản trị viên nhằm phân loại và xác định hành vi bình thường của từng ứng dụng trong lưu lượng truy cập Thông thường, ứng dụng khách sẽ kết nối với máy chủ DNS để lấy địa chỉ IP và thiết lập kết nối với máy chủ.
SDF có khả năng phát hiện các gói TCP trước khi thực hiện truy vấn DNS, cho phép nó báo cáo các sự kiện đáng ngờ đến quản trị mạng để tiến hành phân tích sâu hơn Ngoài ra, SDF còn có thể áp dụng một số phương pháp khác để tăng cường khả năng giám sát và bảo mật mạng.