Luận văn: Nghiên cứu phương pháp phát hiện mã độc dựa trên Metadata tệp tin

Luận văn thạc sĩ: Nghiên cứu phương pháp phát hiện mã độc hiệu quả bằng cách phân tích dữ liệu metadata của tệp tin. Tìm hiểu chi tiết!

Chuyên ngành

Hệ thống thông tin

Người đăng

Ẩn danh

Thể loại

Luận văn thạc sĩ

2021

69
2
0

Phí lưu trữ

30 Point

Tóm tắt

I. Khám phá phương pháp phát hiện mã độc qua metadata tệp tin

Trong bối cảnh an ninh mạng ngày càng phức tạp, việc phát hiện mã độc sớm và chính xác là yếu-tố-sống-còn. Luận văn "Nghiên cứu phương pháp phát hiện mã độc dựa trên dữ liệu meta-data của tệp tin" của tác giả Nguyễn Anh Tuấn mở ra một hướng tiếp cận mới, đầy hứa hẹn. Thay vì dựa vào các phương pháp truyền thống như phân tích hành vi hay phân tích mã nguồn vốn tốn nhiều thời gian và dễ bị qua mặt, nghiên cứu này tập trung vào metadata (siêu dữ liệu). Đây là những thông tin mô tả cấu trúc, thuộc tính và nguồn gốc của một tệp tin, vốn luôn đi kèm và khó bị thay đổi bởi tin tặc. Hướng đi này không chỉ giúp tối ưu hóa thời gian phân tích mà còn tăng cường khả năng phát hiện các loại mã độc mới, đặc biệt là trong các cuộc tấn công có chủ đích (APT). Việc áp dụng các kỹ thuật học máy, cụ thể là mô hình cây quyết định, để phân loại tệp tin dựa trên siêu dữ liệu là trọng tâm của nghiên cứu. Bằng cách huấn luyện mô hình với một tập dữ liệu lớn bao gồm cả tệp sạch và tệp độc hại, hệ thống có thể tự động học các đặc trưng của mã độc. Cách tiếp cận này giúp giảm sự phụ thuộc vào các giải pháp của bên thứ ba, đồng thời xây dựng một hệ thống phòng thủ chủ động và linh hoạt. Luận văn đã chứng minh rằng, việc phân tích các trường dữ liệu trong cấu trúc tệp tin PE (Portable Executable) như Image_Dos_Header, Image_NT_Header... có thể cung cấp những dấu hiệu quan trọng để nhận diện phần mềm độc hại. Đây là một cơ sở khoa học vững chắc, đặt nền móng cho việc phát triển các công cụ an toàn thông tin thế hệ mới, thông minh và hiệu quả hơn.

1.1. Tổng quan về luận văn và tính cấp thiết của nghiên cứu

Luận văn này giải quyết một bài toán cấp thiết trong lĩnh vực an toàn thông tin: làm thế nào để phát hiện mã độc một cách nhanh chóng và tự động trước sự bùng nổ về số lượng và độ tinh vi của chúng. Các phương pháp truyền thống như sandbox hay cơ sở dữ liệu chữ ký số tỏ ra kém hiệu quả với các biến thể mới hoặc các cuộc tấn công APT (Advanced Persistent Threat). Nghiên cứu đề xuất một giải pháp đột phá: sử dụng học máy để phân tích siêu dữ liệu của tệp tin. Mục tiêu chính là xây dựng một mô hình có khả năng phân loại chính xác đâu là tệp tin độc hại, đâu là tệp tin an toàn, dựa trên các đặc trưng vốn có trong cấu trúc của chúng. Hướng đi này không chỉ giúp giảm thiểu thời gian phân tích mà còn nâng cao đáng kể hiệu quả phát hiện, mang lại giá trị thực tiễn cao cho các chuyên gia phân tích và các tổ chức.

1.2. Siêu dữ liệu là gì và tại sao nó quan trọng trong an ninh

