Các ứng dụng của học máy trong an toàn mạng
HỌC MÁY CÓ VAI TRÒ NGÀY CÀNG LỚN ĐỐI VỚI AN TOÀN MẠNG
Tại sao học máy lại trở lên cần thiết trong an toàn mạng?
Có nhiều lý do vì sao học máy cần thiết cho an toàn mạng. Dưới đây sẽ giải thích ba lý do chính:
Thứ nhất, nhờ học máy, các hệ thống an toàn mạng có thể phân tích và học từ nhiều mối đe dọa, từ đó có khả năng chống lại các cuộc tấn công tương tự và phản ứng với các hành vi bất thường. Ví dụ như trình diệt virus BullGuard của Đan Mạch có khả năng thích ứng với các loại hình tấn công mới bằng cách tăng thêm lớp bảo vệ hiệu quả bằng học máy.
Thứ hai, với sự hiệu quả trong việc tương tác với dữ liệu, tìm ra sự tương đồng giữa các mối đe dọa khác nhau và xác định các cuộc tấn công được tiến hành đồng thời bởi các chương trình tự động, học máy giúp đội ngũ an toàn mạng chủ động hơn trong việc ngăn chặn mối đe dọa và ứng phó các cuộc tấn công mạnh mẽ trong thực tế.
Ví dụ như tấn công mạng botnet, tin tặc có thể viết một đoạn mã nhằm vào một camera giám sát của một nhà sản xuất cụ thể. Các camera được đặt ở khắp nơi trên thế giới, tin tặc muốn sử dụng chúng để tạo ra một mạng botnet, từ đó khởi động một chiến dịch lừa đảo nhằm vào khách hàng của một ngân hàng cụ thể. Kiểu tấn công này khó bị phát hiện và thường chỉ được nhận biết sau khi xảy ra các sự kiện như khách hàng nhận được email lừa đảo và đã trở thành nạn nhân. Tuy nhiên, với học máy được thiết kế để phát hiện việc tạo botnet, thì việc phát hiện cuộc tấn công khi mới bắt đầu xuất hiện có thể giúp ngăn chặn kịp thời trước khi xảy ra sự cố.
Thứ ba, học máy giảm thời gian cho những công việc thường ngày và cho phép tổ chức/doanh nghiệp sử dụng nguồn lực một cách chiến lược hơn.
Tóm lại, học máy có thể giúp an toàn mạng trở nên đơn giản, chủ động hơn, giảm thiểu chi phí và tăng hiệu quả. Nhưng học máy chỉ hiệu quả nếu dữ liệu đầu vào của các thuật toán có thể cung cấp một bức tranh toàn cảnh về môi trường hệ thống mạng.
Tại sao tập trung vào dữ liệu là quan trọng để ứng dụng hiệu quả học máy trong an toàn mạng?
Học máy là việc phát triển các mô hình và làm việc với chúng thông qua các thuật toán. Và để phát triển các mô hình, cần sử dụng rất nhiều dữ liệu từ nhiều nguồn. Dữ liệu thể hiện càng nhiều kết quả có thể xảy ra trong càng nhiều tình huống thì càng tốt.
Ngoài ra, dữ liệu không chỉ cần phong phú về số lượng mà cả chất lượng. Dữ liệu cần phải có bối cảnh đầy đủ, phù hợp và phong phú từ mọi nguồn, cho dù ở điểm cuối, trên mạng hay đám mây. Tuy nhiên, cũng cần tập trung vào việc làm sạch dữ liệu để dữ liệu trở lên có nghĩa và hoàn toàn xác định được kết quả.
Thu thập, sắp xếp và cấu trúc dữ liệu
Làm thế nào để nhà quản lý đảm bảo rằng tổ chức/ doanh nghiệp của họ đang tận dụng hiệu quả học máy trong các chiến lược an toàn mạng? Giora Engel, Phó chủ tịch Quản lý sản phẩm của công ty an toàn mạng Palo Alto (Mỹ), cho rằng bước quan trọng đầu tiên là có một cách tiếp cận đúng đắn với dữ liệu.
Engel phát biểu rằng: "Điều quan trọng nhất là về phương pháp thu thập, sắp xếp và cấu trúc dữ liệu. Dữ liệu thu thập chứa tất cả thông tin về mọi thứ có thể xảy ra, không chỉ về các mối đe dọa. Ngoài ra, dữ liệu cần phải đủ phong phú để cung cấp chi tiết về máy móc, ứng dụng, giao thức, cảm biến mạng. Và cần phải có sự tương quan giữa những gì thấy trên hệ thống mạng và tại điểm cuối. Cần phải kết nối tất cả dữ liệu lại với nhau, để có được một biểu diễn đầy đủ với một bức tranh toàn cảnh. Từ đó xây dựng được các mô hình khác nhau, thể hiện được các khía cạnh khác nhau của hành vi và sử dụng các thuật toán để đưa ra quyết định khi nào nên đưa ra cảnh báo, khi nào cần hành động để ứng phó với các mối đe dọa tiềm tàng, hay khi nào cần xây dựng các biện pháp bảo vệ trước".
Ứng dụng học máy vào an toàn mạng
Thực tế cho thấy, những khả năng mà học máy mang đến cho an toàn mạng sẽ gây ảnh hưởng mạnh mẽ và lâu dài. Tuy nhiên, điều quan trọng là phải xem xét trí tuệ nhân tạo (Artificial Intelligence - AI), học máy và học sâu (deep learning) thực sự có thể giúp gì cho an toàn mạng? Điều đầu tiên, cần xem xét định nghĩa của 3 khái niệm này.
- Trí tuệ nhân tạo: là một khái niệm rộng về lĩnh vực khoa học khiến thiết bị, máy móc trở nên thông minh, thực hiện được các nhiệm vụ của con người. Điểm chính là AI không cần phải là học máy hay thiết bị thông minh, nó có thể là một chương trình cổ điển được lập trình trong một con robot lau nhà như tác vụ nhận diện phạm vi, từ đó đưa ra một số quyết định hoặc giải quyết nhiệm vụ của con người.
- Học máy: là một (trong nhiều cách) tiếp cận đối với AI, sử dụng hệ thống có khả năng học hỏi kinh nghiệm. Nó có thể nhận ra các mẫu (pattern) bằng cách sử dụng các ví dụ thay vì lập trình cụ thể. Nó là hệ thống học liên tục, đưa quyết định dựa trên dữ liệu thay vì thuật toán.
- Học sâu: học sâu là một tập hợp kỹ thuật để thực hiện học máy mà nhận diện ra các mẫu của các mẫu. Ví dụ trong nhận diện hình ảnh, hệ thống xác định các đường cơ bản, một cấu trúc hay loại đối tượng và sau đó là chính đối tượng. Học sâu không chỉ là các mạng neuron nhiều lớp, mà nó còn tồn tại các thuật toán khác như Deep Q Learning trong nhiệm vụ học tăng cường (reinforcement learning).
Từ khái niệm cho thấy trong lĩnh vực an toàn mạng chủ yếu đề cập đến học máy, chứ không phải là AI như thường nói. Phần lớn nhiệm vụ mà học máy thực hiện trong an toàn mạng không phải là nhiệm vụ có liên quan đến quyết định của con người.
Mặc dù học máy chưa phải là “viên đạn bạc” - giải pháp tổng thể cho mọi vấn đề của an toàn mạng, thậm chí giờ đây tin tặc có thể lợi dụng học máy để thực hiện những hành vi bất chính, nhưng học máy có thể hỗ trợ giải quyết những nhiệm vụ cơ bản, bao gồm nhận diện, dự đoán, và phân loại. Trong kỷ nguyên số với số lượng dữ liệu khổng lồ và khan hiếm nhân lực tài năng an toàn mạng, học máy dường như là một trong những giải pháp hiệu quả nhất.
CÁC PHƯƠNG PHÁP GIẢI QUYẾT NHIỆM VỤ CỦA HỌC MÁY LIÊN HỆ VỚI AN TOÀN MẠNG
Hồi quy (Regression)
Hồi quy (hay dự đoán) là tri thức về dữ liệu đã có sẵn được sử dụng để hình thành ý tưởng về dữ liệu mới. Ví dụ về dự đoán giá nhà: lấy các dữ liệu về giá nhà từng có để dự đoán giá của những căn nhà mới.
Trong an toàn mạng, hồi quy có thể được áp dụng trong phát hiện gian lận. Các đặc trưng (feature) (ví dụ: tổng số lượng giao dịch đáng ngờ, địa điểm,... ) xác định xác suất của các hành vi gian lận.
Phân loại (Classification)
Phân loại có mục đích đúng như tên gọi của nó là phân loại các đối tượng với nhau, ví dụ như phân loại các loại động vật có trong một bức ảnh. Bộ lọc thư rác là một ví dụ cho phân loại của học máy trong an toàn mạng, thậm chí là cách tiếp cận học máy đầu tiên áp dụng cho các nhiệm vụ trong an toàn mạng.
Học có giám sát thường được sử dụng để phân loại cho các nhóm đã biết, trong đó tất cả các nhóm đã được định nghĩa.
Phân cụm (Clustering)
Phân cụm tương tự với phân loại với một sự khác biệt lớn duy nhất, đó là thông tin về các cụm chưa được xác định. Đây là phương pháp học không giám sát.
Có lẽ, ứng dụng tốt nhất của phân cụm là điều tra số (forensic analysis). Lý do là nguyên nhân và kết quả của một sự cố an toàn mạng là không rõ ràng, nên yêu cầu phải phân loại tất cả các hành động để tìm ra sự bất thường. Các giải pháp phân tích mã độc (ví dụ phòng chống mã độc hay bảo vệ các cổng email) có thể triển khai phân cụm để tách các tệp hợp pháp ra khỏi những tệp ngoại lai (outlier).
Một lĩnh vực khác để ứng dụng phân cụm là phân tích hành vi người dùng. Trong trường hợp này, người dùng của một ứng dụng được phân cụm, từ đó có thể biết người dùng có ở trong một nhóm cụ thể nào không.
Thông thường, phân cụm không được áp dụng để giải quyết một nhiệm vụ cụ thể trong an toàn mạng, mà như một nhiệm vụ nhỏ trong đường ống (pipeline) của mô hình (ví dụ phân chia người dùng thành các nhóm riêng biệt để điều chỉnh giá trị rủi ro).
Học quy tắc kết hợp (association rule learning) hay hệ thống đề xuất
Hãng phim trực tuyến Netflix và mạng xã hội âm nhạc SoundCloud thường đề xuất phim hoặc bài hát theo sở thích dựa trên lịch sử duyệt web của người dùng. Trong an toàn mạng, nguyên tắc này có thể được sử dụng để ứng phó sự cố. Nếu một tổ chức/ doanh nghiệp đối mặt với một loạt các sự cố và cần nhiều biện pháp ứng phó khác nhau, thì hệ thống học máy sẽ học và đưa ra đề xuất thích hợp cho một sự cố cụ thể (ví dụ phân loại là báo động nhầm, thay đổi giá trị rủi ro, thực hiện điều tra). Các giải pháp quản lý rủi ro có thể tự động gán giá trị rủi ro cho các lỗ hổng mới hay các cấu hình sai dựa trên mô tả của chúng.
Giảm số chiều dữ liệu (Dimension Reduction)
Việc giảm số chiều dữ liệu hay khái quát hóa là không phổ biến như phân loại, nhưng là cần thiết để xử lý các hệ thống phức tạp với dữ liệu không được gán nhãn và nhiều đặc trưng khác. Không thể áp dụng phân cụm vì các phương pháp điển hình có số lượng đặc trưng giới hạn hoặc chúng không có hiệu quả. Giảm số chiều giúp cho việc phân cụm trở lên khả thi và đơn giản, loại bỏ các đặc trưng không cần thiết của dữ liệu. Đối với an toàn mạng, việc giảm chiều dữ liệu là phổ biến trong giải pháp nhận diện khuôn mặt.
Mô hình sinh dữ liệu (Generative Model)
Nhiệm vụ của mô hình sinh khác với các mô hình nêu trên. Trong khi các nhiệm vụ khác xử lý với thông tin đã có và các quyết định liên quan, mô hình sinh được thiết kế để tạo ra dữ liệu thực tế (không phải quyết định) dựa trên những quyết định trong quá khứ.
Một nhiệm vụ đơn giản trong an toàn mạng là sinh ra một dãy các tham số đầu vào để kiểm tra một ứng dụng cụ thể có chứa các lỗ hổng có thể chèn mã độc vào hay không.
Ngoài ra, mô hình sinh có thể ứng dụng để tạo ra công cụ quét lỗ hổng cho các ứng dụng web. Một trong những môđun của nó là kiểm tra các tệp có truy cập trái phép hay không, và có thể thay đổi tên tệp hiện có để xác định các tệp mới. Ví dụ, nếu hệ thống thu thập thông tin phát hiện ra tệp có tên login. php, thì tốt hơn là nên kiểm tra các bản sao lưu đã có hoặc bản sao chép của nó bằng cách thử các tên như login_1.php, login_backup.php, login.php.2020. Đây là điểm mạnh của mô hình sinh dữ liệu.
CÁC NHIỆM VỤ CỦA AN TOÀN MẠNG CÓ THỂ ỨNG DỤNG HỌC MÁY
Thay vì tập trung vào các khả năng của học máy để ứng dụng vào an toàn mạng, thì có thể nhìn vào những nhiệm vụ phổ biến của an toàn mạng để ứng dụng học máy. Với cách tiếp cận thứ hai này, có thể thực hiện thông qua 3 khía cạnh, tương tự như 3 câu hỏi tại sao, cái gì, và như thế nào. Cụ thể:
Khía cạnh đầu tiên là mục đích, nhiệm vụ (ví dụ như phát hiện mối đe dọa, dự đoán tấn công,...), trả lời câu hỏi "Tại sao?". Theo hệ thống dự đoán, phòng chống, phát hiện và ứng phó (PPDR) của công ty nghiên cứu và tư vấn công nghệ thông tin Gartner (Mỹ), tất cả nhiệm vụ của an toàn mạng có thể được chia làm 5 nhóm: dự đoán, phòng chống, phát hiện, ứng phó, giám sát.
Khía cạnh thứ hai là các lớp công nghệ, trả lời cho câu hỏi “Cái gì?”. Các lớp cho khía cạnh này bao gồm: an toàn hệ thống mạng (phân tích các luồng truy cập mạng và phát hiện xâm nhập), điểm cuối (phòng chống mã độc), ứng dụng (tường lửa website - WAF, tường lửa cơ sở dữ liệu), người dùng (phân tích hành vi người dùng - UBA), tiến trình (phòng chống gian lận).
Mỗi lớp được chia thành những lĩnh vực khác nhau. Ví dụ, đối với an toàn mạng có thể là có dây, không dây hay đám mây. (Lưu ý, không thể áp dụng cùng một thuật toán với cùng tham số cho các lĩnh vực khác nhau, ít nhất trong tương lai gần. Lý do là thiếu dữ liệu và thuật toán để tìm ra mối liên hệ tốt hơn giữa ba lĩnh vực này, do vậy việc thay đổi thuật toán thành các thuật toán khác là gần như không thể.)
Khía cạnh cuối cùng trả lời câu hỏi "Như thế nào?" (ví dụ, làm thế nào để kiểm tra an toàn mạng của một lĩnh vực cụ thể) bao gồm: truyền tải theo thời gian thực, khi lưu trữ, theo lịch sử,... Ví dụ, đối với bảo vệ điểm cuối, cụ thể là tìm kiếm xâm nhập trái phép, có thể giám sát các tiến trình của tệp thực thi, phân tích nhị phân tĩnh (phân tích với bối cảnh), phân tích lịch sử hoạt động tại điểm cuối,...
Nhiều nhiệm vụ có thể được giải quyết qua 3 khía cạnh trên, mặc dù đôi khi các khía cạnh này không xác định được đối với một số nhiệm vụ nhất định. Tuy nhiên, mỗi đặc điểm của 3 khía cạnh trên trong nhiệm vụ an toàn mạng đều có những điểm phức tạp.
Rất khó khăn để chi tiết hóa tất cả, vì vậy có thể đi sâu vào khía cạnh quan trọng nhất là các lớp công nghệ. Dưới đây là những giải pháp sử dụng học máy để giải quyết các nhiệm vụ an toàn mạng theo khía cạnh này.
Học máy trong bảo vệ an toàn hệ thống mạng
An toàn hệ thống mạng không phải là lĩnh vực riêng biệt mà là một tập hợp những giải pháp khác nhau tập trung vào một giao thức như Ethernet, mạng không dây, hệ thống giám sát và điều khiển từ xa (SCADA), hay hệ thống mạng ảo như mạng định nghĩa bằng phần mềm (SDN).
An toàn hệ thống mạng thường đề cập đến các giải pháp hệ thống phát hiện xâm nhập (IDS) phổ biến. Nhiều hệ thống đã sử dụng học máy từ nhiều năm trước và hầu hết với phương pháp tiếp cận dựa trên dấu hiệu.
Học máy trong an toàn hệ thống mạng đưa ra các giải pháp mới gọi là phân tích các luồng truy cập mạng (NTA), nhằm mục đích phân tích sâu tất cả luồng truy cập ở mỗi lớp để phát hiện tấn công và những điểm bất thường.
Một vài ví dụ mà học máy áp dụng vào an toàn hệ thống mạng có thể kể đến bao gồm:
- Hồi quy giúp dự đoán các tham số của gói mạng và so sánh chúng với các tham số bình thường;
- Phân loại hỗ trợ phát hiện các kiểu tấn công mạng khác nhau như tấn công quét và tấn công giả mạo;
- Phân cụm được sử dụng để điều tra số.
Học máy trong bảo vệ điểm cuối
Thế hệ mới của antivirus là giải pháp phát hiện và ứng phó ở điểm cuối. Sẽ tốt hơn khi học được những đặc trưng trong các tập tin thực thi hoặc trong các hành vi xử lý. Khi muốn bảo vệ điểm cuối bằng học máy, cần lưu ý rằng các giải pháp khác nhau sẽ áp dụng cho các loại điểm cuối khác nhau (như nơi làm việc, máy chủ, nơi lưu trữ, đám mây, thiết bị di động, thiết bị lập trình (PLC), thiết bị IoT). Mọi điểm cuối đều có những đặc điểm riêng biệt nhưng đều có những nhiệm vụ chung có thể áp dụng học máy bao gồm:
- Hồi quy để dự đoán lời gọi hệ thống tiếp theo cho tiến trình thực thi và so sánh nó với lời gọi thực tế;
- Phân loại để phân chia mã độc thành các loại khác nhau như phần mềm độc hại, phần mềm gián điệp, mã độc tống tiền,…;
- Phân cụm nhằm bảo vệ cổng email khỏi mã độc (phân tách các tệp hợp pháp khỏi các tệp ngoại lai).
Học máy trong bảo vệ ứng dụng
Học máy được ứng dụng trong việc bảo vệ ứng dụng bao gồm các giải pháp như tường lửa ứng dụng web (WAF) hay phân tích mã tĩnh và động. Có nhiều mảng trong bảo vệ ứng dụng như bảo vệ ứng dụng web, cơ sở dữ liệu, hệ thống phần mềm quản lý nguồn lực doanh nghiệp (ERP), ứng dụng phần mềm như một dịch vụ (Software as a Service - SaaS), hệ thống nhiều dịch vụ nhỏ (microservices),... Gần như không thể xây dựng một mô hình học máy tổng quát để đối phó với mọi mối đe dọa một cách hiệu quả trong tương lai gần, nhưng hiện nay có thể giải quyết nhiều nhiệm vụ bao gồm:
- Hồi quy để phát hiện sự bất thường trong các yêu cầu HTTP (ví dụ: tấn công Xml External Entity - XEE tấn công yêu cầu giả mạo từ phía máy chủ và bỏ qua xác thực - SSRF);
- Phân loại nhằm phát hiện các loại tấn công đã biết như tấn công chèn mã độc (SQL, XSS, thực thi mã độc từ xa - RCE,...);
- Phân cụm hành vi người dùng để phát hiện loại tấn công từ chối dịch vụ phân tán DDoS và khai thác hàng loạt.
Học máy trong hành vi người dùng
Lĩnh vực này đã bắt đầu được ứng dụng học máy, ví dụ như hệ thống bảo vệ thông tin và quản lý sự kiện (SIEM). SIEM có khả năng xử lý rất nhiều tác vụ nếu được cấu hình đúng, trong đó bao gồm tìm kiếm hành vi người dùng. Nhưng giải pháp phân tích hành vi người dùng và thực thể (UEBA) chỉ ra rằng, SIEM không thể xử lý các loại tấn công mới tiến bộ hơn hay các hành vi liên tục thay đổi.
Thị trường đã chấp nhận một điều là cần có một giải pháp đặc biệt nếu các mối đe dọa được xem xét từ cấp độ người dùng. Tuy nhiên, ngay cả các công cụ UEBA cũng không bao quát được mọi thứ được kết nối với hành vi người dùng, như có người dùng tên miền, người dùng ứng dụng, người dùng ứng dụng SaaS, mạng xã hội, trình tin nhắn, và các loại tài khoản khác cần được giám sát.
Không giống như giải pháp phát hiện mã độc tập trung vào những tấn công phổ biến và có khả năng huấn luyện bộ phận phân loại, hành vi người dùng là lĩnh vực với lớp công nghệ phức tạp, và cũng là vấn đề của học không giám sát. Theo như khái niệm, bộ dữ liệu của học không giám sát không được gán nhãn và không có hướng tìm kiếm cụ thể nào. Vì thế, nhiệm vụ tạo ra một thuật toán phổ quát cho mọi kiểu người dùng là rất khó khăn trong lĩnh vực hành vi người dùng.
Sau đây là một số nhiệm vụ mà tổ chức/doanh nghiệp có thể xử lý với sự hỗ trợ của học máy:
- Hồi quy để phát hiện hành vi người dùng bất thường (như đăng nhập vào thời gian không hợp lý);
- Phân loại các kiểu người dùng khác nhau để phân tích từng nhóm;
- Phân cụm nhằm phân tách các nhóm người dùng và phát hiện ngoại lai.
Học máy trong hành vi tiến trình
Việc xử lý hành vi tiến trình giúp tổ chức/ doanh nghiệp tìm ra những điều bất thường và các giải pháp trong lĩnh vực này cũng có sự khác biệt với nhau đáng kể. Ví dụ như tìm kiếm gian lận trong hệ thống ngân hàng và bán lẻ, hay trong hệ thống máy móc của nhà máy sản xuất. Cả hai hoàn toàn khác nhau và yêu cầu nhiều kiến thức nghiệp vụ. Trong học máy, kỹ thuật học các đặc trưng (phương thức biểu diễn dữ liệu thành thuật toán) là điều cần thiết để có được kết quả. Tuy nhiên, các đặc trưng là khác nhau trong mỗi tiến trình.
Một cách tổng quát, có các ví dụ sau về các nhiệm vụ trong lĩnh vực hành vi tiến trình mà học máy có thể xử lý:
- Hồi quy để dự đoán hành vi người dùng tiếp theo và phát hiện ngoại lai như gian lận thẻ tín dụng;
- Phân loại để phát hiện loại gian lận đã biết;
- Phân cụm nhằm so sánh các tiến trình xử lý doanh nghiệp và phát hiện ngoại lai.
Như vậy, bài viết đã nêu lên tầm quan trọng của học máy với an toàn mạng và hai hướng để áp dụng học máy vào an toàn mạng: từ ứng dụng học máy liên hệ tới an toàn mạng và từ những nhiệm vụ của an toàn mạng liên hệ tới những khả năng có thể sử dụng học máy. Mặc dù còn nhiều vấn đề chưa thể giải quyết một cách triệt để, nhưng học máy là giải pháp cần thiết và là con đường hứa hẹn trong nhiệm vụ đảm bảo an toàn mạng cho các tổ chức/doanh nghiệp.
TÀI LIỆU THAM KHẢO 1. Alexander Polyakov (2018). "Machine Learning for Cybersecurity". 2. Al Perlman (2019). "The Growing Role of Machine Learning in Cybersecurity". 3. Clicked (2019). "The importance of machine learning in cyber security". |
Quang Minh