Phân tích Entropy phát hiện mã độc được nén hoặc mã hóa
Entropy thông tin mô tả mức độ hỗn loạn trong một tín hiệu lấy từ một sự kiện ngẫu nhiên. Nói cách khác, entropy cũng chỉ ra có bao nhiêu thông tin trong tín hiệu, với thông tin là các phần không hỗn loạn ngẫu nhiên của tín hiệu. Một tập tin được nén cũng có thể bị phát hiện nhờ kỹ thuật tính toán entropy. Các dữ liệu nén hoặc mã hóa khá giống với các dữ liệu ngẫu nhiên, do đó nó có mức entropy cao. Trong khi các dữ liệu không được mã hóa hay nén thường có mức entropy thấp. Sử dụng entropy để đo sự ngẫu nhiên và không dự đoán trước trong một chuỗi sự kiện hoặc một dãy giá trị dữ liệu là chấp nhận được về mặt thống kê trong lĩnh vực lý thuyết thông tin. Trong phân tích mã độc hại, các nhà nghiên cứu đã sử dụng một số công cụ phân tích entropy phát hiện đoạn mã độc nén và mã hóa, chẳng hạn như PEAT (Portable Executable Analysis Toolkit).
PEAT là bộ công cụ cho phép người phân tích kiểm tra các khía cạnh của cấu trúc tệp Window PE (Portable Executable). PEAT tính toán entropy cho mỗi đoạn PE của từng đoạn tệp. Sau đó, nó chuẩn hóa những giá trị entropy này so với entropy tổng cộng của các giai đoạn PE đã tính. Điều này giúp người phân tích xác định đoạn PE có sự thay đổi lớn giá trị entropy, từ đó xác định đoạn PE có khả năng bị sửa so với đoạn tệp nguyên bản ban đầu. Để sử dụng PEAT hiệu quả, người phân tích phải có nền tảng kiến thức về tệp PE, virus, cũng như kinh nghiệm làm việc với PEAT.
Công cụ phân tích entropy nhị phân Bintropy
Bintropy là công cụ phân tích mẫu, ước tính khả năng một tệp tin có chứa các thông tin nén hoặc mã hóa. Bintropy có hai chế độ hoạt động:
- Chế độ thứ nhất, công cụ sẽ phân tích entropy của mỗi đoạn thực thi có định dạng PE, được xác định trong phần đầu của tệp thực thi. Điều này giúp người phân tích xác định đoạn mã thực thi nào có thể bị mã hóa và nén. Một bộ biên dịch chuẩn tạo ra PE thực thi có các phần theo định dạng chuẩn (.text, .data, .reloc, .rsrc). Tuy nhiên, nhiều công cụ đóng gói biến đổi định dạng của tệp thực thi gốc, nén các đoạn mã, dữ liệu và dồn chúng vào một hay hai đoạn mới. Trong chế độ này, Bintropy tính giá trị entropy cho mỗi đoạn nó cần. Tuy nhiên, không tính entropy cho phần đầu tệp tin bởi vì phần này thường không chứa các byte dữ liệu nén hay mã hóa.
- Chế độ thứ hai hoàn toàn bỏ qua định dạng tệp, thay vào đó Bintropy phân tích entropy của toàn bộ tệp, từ byte đầu tiên cho đến byte cuối cùng. Với tệp định dạng PE, người dùng có thể phân tích entropy của đoạn mã và dữ liệu ẩn tại cuối tệp hoặc ở giữa các đoạn định dạng PE.
Entropy của một khối dữ liệu là một phép đo thống kê lượng thông tin chứa bên trong. Trong bài báo “Sử dụng phân tích entropy để tìm ra mã độc nén và mã hóa” Hamrock và Lyda đưa ra một quan sát đáng chú ý là các dữ liệu nén và mã hóa trong mẫu mã dữ liệu độc hại đóng gói có mức entropy cao. Mã chương trình và dữ liệu bình thường có mức entropy thấp hơn nhiều. Mã độc hại sử dụng kỹ thuật đóng gói được xác định bởi mức entropy cao trong nội dung của nó.
Để đánh giá khả năng công cụ Bintropy dựa trên phân tích entropy, Lynda và Hamrock đã tiến hành đánh giá thử nghiệm trên bốn tập dữ liệu với các phân loại tệp khác nhau: plain text, thực thi thông thường, thực thi nén và thực thi mã hóa. Mỗi tập dữ liệu gồm 100 tệp khác nhau, mỗi tệp được tính entropy dựa trên các khối dữ liệu có độ dài 256 byte. Công cụ Bintropy tính entropy mức trung bình của các khối và khối có mức entropy cao nhất. Mục đích thử nghiệm này là xác định mức entropy tối ưu để phân loại tệp thực thi thông thường và tệp thực thi đã biến đổi sử dụng kỹ thuật mã hóa hoặc kỹ thuật nén. Sau khi sử dụng tập dữ liệu training, Bintropy có khả năng phát hiện các tệp thực thi bị nén hoặc mã hóa khi đặc tính entropy vượt qua một mức định trước.
Dựa trên bảng kết quả chúng ta nhận thấy, với độ chính xác đạt 99% và mức Entropy trong khoảng 6,677 đến 7,177, công cụ Bintropy sẽ phát hiện tệp nén hay mã hóa.
Lyda và Hamrock cũng đã thực hiện xác định xu hướng entropy bởi công cụ Bintropy và để tạo độ tin cậy của đánh giá đã áp dụng trên một tập 21.567 mã độc Win32 - với thực thi định dạng PE từ bộ thu thập của các hãng phần mềm chống virus nổi tiếng trên thế giới trong khoảng thời gian từ tháng 01/2000 đến tháng 12/2005. Dựa trên khảo sát bởi sử dụng công cụ Bintropy để phân tích, kết quả chỉ ra rằng, UPX1 là phần được kẻ viết mã độc sử dụng kỹ thuật đóng gói phổ biến nhất, sau đó là phần text (Hình 1).
3. Kết luận
Ưu điểm của phương pháp phân tích entropy là đưa ra một kỹ thuật tiện dụng và nhanh chóng để phân tích một mẫu mức nhị phân và xác định vùng tệp PE khả nghi. Một khi việc phân tích xác định được phần có mức entropy bất thường, người phân tích có thể thực hiện phân tích sâu và chi tiết hơn với các công cụ kỹ thuật dịch ngược khác (reverse – engineering) chẳng hạn như IDAPro diassembler.
16:00 | 13/02/2019
13:00 | 17/02/2021
14:00 | 05/08/2024
Mỗi quốc gia sẽ có các quy định và chính sách riêng để bảo vệ dữ liệu cá nhân, nhưng có một số nguyên tắc và biện pháp chung mà hầu hết các quốc gia áp dụng để đảm bảo an toàn và quyền riêng tư cho dữ liệu cá nhân của công dân. Dưới đây là một số cách mà các nước trên thế giới áp dụng bảo vệ dữ liệu cá nhân cho công dân của mình.
08:00 | 22/05/2024
Phần II của bài báo tiếp tục tập trung đánh giá một số công nghệ Blockchain phổ biến hiện nay, từ đó, xem xét tính ứng dụng của các công nghệ này đối với Việt Nam.
13:00 | 18/09/2023
Một trong những tham luận thu hút sự quan tâm lớn của giới bảo mật tại Hội nghị bảo mật hàng đầu thế giới Black Hat USA 2023 là tấn công TSSHOCK của nhóm nghiên cứu mật mã đến từ công ty Verichains (Việt Nam). Đáng lưu ý, tấn công này cho phép một node ác ý có thể đánh cắp on-chain tài sản mã hoá giá trị hàng triệu đến hàng tỉ USD trên các dịch vụ này.
09:00 | 05/06/2023
Tấn công tiêm lỗi (Fault Injection Attack - FIA) là loại tấn công chủ động, giúp tin tặc xâm nhập vào các thiết bị điện tử, mạch tích hợp cũng như các thiết bị mật mã nhằm thu được khóa bí mật và đánh cắp thông tin. Tiêm lỗi có thể được thực hiện trong cả phần cứng và phần mềm. Bài báo này nhóm tác giả sẽ trình bày về các kỹ thuật, công cụ được thực hiện trong FIA.
Với sự phát triển mạnh mẽ của công nghệ số, số lượng các phần mềm chương trình được công bố ngày càng lớn. Song hành với đó là việc tin tặc luôn tìm cách phân tích, dịch ngược các chương trình nhằm lấy cắp ý tưởng, bẻ khóa phần mềm thương mại gây tổn hại tới các tổ chức, cá nhân phát triển phần mềm. Đặc biệt, trong ngành Cơ yếu có những chương trình có tích hợp các thuật toán mật mã ở mức mật và tối mật thì việc chống phân tích, dịch ngược có vai trò hết sức quan trọng. Do đó, việc phát triển một giải pháp bảo vệ các chương trình phần mềm chống lại nguy cơ phân tích, dịch ngược là rất cấp thiết.
16:00 | 04/08/2024
Xu hướng sử dụng mạng botnet để thực hiện tấn công DDoS của tin tặc ngày càng tăng cao, dẫn đến lưu lượng truy cập vào trang web tăng đột ngột và làm cho server bị quá tải, gây ra những tổn thất nặng nề cho các doanh nghiệp. Trong bài viết này, tác giả sẽ đưa ra những điểm yếu, lỗ hổng tồn tại trên máy tính của các cơ quan, tổ chức tại Việt Nam dễ bị tin tặc tấn công. Qua đó cũng đề xuất một số khuyến nghị nâng cao cảnh giác góp phần cho công tác phòng chống phần mềm độc hại và chia sẻ dữ liệu mã độc.
17:00 | 30/08/2024