Siêu dữ liệu, hay metadata, là "dữ liệu về dữ liệu". Trong ngữ cảnh của một tệp tin thực thi, nó bao gồm các thông tin mô tả cấu trúc vật lý, thuộc tính, thời gian tạo, kích thước các section, và các thông tin định danh khác được chứa trong header của tệp. Không giống như mã nguồn có thể bị làm rối (obfuscation) hay hành vi có thể được che giấu, metadata là một phần cố hữu và khó thay đổi của tệp tin. Chính vì vậy, nó trở thành một nguồn thông tin vô giá để phân tích mã độc. Các phần mềm độc hại, dù được ngụy trang tinh vi đến đâu, thường vẫn để lại những "dấu chân" bất thường trong siêu dữ liệu của chúng, ví dụ như kích thước header lạ, thời gian tạo không hợp lệ, hay các cờ đặc tính đáng ngờ. Việc khai thác nguồn dữ liệu này cho phép xây dựng các mô hình phát hiện hiệu quả và bền vững.

II. Thách thức trong phân tích mã độc và vai trò của metadata

Ngành công nghiệp an ninh mạng đang đối mặt với những thách thức chưa từng có. Số lượng mã độc mới xuất hiện mỗi ngày lên tới hàng trăm nghìn mẫu, trong khi các kỹ thuật lẩn tránh ngày càng trở nên tinh vi. Các phương pháp phân tích mã độc truyền thống đang dần bộc lộ những hạn chế rõ rệt. Phân tích động (dynamic analysis) trong môi trường sandbox có thể bị mã độc phát hiện và thay đổi hành vi, trong khi phân tích tĩnh (static analysis) gặp khó khăn với các kỹ thuật đóng gói (packing) và làm rối mã (obfuscation). Hơn nữa, các cuộc tấn công APT thường sử dụng mã độc được thiết kế riêng, khiến các cơ sở dữ liệu chữ ký (signature-based detection) trở nên vô dụng. Những thách thức này đòi hỏi một hướng tiếp cận mới, thông minh hơn và có khả năng khái quát hóa. Đây chính là lúc vai trò của metadata trở nên nổi bật. Siêu dữ liệu cung cấp một "bộ gen" tĩnh của tệp tin. Bằng cách phân tích hàng loạt các thuộc tính từ cấu trúc tệp tin PE, các mô hình học máy có thể nhận diện các mẫu (pattern) đặc trưng của mã độc mà con người khó có thể nhận ra. Ví dụ, một tệp tin có trường SizeOfHeaders lớn bất thường hoặc SectionAlignment không theo chuẩn có thể là một dấu hiệu đáng ngờ. Phương pháp phát hiện mã độc qua metadata không thực thi tệp tin nên an toàn tuyệt đối, đồng thời tốc độ xử lý cực nhanh, cho phép quét hàng loạt tệp trong thời gian ngắn, đáp ứng yêu cầu của các hệ thống giám sát thời gian thực.

2.1. Hạn chế của các kỹ thuật phân tích mã độc truyền thống

Các kỹ thuật phân tích mã độc truyền thống bao gồm phân tích tĩnh và phân tích động. Phân tích tĩnh kiểm tra mã nguồn của tệp tin mà không cần thực thi, nhưng dễ bị đánh lừa bởi các kỹ thuật như mã hóa, đóng gói hoặc anti-disassembly. Trong khi đó, phân tích động chạy mã độc trong một môi trường được kiểm soát (sandbox) để quan sát hành vi của nó. Tuy nhiên, nhiều loại mã độc hiện đại có khả năng phát hiện môi trường ảo và sẽ không thể hiện hành vi độc hại, hoặc trì hoãn hành động để qua mặt các công cụ phân tích. Cả hai phương pháp này đều đòi hỏi kiến thức chuyên môn sâu và tốn nhiều thời gian, không phù hợp để xử lý số lượng lớn các mối đe dọa hàng ngày.

2.2. Sự phức tạp của mã độc hiện đại và tấn công có chủ đích

