Sự xáo trộn: Mọi thứ đều có hai mặt

Tác giả AI+, T.Tám 02, 2024, 08:24:06 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách phát hiện và ngăn chặn kẻ tấn công sử dụng các kỹ thuật khác nhau này.

Làm xáo trộn là một kỹ thuật quan trọng để bảo vệ phần mềm nhưng cũng tiềm ẩn rủi ro, đặc biệt khi được tác giả phần mềm độc hại sử dụng. Trong bài viết này, chúng tôi xem xét sự che giấu, tác động của nó và phản ứng với nó.

1. Sự xáo trộn là gì?


Obfuscation là kỹ thuật cố ý làm cho thông tin trở nên khó đọc, đặc biệt là trong mã hóa máy tính. Một trường hợp sử dụng quan trọng là làm xáo trộn dữ liệu, trong đó dữ liệu nhạy cảm được làm cho không thể nhận dạng được để bảo vệ dữ liệu đó khỏi bị truy cập trái phép. Nhiều phương pháp khác nhau được sử dụng cho việc này.

Ví dụ: chỉ bốn chữ số cuối của số thẻ tín dụng thường được hiển thị, trong khi các chữ số còn lại được thay thế bằng X hoặc dấu hoa thị. Ngược lại, mã hóa liên quan đến việc chuyển đổi dữ liệu thành dạng không thể đọc được và chỉ có thể giải mã bằng khóa đặc biệt.

2. Sự xáo trộn trong mã

Khi mã máy tính bị xáo trộn, ngôn ngữ phức tạp và logic dư thừa được sử dụng để làm cho mã khó hiểu. Mục đích? Để đánh lừa cả người đọc và các chương trình như trình dịch ngược. Để làm được điều này, các phần của mã sẽ được mã hóa, siêu dữ liệu bị xóa hoặc những cái tên có ý nghĩa được thay thế bằng những cái tên vô nghĩa. Chèn mã không sử dụng hoặc vô nghĩa cũng là một cách phổ biến để ngụy trang mã thực.

Cái gọi là obfuscator có thể tự động hóa các quy trình này và sửa đổi mã nguồn để nó vẫn hoạt động nhưng khó hiểu hơn.

Các phương pháp làm xáo trộn khác bao gồm nén toàn bộ chương trình, làm cho mã không thể đọc được và thay đổi luồng điều khiển để tạo ra logic không có cấu trúc, khó bảo trì.

Việc chèn mã giả không ảnh hưởng đến logic hay kết quả của chương trình cũng là chuyện thường gặp.

Một số kỹ thuật thường được kết hợp để đạt được hiệu ứng nhiều lớp và tăng cường tính bảo mật.

3. Mặt trái

Thật không may, obfuscation không chỉ là một biện pháp bảo vệ mà còn là một thách thức. Tính năng xáo trộn không chỉ được sử dụng bởi các nhà phát triển phần mềm hợp pháp mà còn bởi các tác giả phần mềm độc hại. Mục tiêu của việc che giấu là ẩn danh những kẻ tấn công mạng, giảm nguy cơ bị phát hiện và ẩn phần mềm độc hại bằng cách thay đổi chữ ký tổng thể và dấu vân tay của mã độc – ngay cả khi tải trọng là mối đe dọa đã biết. Chữ ký là hàm băm, biểu thị bằng chữ và số duy nhất của phần tử phần mềm độc hại. Chữ ký thường được băm nhưng chúng cũng có thể là một cách thể hiện ngắn gọn khác của mã duy nhất trong thành phần phần mềm độc hại.

Thay vì cố gắng tạo chữ ký mới bằng cách sửa đổi chính phần mềm độc hại, kỹ thuật làm xáo trộn tập trung vào các cơ chế triển khai để đánh lừa các giải pháp chống vi-rút dựa vào chữ ký. Hãy so sánh điều này với việc sử dụng máy học, phân tích dự đoán và trí tuệ nhân tạo để cải thiện khả năng phòng thủ.


Làm xáo trộn hoặc ngụy trang mã có thể vừa "tốt" vừa "xấu". Trong trường hợp che giấu "xấu", tin tặc kết hợp nhiều kỹ thuật khác nhau để che giấu phần mềm độc hại và tạo ra nhiều lớp ngụy trang. Một trong những kỹ thuật này là máy đóng gói. Đây là các gói phần mềm nén phần mềm độc hại để che giấu sự hiện diện của nó và làm cho mã gốc không thể đọc được. Sau đó, có những nhà mật mã mã hóa phần mềm độc hại hoặc các bộ phận của phần mềm để hạn chế quyền truy cập vào mã có thể cảnh báo các chương trình chống vi-rút.

