AI định hình lại kho vũ khí an ninh mạng như thế nào?
Từ phân tích mã nguồn đến "red team", các công cụ được trí tuệ nhân tạo (AI) hỗ trợ đang cách mạng hóa khả năng phòng thủ chống lại các mối đe dọa mạng. Các tổ chức đang tận dụng AI để củng cố thế trận bảo mật và đi trước các cuộc tấn công ngày càng phát triển như thế nào?
Chúng ta đều đã chứng kiến việc WazirX (sàn giao dịch tiền điện tử) gần đây đã mất 230 triệu USD trong một cuộc tấn công lớn. Hay như vụ rò rỉ của Disney tiết lộ thông tin tài chính, thông tin chiến lược và dữ liệu của nhân viên và khách hàng. Và vụ vi phạm của Tencent đối với 1,4 tỷ thông tin chi tiết của người dùng.
Những sự kiện này đã đặt ra nhu cầu về an ninh mạng (ANM) tận dụng AI để tạo ra vũ khí mạnh hơn nhằm bảo vệ các "bức tường" luôn bị tấn công của các hệ thống kỹ thuật số.
Hãy bàn về việc tăng cường 4 trụ cột chính theo quan điểm của kẻ tấn công vì chúng tạo thành cốt lõi của hệ thống bảo mật của bất kỳ tổ chức nào.
Công cụ phân tích mã nguồn
Kiểm tra bảo mật ứng dụng tĩnh (Static application security testing - SAST) là một trong những công cụ ANM được sử dụng rộng rãi nhất trên toàn thế giới. Tuy nhiên, một vấn đề chung mà hầu hết các công cụ này (kể cả các công cụ được trả tiền) gặp phải là số lượng kết quả "dương tính" giả cực cao.
Kết quả này có thể làm tốn thời gian của nhân viên vận hành bảo mật (secops), khiến họ phải đầu tư thời gian và công sức vào việc nghiên cứu các bản vá cho những lỗi được gọi là nghiêm trọng mà trong nhiều trường hợp có thể chỉ là "không nghiêm trọng" hoặc "mang tính tham khảo".
Điều này chủ yếu là do các yếu tố như:
Thiếu dữ liệu thực tế. Mã nguồn của hầu hết các tổ chức là độc quyền và bản thân công cụ ANM không được phép thu thập bất kỳ thông tin chi tiết nào từ đó. Thông tin chi tiết có thể đặc biệt hữu ích, chẳng hạn như đoạn mã nào bị đánh dấu sai là dễ bị tấn công hoặc lỗ hổng nào bị bỏ sót. Việc không có các tình huống thực tế khiến công cụ ANM không thể phát triển hoàn thiện.
Hỗ trợ ngôn ngữ hạn chế. Trong khi các ngôn ngữ lập trình liên tục phát triển với các phiên bản mới, nâng cấp và mở rộng, các OEM (nhà sản xuất thiết bị gốc) khó có thể theo kịp tiến độ cập nhật. Do đó, số lượng ngôn ngữ được hỗ trợ rất hạn chế.
Khi AI tạo sinh (genAI) bước vào "đấu trường", nhiều ứng dụng thực tế, vốn chỉ vài năm trước có vẻ như chỉ là một giấc mơ xa vời nay đang dần thành hình. SAST cũng không ngoại lệ. Nhiều tổ chức đã thừa nhận những thách thức được liệt kê ở trên và bắt đầu tích hợp các mô hình có giám sát vào các dịch vụ của họ.
Một trong những công ty như vậy là một ngân hàng lớn của Ấn Độ với hơn 5 triệu khách hàng, liên tục gặp phải nửa triệu vấn đề trong mã mặc dù đã điều chỉnh và tinh chỉnh cấu hình trong một công cụ SAST thương mại phổ biến.
Họ đã khắc phục các vấn đề khi bắt đầu đào tạo một mô hình phát hiện các kết quả dương tính giả, tìm kiếm giải pháp thay thế, hiểu rõ hơn về tích hợp API (giao diện chương trình ứng dụng) và cuối cùng đã giảm 40% các kết quả dương tính giả trong 2 tháng. Điều này đã giảm đáng kể số giờ làm việc dành cho việc xác minh.
Với mô hình AI tích hợp mạnh, SAST hiện đại có thể có bộ quy tắc và phát hiện dành riêng cho công ty. Mô hình được tinh chỉnh hơn và tạo ra ít kết quả dương tính giả hơn. Đồng thời, có thêm nhiều ngôn ngữ lập trình hơn.
Công cụ quét ứng dụng tự động
Đây là những công cụ tinh vi vì số lượng tác vụ chúng cần thực hiện và dựa trên các công nghệ mà chúng cần tương thích để chạy trôi chảy. Một số máy quét bảo mật tự động tốt nhất có hàng triệu dòng mã và luôn được phát triển, sửa lỗi và cập nhật khả năng tương thích vì chúng cần phù hợp với các công nghệ không ngừng phát triển, cải tiến nền tảng, điều chỉnh ngôn ngữ và hướng dẫn bảo mật.
Các máy quét bảo mật ứng dụng tự động hiện đại có thể thực hiện đăng nhập, ghi lại macro (một loại phần mềm được sử dụng để tự động hóa các tác vụ lặp đi lặp lại trong các ứng dụng máy tính - NV), yêu cầu điều tiết dựa trên phản hồi của máy chủ, xác định lỗ hổng và khai thác chúng thông qua hàng trăm kỹ thuật khác nhau. Tuy nhiên, ngay cả khi chúng ta chạy cùng một công cụ trên 100 ứng dụng khác nhau, công cụ hầu như không "học" được từ mỗi lần kiểm tra!
Đây là nơi AI sẽ tạo ra tác động. Với mỗi ứng dụng được thử nghiệm, mô hình sẽ được tạo ra để tìm hiểu những lỗi mà các nhà phát triển liên tục mắc phải, khả năng bỏ qua CAPTCHA (một loại kiểm thử dạng hỏi đáp được dùng trong máy tính để xác định xem người dùng có phải là con người hay không)/tường lửa, giảm nhiễu bằng cách loại bỏ các trường hợp thử nghiệm không thể theo môi trường, điều chỉnh tải trọng để phù hợp với môi trường và quan trọng nhất là học hỏi từ mọi nhiệm vụ về những gì là dương tính giả và những gì đã bị bỏ sót.
Hơn nữa, chúng ta có thể đào tạo mô hình để tạo biểu đồ và con trỏ để ban quản lý xem xét các lỗ hổng phổ biến nhất và tác động của chúng dựa trên mức độ nghiêm trọng và tác động tài chính đối với tổ chức.
Sự thay đổi lớn này diễn ra trong lĩnh vực kiểm tra bảo mật ứng dụng động (DAST) của ANM, đồng thời phát triển cách thức hoạt động và tạo báo cáo của các công cụ hiện tại, có thể thay đổi toàn bộ vòng đời phát triển, tạo ra một phương pháp lập trình khả thi để tất cả mọi người có thể thích ứng nhằm đảm bảo an ninh đầy đủ cho tổ chức và phát triển cùng với nó để đảm bảo mọi tiến bộ đều an toàn.
Vũ khí "Red teaming"
Red teaming trong ANM là một phương pháp tiếp cận năng động và toàn diện để đánh giá và tăng cường khả năng phục hồi an ninh của một tổ chức. Nó bao gồm việc mô phỏng các cuộc tấn công mạng tinh vi của các chuyên gia lành nghề, thường được gọi là các "nhóm đỏ", những người mô phỏng các chiến thuật, kỹ thuật và quy trình (Tactics, Techniques and Procedures - TTP) của các đối thủ trong thế giới thực. Không giống như các đánh giá bảo mật truyền thống tập trung vào việc xác định các lỗ hổng và vá chúng, Red teaming còn vượt xa hơn bằng cách kiểm tra hiệu quả của con người, quy trình và công nghệ của một tổ chức trong việc phát hiện và ứng phó với các mối đe dọa mạng.
Red teaming mô phỏng một cuộc tấn công trong thế giới thực xảy ra không có ranh giới và động cơ không chỉ là xác định các lỗ hổng mà còn khai thác chúng, đưa ra các kịch bản tệ nhất có thể xảy ra. Đánh giá của "nhóm đỏ" bao gồm các hoạt động lừa đảo, tấn công từ chối dịch vụ (DDoS), chiếm quyền, tấn công phía máy khách, kỹ thuật xã hội và nhiều hoạt động khác, thường bị thiếu trong thử nghiệm.
Nói về các công cụ được sử dụng trong red teaming bởi các tổ chức khác nhau trên toàn cầu, có rất nhiều công cụ red teaming và điều thú vị là hầu hết các công cụ tốt đều là mã nguồn mở. Một số công cụ hỗ trợ lập bản đồ thư mục/miền, leo thang đặc quyền, liệt kê hoặc cho bất kỳ trong số 2.000 cuộc tấn công có thể xảy ra trong "nhóm đỏ"!
Kết hợp với khả năng của AI, chúng ta có thể mong đợi các công cụ này bỏ qua giao diện quét phần mềm độc hại (AMSI) và các công cụ diệt virus dễ dàng hơn, nhờ khả năng tạo các tập lệnh bỏ qua tùy chỉnh. Chúng ta cũng có thể mong đợi các công cụ với các phương pháp tiếp cận thậm chí còn bí mật hơn vì mô phỏng phát hiện có thể được giao cho AI để liên tục cải thiện yếu tố ninja!
Ngoài ra, thay đổi chữ ký tập lệnh, sắp xếp tên hàm, tuồn dữ liệu ra khỏi máy và can thiệp vào nhật ký một cách sáng tạo là một số công việc mà chúng ta có thể giao phó cho AI.
Công cụ kỹ thuật đảo ngược
Trong lĩnh vực phần mềm, kỹ thuật đảo ngược (reverse engineering) thường liên quan đến việc tháo rời hoặc dịch ngược mã thực thi để trích xuất thông tin về mã nguồn, cấu trúc dữ liệu và thuật toán của nó. Công việc này được sử dụng cho nhiều mục đích khác nhau, bao gồm việc tìm hiểu các hệ thống cũ, khả năng tương tác giữa các thành phần phần mềm khác nhau, xác định lỗ hổng và phát hiện hành vi độc hại.
Kỹ thuật đảo ngược luôn là một khía cạnh bị bỏ quên đối với các nhà phát triển và là con dao đa năng đối với những kẻ tấn công. Uber là nạn nhân của nó vào năm 2016 khi các nhà phát triển để lại các khóa truy cập ẩn trong mã, sau đó nó bị tin tặc tìm thấy sau khi chúng dùng kỹ thuật đảo ngược ứng dụng di động. Từ đó dẫn đến một vụ vi phạm lớn liên quan đến thông tin chi tiết về tài xế và 57 triệu hành khách của hãng.
Các công cụ kỹ thuật đảo ngược được sử dụng để phát hiện phần mềm độc hại, cải tiến tính năng... Hầu hết các công cụ thường dùng trong kỹ thuật đảo ngược đều miễn phí. Thách thức vẫn là mỗi ứng dụng có kiến trúc và cơ sở mã khác nhau và không thể tạo ra quy tắc chung nào để hỗ trợ tin tặc.
AI có thể là một công cụ thay đổi cuộc chơi bằng cách hỗ trợ phát hiện mẫu để xác định phần mềm độc hại, áp dụng các điểm lỗi bằng cách sử dụng các phỏng đoán tốt nhất về hành vi của ứng dụng. Các công cụ phân tích tĩnh và động được hỗ trợ bởi AI có thể tự động xác định các hàm, biến và luồng điều khiển trong mã nhị phân, giúp các kỹ sư đảo ngược hiểu được hành vi và cấu trúc của các ứng dụng phần mềm nhanh hơn. Bằng cách khai thác sức mạnh của AI, các kỹ sư có thể đẩy nhanh quá trình khám phá, để có được những hiểu biết ẩn giấu và cuối cùng nâng cao khả năng hiểu và tái tạo các hệ thống phức tạp hiệu quả hơn.
Tài liệu tham khảo:
1. https://thehackernews.com/2024/07/wazirx-cryptocurrency-exchange-loses.html