Mã độc hiện đại không còn là những chương trình đơn lẻ. Chúng là sự kết hợp phức tạp của nhiều loại như Trojan, Worm, RootkitRansomware. Đặc biệt, các cuộc tấn công có chủ đích (APT) thường sử dụng các công cụ được tùy chỉnh cao, chưa từng xuất hiện trước đó. Những mã độc này được thiết kế để lẩn tránh các hệ thống phòng thủ thông thường, hoạt động âm thầm trong thời gian dài để thu thập thông tin nhạy cảm. Điều này làm cho các phương pháp phát hiện dựa trên chữ ký trở nên lỗi thời. Việc tìm ra một phương pháp có khả năng nhận diện các đặc điểm chung, bất biến của mã độc, chẳng hạn như các bất thường trong metadata, là một yêu cầu tất yếu để đối phó hiệu quả với các mối đe dọa tinh vi này.

III. Hướng dẫn phân tích cấu trúc tệp tin PE để trích xuất data

Để thực hiện phương pháp phát hiện mã độc qua metadata, bước đầu tiên và quan trọng nhất là phải hiểu và trích xuất được dữ liệu từ cấu trúc tệp tin PE (Portable Executable). Đây là định dạng tệp tin thực thi tiêu chuẩn trên hệ điều hành Windows. Một tệp PE chứa đựng toàn bộ thông tin mà hệ điều hành cần để nạp và chạy chương trình. Cấu trúc của nó được chia thành nhiều phần, mỗi phần nắm giữ một loại siêu dữ liệu khác nhau. Bắt đầu với DOS Header, chứa chữ ký “MZ” kinh điển và một con trỏ (e_lfanew) chỉ đến PE Header. PE Header là trái tim của tệp tin, bao gồm chữ ký “PE”, FileHeaderOptionalHeader. FileHeader chứa các thông tin cơ bản như kiến trúc máy (Machine), số lượng section (NumberOfSections), và thời gian tạo (TimeDateStamp). Trong khi đó, OptionalHeader cung cấp các thông tin logic quan trọng cho việc nạp chương trình, như địa chỉ điểm vào (AddressOfEntryPoint), kích thước ảnh trong bộ nhớ (SizeOfImage), và đặc biệt là Data Directory - một mảng 16 cấu trúc trỏ đến các bảng dữ liệu quan trọng như Import Table, Export Table. Cuối cùng là Section Table, định nghĩa các section của tệp tin như .text (mã lệnh), .data (dữ liệu khởi tạo). Việc trích xuất một cách có hệ thống các giá trị từ hàng trăm trường dữ liệu này tạo thành một vector đặc trưng (feature vector) cho mỗi tệp tin, làm đầu vào cho mô hình học máy.

3.1. Các thành phần chính trong cấu trúc tệp tin thực thi PE

Cấu trúc tệp tin PE bao gồm nhiều thành phần được tổ chức một cách logic. DOS Header là phần đầu tiên, đảm bảo khả năng tương thích ngược với MS-DOS. Tiếp theo là PE Header (IMAGE_NT_HEADERS), chứa các thông tin quan trọng nhất. Nó được chia thành FileHeader (IMAGE_FILE_HEADER) với các đặc tính vật lý và OptionalHeader (IMAGE_OPTIONAL_HEADER) với các thông tin logic. Section Table (Bảng Section) nằm ngay sau PE Header, là một mảng các cấu trúc IMAGE_SECTION_HEADER, mỗi cấu trúc mô tả một section (vùng dữ liệu) trong tệp tin, chẳng hạn như thuộc tính, địa chỉ ảo và kích thước của nó. Việc hiểu rõ từng thành phần này là chìa khóa để trích xuất metadata một cách chính xác.

3.2. Vai trò của DOS Header PE Header và các Section

Mỗi phần của tệp PE có một vai trò riêng. DOS Header chủ yếu chứa con trỏ e_lfanew để hệ điều hành Windows có thể bỏ qua DOS Stub và đi thẳng đến PE Header. PE Header là trung tâm điều khiển, nơi Windows Loader lấy thông tin về cách ánh xạ tệp tin vào bộ nhớ, điểm bắt đầu thực thi, và các đặc tính của tệp (là file .exe hay .dll). Các Section như .text, .rdata, .data chứa mã lệnh, tài nguyên, và dữ liệu của chương trình. Các đặc điểm của các section này, như tên, kích thước, và các cờ (ví dụ: có thể ghi, có thể thực thi), là những nguồn siêu dữ liệu cực kỳ hữu ích. Mã độc thường tạo ra các section có tên lạ hoặc có các cờ thuộc tính bất thường để che giấu mã độc của chúng.