Một phương pháp khác là chèn mã chết. Điều này liên quan đến việc chèn mã vô dụng vào phần mềm độc hại để ngụy trang diện mạo của chương trình. Những kẻ tấn công cũng có thể sử dụng sửa đổi lệnh, bao gồm việc thay đổi mã lệnh trong các chương trình phần mềm độc hại. Điều này thay đổi hình thức của mã, nhưng không thay đổi hành vi của nó.

Như chúng ta đã thấy, việc làm xáo trộn mã chỉ là bước đầu tiên vì cho dù tin tặc có bỏ ra bao nhiêu công sức để làm xáo trộn mã để vượt qua EDR, phần mềm độc hại vẫn phải giao tiếp trong mạng và với thế giới bên ngoài để "thành công". Điều này có nghĩa là giao tiếp cũng phải bị xáo trộn. Ngược lại với trước đây, khi các mạng được quét nhanh chóng và các nỗ lực ngay lập tức được thực hiện để trích xuất dữ liệu ở phạm vi terabyte cùng một lúc, những kẻ tấn công ngày nay giao tiếp lặng lẽ hơn để các cảm biến và công tắc dành cho công cụ giám sát không tấn công.

Ví dụ: mục đích lấy địa chỉ IP thông qua chức năng quét hiện được thực hiện chậm hơn để không bị phát hiện. Hoạt động trinh sát, trong đó các tác nhân đe dọa cố gắng thu thập dữ liệu về nạn nhân mục tiêu của chúng, ví dụ như thông qua kiến trúc mạng của chúng, cũng trở nên chậm hơn và khó hiểu hơn.

Một phương pháp che giấu phổ biến là HOẶC độc quyền (XOR). Phương pháp này ẩn dữ liệu theo cách mà chỉ những người liên kết mã với 0x55 XOR mới có thể đọc được. ROT13 là một thủ thuật khác trong đó các chữ cái được thay thế bằng mã.

Vụ nổ từ quá khứ:

  • Một ví dụ nổi tiếng về kỹ thuật che giấu là cuộc tấn công SolarWinds vào năm 2020. Tin tặc đã sử dụng kỹ thuật che giấu để vượt qua hệ thống phòng thủ và che giấu các cuộc tấn công của chúng.
  • Một ví dụ thú vị khác là PowerShell, một công cụ Microsoft Windows mà những kẻ tấn công đang lạm dụng. Phần mềm độc hại sử dụng PowerShell che giấu các hoạt động của nó thông qua các kỹ thuật như mã hóa chuỗi, làm xáo trộn lệnh, thực thi mã động, v.v.
  • Một ví dụ khác là cuộc tấn công XLS.HTML. Tại đây, tin tặc đã sử dụng các kỹ thuật che giấu phức tạp để che giấu các hoạt động độc hại của chúng. Họ đã thay đổi phương thức mã hóa ít nhất mười lần trong vòng một năm để tránh bị phát hiện. Chiến thuật của họ bao gồm văn bản thuần túy, mã hóa thoát, mã hóa Base64 và thậm chí cả mã Morse.
  • Trong một mối đe dọa khác, kẻ tấn công khai thác lỗ hổng trong ThinkPHP để thực thi mã từ xa trên máy chủ. Họ đã cài đặt một web shell được che giấu tên là "Dama" cho phép truy cập vĩnh viễn và các cuộc tấn công tiếp theo.

4. Tại sao bạn không nên chỉ dựa vào chữ ký?

Tính năng phát hiện dựa trên chữ ký giống như một người bạn cũ–nó đáng tin cậy khi xử lý các mối đe dọa đã biết. Nhưng khi nói đến những mối đe dọa mới, chưa biết, đôi khi có thể không rõ ràng. Dưới đây là một số lý do tại sao bạn không nên chỉ dựa vào chữ ký:

  • Tác giả phần mềm độc hại là bậc thầy trốn tìm thực sự. Họ sử dụng nhiều kỹ thuật khác nhau để ngụy trang các chương trình độc hại của mình. Ngay cả những thay đổi nhỏ đối với mã cũng có thể khiến việc phát hiện chữ ký không thành công.
  • Với phần mềm độc hại đa hình, phần mềm độc hại hoạt động giống như một con tắc kè hoa. Nó liên tục thay đổi cấu trúc để tránh bị phát hiện. Mỗi lần nó được thực thi, mã trông khác nhau.
  • Chữ ký tĩnh? Không có cơ hội! Phần mềm độc hại biến chất thậm chí còn phức tạp hơn. Nó thích ứng trong quá trình thực thi và thay đổi mã một cách linh hoạt, khiến nó gần như không thể bị bắt bằng chữ ký tĩnh.
  • Ngoài ra, các hoạt động khai thác zero-day hoạt động giống như "đứa trẻ mới trong khối": chúng mới và chưa được biết đến, đồng thời các hệ thống dựa trên chữ ký không có cơ hội nhận ra chúng.
  • Ngoài ra, khi giải pháp dựa trên chữ ký trả về quá nhiều kết quả sai, nó sẽ trở nên kém hiệu quả. Quá nhiều cảnh báo sai trong hoạt động kinh doanh hàng ngày sẽ ảnh hưởng đến nhóm bảo mật của bạn và lãng phí các nguồn lực quý giá.

