5. Phương pháp nghiên cứu
1.4 So sánh về các dữ liệu đầu vào mà cáchệthống này hỗ trợ
Kể từ khi các loại mã độc có thể ẩn được trong hầu hết các định dạng tập tin vànhiều loại tài liệu, do vậy các hệ thống tự động phân tích phần mã độc hại phải hỗ trợ cho phép phân tích nhiều loại định dạng hoặc các loại tài liệu khác nhau để có thể phát hiện các mối đe dọa bên trong nó. Ví dụ: nếu một kẻ tấn công đã ẩn một payload độc hại bên trong một tài liệu ở định dạng PDF, thì công cụ tự động phân tích mã độc phải có hỗ trợ định dạng PDF để có thể thao tác, phân tích với các tài liệu ở định dạng này. Nếu hệ thống không hỗ trợ định dạng PDF, thì việc bóc tách và phân tích các tài liệu bằng PDF sẽ không được tốt, và do đó hệ thống sẽ không thể tìm thấy payload độc hại. Vì chúng ta nhìn vào các tài liệu PDF dưới con mắt của một công cụ tự động phân tích mã độc, thì các tài liệu PDF chỉ là một tập hợp các byte ngẫu nhiên mà thôi.
Những kẻ tấn công chủ yếu sử dụng các định dạng tập tin, các loại tài liệu và các thành phần khác được trình bày dưới đây để đính kèm với thành phần mã độc mà chúng muốn phát triển. Đa số các định dạng này không cần giới thiệu nhiều vì chúng ta đã quá quen với chúng, dưới đây là giải thích ngắn gọn về chúng.
• exe: Là định dạng file thực thi trên Windows hay còn gọi là Windows PE
• elf: Là định dạng file thực thi trên Linux ELF ( Linux executable programs ).
• mach-o: là định dạng của những file thực thi chạy trên máy MAC của Apple (MAC OS X Mach-O executable files).
• apk: Android APK executable files
• url: URLs
• pdf: PDF documents
• doc/docx: DOC/DOCX documents
• ppt/pptx: PPT/PPTX documents
• xsl/xsls: XSL/XSLS documents
• htm/html: HTM/HTML web pages
• jar: JAR Java executable files
• rtf: RTF documents
• dll: DLL libraries
• db: DB database files
• png/jpg: PNG/JPG images
• zip/rar: ZIP/RAR archived
• cpl: Control Panel Applets
• ie: Analyze Internet Explorer process when opening an URL
• ps1: Powershell scripts
• python : Python scripts
• vbs: VBScript files
Bảng dưới đây trình bày định dạng tập tin và các loại tài liệu mà các hệ thống tự động phân tích mã độc hại,hỗ trợ được. Mỗi hàng đại diện cho các định dạng tập tin hoặc các loại tài liệu, các cột là cáchệthống phân tích mã độc tự động được trình bày bởi một hoặc hai chữ cái (như đã trình bày trước đó). Dấu✔ được sử dụng để biểu thị rằng định dạng tập tin hoặc tài liệu loại nào được hỗ trợ bởi hệ thống phân tích malware tự động đó, ngoài ra thì không. Dấu * được sử dụng để đánh dấu rằng sự hỗ trợ cho các loại tài liệu đang được thực hiện, nhưng chưa có sẵn tại thời điểm này.
Hình 8: So sánh về các định dạng file mà các hệ thống hỗ trợ
• Từ bảng trên, chúng ta có thể kết luận rằng mỗi một hệ thống tự động phân tích mã độckhông thểđược sử dụng để phân tích với tất cả các loại tập tin, vì mã độc được ẩn trong rất nhiều các tập tin và tài liệu với những cách thức hoàn toàn khác nhau. Khi thêm một mã độc vào tập tin thực thi, chúng ta có thể làm việc này bằng cách thêm một đoạn mã hợp ngữ độc hại trong phần tập tin .text của nó - và đó chỉ là một trong những cách để làm điều đó. Mặt khác, khi đó có một mã độc trong một tài liệu .docx, chúng thường viết dưới dạng macro và sẽ được thực hiện bởi Microsoft Word khi mở tài liệu đó ra.
Dưới đây, chúng ta đã sẽ chia các định dạng tập tin, các loại tài liệu trong bảng trên thành những thành phần có những đặc tính chung. Trong mỗi loại, chúng ta cũng sẽ nêu ra một cách ngắn gọn về cách mã độc được thực hiện như thế nào và sau đó chúng ta sẽ tìm hiểu những gì là cần thiết để cho các hệ thống tự động phân tích mãđộc tiến hành phân tích được chúng.
• Các tập tin thực thi [exe, elf, mach-o, apk, dll]: Mã độc ở định dạng cùa file thực thiphát tán trên mạng Internet, và được tải về bởi người sử dụng dướidạng của chương trình phần mềmhoặctrò chơi crack. Người sử dụng khi tải về chương trình đó, họ có được điều họ muốn là crack được chương trình, nhưng thường thì trong những file crack này sẽ bị những kẻ xấu thêm vào những đoạn mã độc vào các tập tin đó, mà khi được thực thi trên máy tính của người dùng, máy tính này sẽ bị lây nhiễm.
• Các loại tài liệu [pdf, doc / docx, ppt / pptx, xml / XSLT, rtf]: Với những loại tài liệu ở dạng này, có rất nhiều lỗ hổng phần mềm được phát hiện trong các
chương trình phần mềm được sử dụng để load chúng lên, gần như mỗi ngày. Do đó, nếu một kẻ tấn công phát hiện ra một lỗ hổng trong Acrobat Reader (hỗ trợ định dạng file pdf), Microsoft Word / OpenOffice (hỗ trợ doc / docx, ppt / pptx, xls / xlsx, rtf), họ có thể tạo thành một loại tài liệu như vậy mà chương trình không thể xử lý các tập tin đó, dẫn tới đổ vỡ chương trình ( crash ). Tùy thuộc
vào loại lỗ hổng, kẻ tấn công có thể có thể thực hiện một payload độc hại có trong các loại tài liệu này.
• Trình duyệt web [url, htm / html, jar, tức]: trình duyệt web cũng có chứa lỗ hổng như PDF Reader và Office Suite làm. Do đó, kẻ tấn công có thể tạo ra một trang web độc hại mà trình duyệt web sẽ không thể xử lý được, mà sẽ dẫn đến việc crash của trình duyệt web, từ kẻ tấn công có thể thực thi mã tùy ý.
• Các định dạng nén [zip / rar]: Các dạng lưu trữ có thể được sử dụng để phát tán các tập tin độc hại trên Internet. Nếu một tập tin độc hại được đặt bên trong những định dạng lưu trữ này và với mật khẩu bảo vệ, các giải pháp phân tích thông thường sẽ không thể phân tích ra nội dung bên trong của các định và này và do đó không thể xác định xem nó có chứa các tập tin độc hại hay không.
• Các định dạng ảnh [png / jpg]: kẻ tấn công có thể ẩn một payload độc hại bên trong một file ảnh, và có thể được xử lý bởi một ứng dụng web đã bị khai thác và chạy trên một máy chủ web không được thiết lập đúng. Vì vậy, một giải pháp về phân tích mã độc nên có thể phân tích nhiều định dạng ảnh khác nhau để xác định liệu chúng có chứa bất cứ điều gì khác thường, giống như một payload độc hại chẳng hạn.
• Các định dạng ngôn ngữ lập trình (python, vbs, ps1): một kẻ tấn công cũng có thể phát tán mã độc được viết bằng ngôn ngữ lập trình hoặc các đoạn script thích hợp, mà sau đó được xử lý bởi một số ứng dụng trên máy tính của nạn nhân. Một ví dụ như vậy là PowerShell (ps1), macro được chứa trong file Word, mà được thực hiện theo yêu cầu của người dùng nếu họ cho phép thực hiện các macro lúc mở một file trong Microsoft Word.