IV. Cách ứng dụng học máy và cây quyết định để phát hiện mã độc

Sau khi đã trích xuất được vector đặc trưng từ metadata của tệp tin PE, bước tiếp theo là ứng dụng học máy để xây dựng mô hình phân loại. Luận văn tập trung vào kỹ thuật cây quyết định (decision tree), một phương pháp học có giám sát mạnh mẽ và dễ diễn giải. Ý tưởng cốt lõi là xây dựng một mô hình có cấu trúc dạng cây, trong đó mỗi nút trong (internal node) đại diện cho một bài kiểm tra trên một thuộc tính (một trường trong metadata), mỗi nhánh đại diện cho kết quả của bài kiểm tra, và mỗi nút lá (leaf node) đại diện cho một nhãn lớp (mã độc hoặc an toàn). Quá trình xây dựng cây bắt đầu từ gốc, thuật toán sẽ lựa chọn thuộc tính tốt nhất để phân chia tập dữ liệu dựa trên một tiêu chí đo lường như Information Gain (thuật toán ID3) hoặc Gain Ratio (thuật toán C4.5). Quá trình này lặp lại một cách đệ quy cho đến khi các tập con trở nên "thuần khiết" (chỉ chứa các mẫu thuộc một lớp) hoặc không thể phân chia thêm. Một biến thể nâng cao và hiệu quả hơn là Random Forest, một thuật toán học tập hợp (ensemble learning) xây dựng nhiều cây quyết định trên các tập con dữ liệu ngẫu nhiên và tổng hợp kết quả của chúng để đưa ra dự đoán cuối cùng. Phương pháp này giúp giảm thiểu hiện tượng quá khớp (overfitting) và cải thiện đáng kể độ chính xác so với một cây quyết định đơn lẻ, là lựa chọn tối ưu cho bài toán phát hiện mã độc.

4.1. Giới thiệu mô hình cây quyết định trong học máy

Cây quyết định là một mô hình dự báo trực quan, hoạt động bằng cách chia liên tiếp một tập dữ liệu lớn thành các tập con nhỏ hơn dựa trên một chuỗi các quy tắc đơn giản. Ưu điểm lớn nhất của nó là tính minh bạch (mô hình hộp trắng), cho phép các nhà phân tích hiểu được logic đằng sau mỗi quyết định phân loại. Trong bài toán này, cây quyết định sẽ học các quy tắc như "Nếu SizeOfOptionalHeader > 224 VÀ Characteristics chứa cờ EXECUTABLE_IMAGE, thì khả năng cao là mã độc". Mô hình này có thể xử lý cả dữ liệu số và dữ liệu hạng mục, làm cho nó rất phù hợp để phân tích các thuộc tính đa dạng của metadata tệp tin.

4.2. So sánh các thuật toán ID3 C4.5 và Random Forest

Luận văn đã xem xét nhiều thuật toán phân loại dựa trên cây quyết định. ID3 là thuật toán cơ bản, sử dụng Information Gain nhưng không xử lý được thuộc tính liên tục và dữ liệu bị thiếu. C4.5 là phiên bản cải tiến của ID3, có thể xử lý dữ liệu liên tục và thiếu, đồng thời sử dụng Gain Ratio để chọn thuộc tính tốt hơn. Tuy nhiên, cả hai đều có thể bị quá khớp (overfitting). Random Forest giải quyết vấn đề này bằng cách xây dựng một "khu rừng" gồm nhiều cây quyết định độc lập và lấy kết quả bỏ phiếu đa số. Nhờ vào tính ngẫu nhiên trong việc chọn mẫu và chọn thuộc tính, Random Forest thường cho độ chính xác cao hơn và ổn định hơn, là lựa chọn được ưu tiên để triển khai thực tế trong hệ thống phát hiện mã độc.