Nói tóm lại, phát hiện chữ ký, ví dụ như trong EDR, là một công cụ hữu ích, nhưng chỉ riêng nó thôi thì chưa đủ để ngăn chặn mọi mối đe dọa. Một chiến lược bảo mật toàn diện hơn bao gồm phân tích hành vi, học máy và các kỹ thuật hiện đại khác là điều cần thiết.

5. Tại sao công cụ NDR lại quan trọng đến vậy?

Các giải pháp IDS dựa trên sự bất thường giống như các thám tử theo dõi hoạt động bình thường của hệ thống và phát ra âm thanh cảnh báo khi họ phát hiện ra hoạt động bất thường. Nhưng các công cụ Phát hiện và Phản hồi Mạng (NDR) thậm chí còn tiến thêm một bước nữa: chúng liên tục thích ứng để đi trước một bước trong bối cảnh mối đe dọa mạng đang thay đổi và cung cấp mức độ bảo mật cao hơn đáng kể so với các phương pháp tiếp cận dựa trên chữ ký truyền thống thông qua phân tích và tích hợp nâng cao. Họ có thể phát hiện và bảo vệ chống lại cả các mối đe dọa đã biết và chưa biết.

Đây là cách họ làm điều đó:

  • Phân tích hành vi: Công cụ NDR giám sát lưu lượng mạng và phân tích hành vi. Họ phát hiện các mẫu bất thường có thể biểu thị giao tiếp ra lệnh và kiểm soát (C&C), chẳng hạn như truyền dữ liệu bất thường.
  • Giám sát giao thức: Họ kiểm tra các yêu cầu HTTP, lưu lượng DNS và các giao thức khác để phát hiện hành vi hoặc giao tiếp đáng ngờ có thể liên quan đến phần mềm độc hại bị xáo trộn.
  • Phân tích siêu dữ liệu: Công cụ NDR phân tích siêu dữ liệu để phát hiện các mẫu bất thường cho thấy hoạt động đáng ngờ. Các mô hình học máy giúp xác định các kỹ thuật che giấu điển hình có thể nhìn thấy được thông qua hành vi đáng ngờ trong lưu lượng truy cập mạng.
  • Giám sát liên lạc dài hạn: Vì việc liên lạc làm xáo trộn hiện rất quan trọng đối với tin tặc, vì chúng áp dụng các kỹ thuật chậm hơn và lén lút hơn để tránh bị phát hiện và thu thập dữ liệu trong và ngoài mạng, nên NDR cũng xem xét khoảng thời gian dài hơn, ví dụ như 3 ngày, ngoài khả năng thực hiện các đợt chạy hàng loạt, ví dụ như trong vòng vài phút, để có các giá trị so sánh, theo dõi và phát hiện các điểm bất thường, đồng thời cảnh báo theo thời gian thực sẽ dẫn đến một số lượng lớn cảnh báo nếu phát hiện quá trình quét bằng ping mỗi phút hoặc Vì thế. Nhưng có phải mỗi ping đều là một cuộc tấn công? Chắc chắn không!
  • Mitre ATT&CK và ZEEK : Các giao thức này cung cấp những hiểu biết có giá trị về các mối đe dọa sử dụng kỹ thuật che giấu. Sự tích hợp của chúng với các công cụ NDR cải thiện đáng kể khả năng phát hiện mối đe dọa.
  • Chia sẻ dữ liệu mối đe dọa: Công cụ NDR chia sẻ dữ liệu mối đe dọa với các giải pháp bảo mật khác. Điều này cho phép phát hiện nhanh hơn các kỹ thuật che giấu đã biết và hành vi đáng ngờ. Việc tích hợp với các công cụ EDR cho phép chúng liên hệ hoạt động đáng ngờ trên các điểm cuối với lưu lượng mạng, giúp cải thiện đáng kể khả năng phân tích bảo mật.

Để biết thêm về lý do tại sao NDR là một công cụ bảo mật quan trọng và cách nó phát hiện ngay cả những mối đe dọa tiên tiến nhất cũng như các hình thức che giấu phức tạp, hãy tải xuống báo cáo nghiên cứu chuyên sâu của chúng tôi về tính năng phát hiện Mối đe dọa liên tục nâng cao (APT).

Để biết cách NDR hoạt động trong mạng công ty của bạn cũng như cách nó phát hiện và phản hồi chính xác với APT, hãy xem video phát hiện APT đã ghi của chúng tôi.