Các nhà nghiên cứu bảo mật hàng đầu tại IBM mới đây đã phát triển thành công một kỹ thuật để khắc phục gần như triệt để ảnh hưởng của các lỗ hổng bảo mật trước khi chúng thực sự được tìm thấy. Trình bày tại hội thảo quốc tế về Thông tin và vận hành Công nghệ Thông tin, các nhà nghiên cứu của IBM cho biết cách tiếp cận được sử dụng ở đây chính là kết hợp cùng với RAID18 để thúc đẩy thực hiện kỹ thuật kiểm tra nhằm tạo dữ liệu dựa trên học tập có giám sát.
"Trong khi nghiên cứu các giải pháp dò tìm lỗ hổng bảo mật trong những phần mềm phổ biến, chúng tôi đã dừng lại một chút để suy nghĩ về vấn đề sau: Ai cũng biết một thực tế là về mặt lý thuyết, chúng ta gần như không thể tìm thấy tất cả lỗ hổng trong ứng dụng theo cách thủ công, và cộng đồng bảo mật luôn phải chạy đua để khám phá cũng như theo kịp các kỹ thuật hack mới với hy vọng tìm thấy chúng trước khi kẻ xấu kịp khai thác, dẫn đến tính hiệu quả trong cả khâu phòng chống lẫn khắc phục hậu quả bảo mật đều không cao. Để khắc phục tình trạng này, chúng tôi nghĩ rằng biện pháp hiệu quả nhất không gì khác là thực thi các quy định và liên tục triển khai bản vá bảo mật mới cho hệ thống”. Ông Fady Copty, nhà chuyên gia chịu trách nhiệm về công trình nghiên cứu chia sẻ.
Triển khai từng bản vá bảo mật trên ứng dụng là công việc tẻ nhạt và tốn rất nhiều thời gian. Nó bao gồm một loạt các bước như xác định xem phiên bản nào của ứng dụng là dễ bị tổn thương, quản lý lỗ hổng bảo mật này ra sao, cung cấp bản vá như thế nào, sau đó mới đến triển khai bản vá và khởi động lại ứng dụng. Thông thường, các bản vá sẽ được triển khai dần dần theo lộ trình chứ không phải là một sớm một chiều, do đó ứng dụng vẫn có thể có nguy cơ bị tổn thương trong khoảng thời gian sau khi lỗ hổng được phát hiện và trước khi các bản vá được triển khai. Để tăng tốc quá trình triển khai bản vá bảo mật, gần đây, các nhà nghiên cứu đã giới thiệu ra thứ được gọi là các bản vá ảo, phân phối và triển khai bằng cách sử dụng hệ thống phát hiện và ngăn chặn xâm nhập.
"Bản vá ảo dựa trên các kỹ thuật bán thủ công để phân tích mối đe dọa (dữ liệu đầu vào ứng dụng (application-input) thể hiện thông tin về lỗ hổng), và trích xuất các dấu hiệu giúp xác định lỗ hổng", ông Fady Copty giải thích. "Đây là một kỹ thuật hữu ích, nhưng vẫn yêu cầu phải xác định rõ được lỗ hổng, đó là vấn đề không đơn giản, chúng ta đều biết có cả một “ngành công nghiệp” được tạo nên xung quanh chu trình phát hiện và vá lỗ hổng này. Nhưng nếu chúng ta có thể tạo ra một bản vá ảo với khả năng dự đoán lỗ hổng, mọi chuyện sẽ được giải quyết gọn ghẽ. Lúc đầu, ý tưởng này nghe có vẻ như là một nhiệm vụ của tương lai, nhưng trên thực tế, với một số hiểu biết từ các kỹ thuật kiểm tra bảo mật, người ta hoàn toàn có thể tìm thấy cách thức phát triển các bản vá ảo”.
Nói chung, các lỗ hổng bảo mật thường được phát hiện bằng cách xem xét dữ liệu đầu vào mà trước đó một lỗi ứng dụng cũng đã từng xuất hiện. Điều này là do việc xử lý lỗi thường được coi là ít quan trọng hơn so với việc phát triển các chức năng cơ bản của ứng dụng, cũng bởi vậy mà công việc khắc phục lỗi được tiến hành ở giai đoạn sau. Nếu chúng ta có thể làm tốt việc tự động tạo ra một bản vá ảo, giúp hỗ trợ tối đa cho các nhà phát triển SW trong việc xử lý lỗi, chúng ta hoàn toàn có thể chiếm thế chủ động trước các mối đe dọa bảo mật.
Fady Copty và các đồng nghiệp đã quyết định giải quyết vấn đề này bằng cách sử dụng những kỹ thuật học máy. Họ đã tiến hành chạy các công cụ kiểm tra khác nhau trên cùng một ứng dụng nhất định để tạo dữ liệu, sau đó sử dụng dữ liệu này để huấn luyện mô hình học máy DNN của mình.
"Chúng tôi đã sử dụng các kỹ thuật kiểm tra để tạo ra hàng triệu kết quả đầu vào mẫu cho ứng dụng, và sau đó chạy ứng dụng với các kết quả đầu vào này để xác định cũng như phân loại chúng theo các đặc điểm như: Lành tính, lỗi hoặc độc hại. Vì đang xem xét xử lý lỗi thế nên chúng tôi đã hợp nhất các kết quả lỗi và độc hại thành một lớp. Điều này giúp chúng tôi xây dựng lên một mô hình thiết lập học tập có giám sát kiểu cổ điển, tức là đào tạo một mô hình học máy nhằm dự đoán xem mẫu kết quả mới này là lành tính hay độc hại”, ông Copty giải thích.
Thay vì trực tiếp tạo ra bản vá ảo phòng chống trước các mối đe dọa có thể xuất hiện trên một ứng dụng, các nhà nghiên cứu muốn thiết lập một hệ thống tự động, có thể được sử dụng để vá nhiều loại lỗ hổng, trên nhiều dạng ứng dụng khác nhau nhằm mang lại hiệu quả triệt để hơn. Ngoài ra, để tăng cường tính khái quát của mô hình, các nhà nghiên cứu đã không sử dụng những phương pháp trích xuất tính năng thủ công.
"Chúng tôi cũng muốn triển khai mô hình này trong một hệ thống phát hiện xâm nhập hoàn chỉnh. Có nghĩa là các dự đoán phải gần với thời gian thực. Một giải pháp tuyệt vời cho yêu cầu này có thể được tìm thấy trong DNN. Dự đoán của DNN rất nhanh, và nhiều chuyên gia tin rằng DNN không yêu cầu bất kỳ trích xuất tính năng nào cả".
Fady Copty và các đồng nghiệp đã đào tạo một mô hình DNN dựa trên dữ liệu mà họ đã tạo ra trước đó. Mô hình mà nhóm Copty sử dụng, kết hợp với mạng thần kinh tích chập (convolutional neural network - CNN) và mạng thần kinh hồi quy (recurrent neural network - RNN), đã đạt được kết quả đáng chú ý trong việc dự đoán các lỗ hổng trước khi chúng thực sự gây ra vấn đề.
"Làm thế nào để bạn có thể kiểm tra khả năng vá và phát hiện một mối đe dọa trược khi nó kịp gây ra bất cứ hậu quả nào? Câu trả lời rất đơn giản: Chúng ta phải tua ngược thời gian. Chúng tôi đã sử dụng phiên bản cũ của các ứng dụng trong giai đoạn tạo dữ liệu, huấn luyện cho mô hình học máy bằng việc sử dụng các dữ liệu này, cũng như đưa ra thử nghiệm thực tế các về các mối đe dọa được tìm thấy nhiều năm sau đó và được ghi lại trong cơ sở dữ liệu CVE. Điều này đã mang lại cho chúng tôi kết quả tuyệt vời trong việc tạo ra bản vá trước cho một mối đe dọa. Cụ thể, mô hình học máy có thể dự đoán trước mối đe dọa được tìm thấy chỉ vài năm sau đó. Tất nhiên công trình này mới đang trong giai đoạn nghiên cứu và chúng tôi chỉ thủ được thành công trên một số ít ứng dụng, thế nhưng nó hoàn toàn có tiềm năng trở thành thứ “thay đổi cuộc chơi”, đặc biệt là trong bối cảnh tình hình an ninh mạng đang có những diễn biến phức tạp như hiện nay, giúp các chuyên gia bảo mật chiếm thế chủ động và thậm chí là có thể đi trước cả những kẻ tấn công”.
Trong những đánh giá được thực hiện bởi nhiều nhà nghiên cứu khác nhau, mô hình của Fady Copty và các đồng nghiệp đã phát hiện thành công các lỗ hổng LibXML2 và LibTIFF trước khi chúng kịp gây ra vấn đề, với độ chính xác lần lượt là 91.3% và 93.7%. Để nâng cao kết quả của công trình, nhóm Copty đã mở rộng mô hình của mình bằng cách thêm một đường dẫn bao gồm trích xuất tính năng cơ bản, dựa trên kiến thức được trích xuất tự động trong giai đoạn thử nghiệm và sau đó là CNN.
Tóm lại, trong tương lai, kỹ thuật mới này hoàn toàn có thể giúp các nhà phát triển vá các lỗ hổng phần mềm nhanh hơn và hiệu quả hơn, trước khi chúng thực sự bị phát hiện và khai thác mới tin tặc. Ngoài ra, Fady Copty và các đồng nghiệp cũng có kế hoạch tiếp tục đẩy mạnh hơn nữa quy mô của phương pháp, cũng như khám phá tính hiệu quả của phương pháp này trong việc vá một loạt các lỗ hổng lớn hơn.
"Nhờ có sự giúp đỡ của Reda Igbaria, chúng tôi hiện đã mở rộng nghiên cứu này sang nhiều ứng dụng hơn và gần đây đã chứng minh được tính hiệu quả của các bản vá ảo trước mối đe dọa cho lỗ hổng HeartBleed. Chúng tôi sẽ tiếp tục nhắm mục tiêu đến nhiều ứng dụng hơn và tăng cường các kỹ thuật tạo dữ liệu cũng như cấu trúc DNN của mình. Ngoài ra, việc đầy mạnh khả năng tự động tìm kiếm cấu trúc DNN tốt nhất cũng là một trong những ưu tiên hàng đầu". Ông Fady Copty chia sẻ.