V. Triển khai mô hình Random Forest Kết quả và đánh giá thực tế

Việc lựa chọn thuật toán Random Forest để triển khai mô hình phát hiện mã độc dựa trên những ưu điểm vượt trội của nó về độ chính xác và khả năng chống quá khớp. Quá trình triển khai bao gồm nhiều bước. Đầu tiên là thu thập và chuẩn bị dữ liệu: một tập dữ liệu lớn gồm hàng ngàn mẫu tệp tin, bao gồm cả các tệp sạch và các loại mã độc phổ biến (Trojan, Worm, Rootkit...), được thu thập. Các tệp này sau đó được gán nhãn bằng các công cụ uy tín như VirusTotal. Tiếp theo, một công cụ được phát triển để tự động trích xuất các trường metadata quan trọng từ cấu trúc tệp tin PE của mỗi mẫu, chuyển đổi chúng thành các vector đặc trưng số hóa. Sau đó, tập dữ liệu được chia thành hai phần: tập huấn luyện (training set) để xây dựng mô hình Random Forest và tập kiểm thử (testing set) để đánh giá hiệu quả. Kết quả thực nghiệm được trình bày trong luận văn cho thấy mô hình đạt được độ chính xác rất cao. Bảng tổng hợp kết quả thử nghiệm với thuật toán Random Forest đã chỉ ra khả năng phân loại chính xác giữa các tệp độc hại và tệp an toàn, cũng như nhận diện được các họ mã độc khác nhau. Điều này chứng tỏ phương pháp phát hiện mã độc qua metadata không chỉ khả thi về mặt lý thuyết mà còn mang lại hiệu quả cao trong thực tiễn, mở ra một công cụ mạnh mẽ cho các nhà phân tích an toàn thông tin.

5.1. Quy trình xây dựng và huấn luyện mô hình phân loại

Quy trình xây dựng mô hình bắt đầu bằng việc thu thập dữ liệu, bao gồm các mẫu tệp PE sạch và các mẫu mã độc đã được phân loại. Bước tiếp theo là tiền xử lý và trích xuất đặc trưng, nơi các trường metadata từ header của tệp tin được rút ra và chuyển thành định dạng vector mà thuật toán có thể hiểu được. Sau đó, mô hình Random Forest được huấn luyện trên tập dữ liệu huấn luyện. Quá trình này bao gồm việc tạo ra hàng trăm cây quyết định, mỗi cây được huấn luyện trên một mẫu bootstrap của dữ liệu và một tập con ngẫu nhiên của các đặc trưng. Cuối cùng, mô hình được tinh chỉnh các siêu tham số (hyperparameter tuning) để đạt hiệu suất tối ưu.

5.2. Phân tích kết quả thực nghiệm và độ chính xác của mô hình

Đánh giá mô hình được thực hiện trên tập dữ liệu kiểm thử, vốn là những dữ liệu mà mô hình chưa từng thấy trước đây. Các chỉ số đánh giá quan trọng bao gồm Độ chính xác (Accuracy), Độ chính xác dự báo lớp dương (Precision), Độ thu hồi (Recall) và F1-Score. Kết quả từ luận văn cho thấy mô hình Random Forest đạt được các chỉ số rất ấn tượng, vượt trội so với các cây quyết định đơn lẻ. Mô hình không chỉ có khả năng phân biệt tệp sạch và mã độc với tỷ lệ lỗi thấp mà còn có thể phân loại tương đối tốt các họ mã độc khác nhau, chứng minh tính hiệu quả và tiềm năng ứng dụng thực tế của phương pháp phát hiện mã độc này.

27/09/2025

Trích đoạn nội dung tài liệu

chương 1 cũng trình bày được một số loại virus phổ biến làm cơ sở để phát hiện các mẫu mã độc. PHÁT HIỆN MÃ ĐỘC DỰA TRÊN METADATA CỦA TỆP TIN BẰNG PHƯƠNG PHÁP CÂY QUYẾT ĐỊNH TRONG HỌC MÁY Chương này mô tả cấu trúc tệp tin thực thi Win32, gọi là cấu trúc tệp tin PE (Portable Executable) được sử dụng trong hệ thống phát hiện như meta-data của tệp tin mã độc. Cụ thể trình bày về cấu trúc của tệp tin thực thi, những trường được lựa chọn làm dữ liệu huấn luyện. Từ đó hiểu được lý do tại sao ta có thể dựa vào loại dữ liệu này để nhận biết một loại mã độc.

Tiếp theo sẽ trình bày về kỹ thuật học máy gọi là cây quyết định được sử dụng để xây dựng hệ thống phát hiện mã độc. Cuối cùng, sẽ đề xuất cách gián tiếp phát hiện dựa trên meta-data của mã độc bằng kỹ thuật cây quyết định. Khái niệm về meta-data 2. Định nghĩa Siêu dữ liệu (meta-data) là dạng dữ liệu miêu tả về dữ liệu.

Trong cơ sở dữ liệu, metadata là các sửa đổi dạng biểu diễn khác nhau của các đối tượng trong cơ sở dữ liệu. Trong cơ sở dữ liệu quan hệ thì metadata là các định nghĩa của bảng, cột, cơ sở dữ liệu và nhiều đối tượng khác. Trong kho dữ liệu, metadata là dạng định nghĩa dữ liệu như: bảng, cột, báo cáo, các luật hay những quy tắc biến đổi. Metadata bao quát tất cả các phương diện của kho dữ liệu [21].

Metadata chứa những thông tin như sau:  Cấu trúc của dữ liệu.  Thuật toán sử dụng để tổng hợp dữ liệu.  Ánh xạ xác định sự tương ứng dữ liệu từ môi trường tác nghiệp sang kho dữ liệu. Metadata là dữ liệu để mô tả dữ liệu.

Khi dữ liệu được cung cấp cho người dùng cuối, metadata sẽ cung cấp những thông tin cho phép họ hiểu rõ hơn bản chất về dữ liệu mà họ đang có. Những thông tin này sẽ giúp cho người dùng có được những quyết định sử dụng đúng đắn và phù hợp về dữ liệu mà họ có. 12 Tuỳ thuộc vào từng mục đích sử dụng khác nhau, từng loại dữ liệu khác nhau mà cấu trúc và nội dung dữ liệu metadata có thể có những sự khác biệt. Song, nhìn chung sẽ bao gồm một số loại thông tin cơ bản sau:  Thông tin mô tả về bản thân dữ liệu metadata  Thông tin về dữ liệu mà metadata mô tả  Thông tin về cá nhân, tổ chức liên quan đến dữ liệu metadata và dữ liệu.

Cách sử dụng siêu dữ liệu Mối liên hệ giữa siêu dữ liệu và tài nguyên thông tin mà nó mô tả có thể được thể hiện ở một trong hai cách sau:  Các phần tử meta-data được chứa trong một bản ghi tách biệt bên ngoài đối tượng mô tả.  Các phần tử meta-data có thể được nhúng vào bên trong tài nguyên mà nó mô tả. Trước đây với tài liệu truyền thống, các mô tả dữ liệu nằm ngoài đối tượng mô tả (được đưa vào các bộ thẻ hoặc biểu ghi CSDL), như vậy siêu dữ liệu được lưu trữ một cách tách biệt bên ngoài đối tượng mô tả. Với tài liệu điện tử, siêu dữ liệu của chúng được nhúng trong bản thân tài nguyên hoặc liên kết với tài nguyên mà nó mô tả như trong trường hợp các thẻ meta của tài liệu HTML trong tài liệu điện tử.

Trong thực tế có nhiều chuẩn mô tả biên mục mang tính chất meta-data khá thông dụng đang được áp dụng như: MARC21/UNIMARC [22], ISO- 2709, Dublin Core Metadata [23], … các dữ liệu meta-data này thường được gắn vào phần đầu cho mỗi tài liệu điện tử được đưa vào máy chủ hoặc trên mạng internet nhằm hỗ trợ các công cụ tìm kiếm lọc ra các thông tin meta- data để tổ chức thành các kho dữ liệu mà không cần dùng đến hệ quản trị cơ sở dữ liệu truyền thống. Thực tế thì ngay bản thân ngôn ngữ XML tự nó đã hỗ trợ việc hình thành một cơ sở dữ liệu toàn văn, phi cấu trúc và rất thuận lợi cho việc tìm kiếm, trao đổi và lưu trữ thông tin. Mô tả dữ liệu Để thống nhất phương thức mô tả tài liệu theo một khuôn mẫu thống nhất, người ta đưa ra những sơ đồ siêu dữ liệu. Vì thế hiện nay đã xuất hiện nhiều sơ đồ siêu dữ liệu khác nhau với quy định ngữ nghĩa riêng.

Sơ đồ dữ liệu (Metadata scheme): là tập hợp những yếu tố siêu dữ liệu được thiết kế cho mô tả một dạng tài nguyên thông tin cụ thể. Như vậy siêu dữ liệu là sơ đồ hình thức được xác định để mô tả tài nguyên thông tin cho đối tượng số hoặc không số. Thí dụ tập hợp yếu tố siêu dữ liệu Dublin Core có sơ đồ bao gồm 15 yếu tố để mô tả tài nguyên thông tin. Các nhà khoa học nhân văn đã xây dựng sơ đồ TEI (Text Encoding Initiative) để thống nhất tập hợp các yếu tố để mô tả tài liệu số đưa lên mạng hoặc đưa vào CSDL số.

Các nhà lưu trữ tài liệu điện tử thì khuyến nghị sử dụng sơ đồ EAD (Encoded Archival Description) [24] do họ đề xuất để thống nhất khổ mẫu cho lưu trữ tài liệu điện tử. EAD là một chuẩn được sử dụng để mã hóa thông tin trong các hệ thống tìm tin lưu trữ. EAD được duy trì và phát triển bởi Văn phòng tiêu chuẩn MARC và phát triển mạng – Thư viện Quốc hội Hoa Kỳ và Hội các nhà lưu trữ Hoa Kỳ. EAD được sử dụng để định nghĩa các thành phần quan trọng dùng để mô tả các tài liệu lưu trữ và tạo lập các công cụ tìm kiếm trong lưu trữ.

EAD có thể được áp dụng để chuyển đổi từ các công cụ tìm kiếm lưu trữ truyền thống (trên giấy) sang các công cụ tìm kiếm điện tử (trên máy tính). Bộ thẻ EAD đầy đủ gồm có 146 thẻ được sử dụng để mã hóa các thông tin về đối tượng số cần lưu trữ trong hệ thống. Ngữ nghĩa (Semantics): định nghĩa các yếu tố hoặc ý nghĩa được gán cho các yếu tố siêu dữ liệu thì được gọi là ngữ nghĩa của sơ đồ. Mỗi sơ đồ siêu dữ liệu có ngữ nghĩa và cú pháp được quy định riêng.

Ví dụ bộ yếu tố siêu dữ liệu Dublin Core chỉ có 15 yếu tố, trong đó yếu tố “Creator” - dùng để xác định là tác giả của tài liệu, hoặc yếu tố “Title” - được hiểu là nhan đề của tài liệu. Nội dung (Content): giá trị (dữ liệu) của từng yếu tố được gọi là nội dung. Đó chính là giá trị của mỗi yếu tố siêu dữ liệu. Nhờ các sơ đồ dữ liệu, 14 các chương trình xử lý tự động sẽ nhận biết đoạn dữ liệu nào sẽ thuộc thành phần nào, chẳng hạn đoạn dữ liệu này được nhận biết là nhan đề, đoạn dữ liệu kia được nhận biết là tác giả của tài liệu.

Việc tạo siêu dữ liệu thường là công việc thủ công, những công cụ tự động thường có khả năng hạn chế và thiếu các tính năng quan trọng như kiểm tra tính hợp lệ. Việc bảo trì siêu dữ liệu cũng không phải là chuyện dễ dàng. Những thay đổi trong hệ thống nghiệp vụ như thu thập, sao lưu trong quá trình bảo quản, phục vụ khai thác sử dụng, …gây nên thay đổi trong dữ liệu mà chúng tạo ra, nghĩa là siêu dữ liệu cũng phải được thay đổi tương ứng nếu không có sự tương ứng đó sau này sẽ không thể đọc được dữ liệu mà ta đã lưu trữ hoặc tính xác thực không còn được bảo đảm. Một vấn đề khác là thiếu các tiêu chuẩn để trao đổi siêu dữ liệu giữa những hệ thống khác nhau.

Hiện có hai nhóm lớn đang tiến hành những đề xuất về chuẩn cho siêu dữ liệu. Một xuất phát từ Microsoft và được sự hậu thuẫn của Liên Minh Meta Data Coalition [25], một nhóm lớn gồm 50 nhà sản xuất và người dùng. Cả hai đề xuất này đều dựa trên công nghệ ngôn ngữ đánh dấu mở rộng XML (Extensible Markup Language) để trao đổi dữ liệu. Các nhà sản xuất phần mềm độc lập cũng đang thực hiện những mở rộng siêu dữ liệu cho XML.

Một số nhà sản xuất hỗ trợ cho cả đề xuất của Meta Data Coalition và IBM/Oracle. Tuy nhiên, giới phân tích cho biết hiện thời toàn bộ quá trình chuẩn hoá siêu dữ liệu vẫn đang trong quá trình thực hiện. Đối với ngành lưu trữ, việc nghiên cứu các vấn đề như: sự hình thành tài liệu điện tử hay còn gọi là vòng đời của tài liệu điện tử từ khi hình thành đến khi được bảo quản trong các kho lưu trữ; quá trình sao lưu định kỳ, bảo quản an toàn để bảo đảm rằng tài liệu lưu trữ điện tử có thể đọc được trên các thiết bị phần cứng, cũng như phần mềm sau này; quá trình phục vụ khai thác sử dụng bảo đảm tính xác thực, tính pháp lý của tài liệu điện tử,… cần phải được đầu tư hơn nữa, đặc biệt là quá trình tham gia của cơ quan quản lý nhà nước về văn thư, lưu trữ vào việc xây dựng và ban hành các tiêu chuẩn dữ liệu 15 nói chung và tiêu chuẩn về đặc tả dữ liệu, siêu dữ liệu trong quá trình hình thành và quản lý tài liệu điện tử. Trong bài toán phát hiện mã độc dựa trên cây quyết định, thì meta-data của tệp tin được trích xuất ở đây là các trường của cấu trúc tệp tin thực thi.

Các siêu dữ liệu này định nghĩa sơ đồ cấu trúc vật lý, thuộc tính, thông tin về tệp tin thực thi. Xét về khía cạnh kỹ thuật, đây là những thông tin cực kỳ quan trọng đối với người nghiên cứu mã độc. Chúng chứa tất cả về tệp tin, cho biết dấu hiệu liệu tệp tin có thuộc một họ mã độc nào đó không. Cụ thể những dữ liệu được trích xuất sẽ trình bày chi tiết ở chương 3 Triển khai và đánh giá.

Cấu trúc tệp tin thực thi trên hệ điều hành Windows Định dạng tập tin thực thi (PE file) đã được thiết kế để được sử dụng bởi tất cả hệ thống dựa trên Win32 [26]. Tất cả các tệp tin có thể thực thi được trên Win32 (ngoại trừ các tệp tin VxDs và các tệp tin DLLs 16bit) đều sử dụng định dạng tệp tin thực thi. Các tệp tin DLLs 32bit, các tệp tin COM, các điều khiển OCX, các chương trình ứng dụng nhỏ trong Control Panel (.CPL) và các ứng dụng .NET tất cả đều là định dạng PE. Thâm chí các chương trình điều khiển ở chế độ Kernel của hệ điều hành Windows NT cũng sử dụng định dạng tệp tin PE.

Cấu trúc cơ bản Dưới đây là cấu trúc cơ bản của một tệp tin PE (minh họa hình 2.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