Download as pdf or txt
Download as pdf or txt
You are on page 1of 24

HỌC VIỆN KỸ THUẬT MẬT MÃ

KHOA AN TOÀN THÔNG TIN


¯¯¯¯¯¯¯¯¯¯¯¯

MODULE THỰC HÀNH


MÃ ĐỘC

BÀI THỰC HÀNH SỐ 02


Phân tích tĩnh cơ bản

Người thực hiện bài thực hành:


TS. Đặng Xuân Bảo

Hà Nội, 2020

1
Mục lục
Mục lục ......................................................................................................................2
THÔNG TIN CHUNG VỀ BÀI THỰC HÀNH ....................................................3
CHUẨN BỊ BÀI THỰC HÀNH..............................................................................4
XÂY DỰNG MÔI TRƯỜNG PHÂN TÍCH MÃ ĐỘC .... Error! Bookmark not
defined.
1.1. Mô tả...................................................................................................................5
1.2. Chuẩn bị .............................................................................................................5
1.3. Phân tích tĩnh cơ bản........................................................................................5
1.3.1. Phân tích Lab01-01 .......................................................................................5
1.3.2. Phân tích Lab01-02 .....................................................................................17

2
THÔNG TIN CHUNG VỀ BÀI THỰC HÀNH

Tên bài thực hành: Phân tích tĩnh cơ bản


Học phần: Mã độc
Số lượng sinh viên cùng thực hiện:
Địa điểm thực hành: Phòng máy
Yêu cầu:
− Yêu cầu phần cứng:
+ Máy tính với cấu hình tối thiểu: CPU 2.0 GHz, RAM 4GB, HDD 500GB
− Yêu cầu phần mềm trên máy:
+ Hệ điều hành Windows 10
+ VMware Worstation 15.0
− Yêu cầu kết nối mạng LAN: có
− Yêu cầu kết nối mạng Internet: có

3
CHUẨN BỊ BÀI THỰC HÀNH
Đối với giảng viên
Trước buổi học, giảng viên (người hướng dẫn thực hành) cần kiểm tra
sự phù hợp của điều kiện thực tế của phòng thực hành với các yêu cầu của bài thực
hành.
Ngoài ra không đòi hỏi gì thêm.
Đối với sinh viên
Trước khi bắt đầu thực hành, cần tạo các bản sao của máy ảo để sử dụng.
Đồng thời xác định vị trí lưu trữ các công cụ đã chỉ ra trong phần yêu cầu.

4
PHÂN TÍCH TĨNH CƠ BẢN
1.1. Mô tả
Bài thực hành hướng dẫn sinh viên sử dụng một số công cụ trong việc phân
tích tĩnh một số mẫu mã độc đơn giản.
1.2. Chuẩn bị
- Môi trường phân tích mã độc đã xây dựng trong bài trước.

1.3. Phân tích tĩnh cơ bản

1.3.1. Phân tích Lab01-01

Phần này sử dụng các tệp Lab01-01.exe and Lab01-01.dll, cả trong thư mục "
chapter_1l ". (Sinh viên tham khảo thêm tài liệu Practical Malware Analysis)

5
Sử dụng Virustotal để phân tích
Tải lên Lab01-01.exe và Lab01-01.dll trên www.virustotal.com

6
Kết quả phân tích Lab01-01.dll như hình bên dưới.

7
8
Sinh viên tìm hiểu ý nghĩa của các kết quả trên (làm tương tự với file Lab01-01.exe)

Sử dụng PEview

9
Dùng PEview đọc thông tin về Lab01-01.exe và Lab01-01.dll. Đối với mỗi
tệp, tìm "Time Date Stamp". Chúng đều được biên dịch cùng một thời gian, như vậy
chúng là các phần của cùng một chương trình.

10
Sử dụng PeiD
Dùng PEiD đọc thông tin về Lab01-01.exe và Lab01-01.dll (tùy chọn ). Ta thu
được thông tin "Microsoft Visual C++ 6.0", nghĩa là chúng được viết bằng ngôn
ngữ Microsoft Visual C++ 6.0.
Phần EP section hiển thị .text. Sinh viên giải thích ý nghĩa.

11
Sử dụng Bintext
Bintext là một công cụ hữu ích để xem các chuỗi. Dùng Bintext các chuỗi có
trong file Lab01-01.dll, lưu ý những mục sau đây:
- CreateProcessA: Lệnh tạo một tiến trình
- Sleep: lệnh ngủ

Lệnh khởi động một chương trình bị thiếu. Để xem lệnh này cần vào tab Filter và
điều chỉnh " Min. text length " thành 4.

12
Vào tab Search ở trên cùng bên phải, nhấp vào Go.
Bây giờ có thể thấy lệnh khởi chạy chương trình là exec.

Một số điểm cần lưu ý và tìm hiểu:


- Dưới "sleep" and "hello" thấy có địa chỉ IP, bắt đầu với 127. Liệu đây là địa chỉ
gì?
- FindNextFileA" and "FindFirstFileA" -- Windows functions tìm các tập tin
13
- ". exe " -- tìm kiếm tệp exe
- " C: Windows\system32\kerne132. dll " và " C: Windows\system32\kernel32. dll
". Cái nào là dll của Windows ?

Sử dụng Dependency Walker

Dùng Dependency Walker đọc Lab01-01.exe.

14
Vào phần KERNEL32.DLL ta thu được kết quả sau.

Giải thích hình trên. Lưu ý các phần "PI" (Parent Import), E (Export), các hàm
FindNextFileA, FindFirstFileA...

15
Vào phần MSVCRT.DLL

Dùng Dependency Walker đọc Lab01-01.dll. Lưu ý hàm "WS2_32.DLL" và


“bind”, “closesocket” và “connec”.

16
1.3.2. Phân tích Lab01-02

Sử dụng Virustotal


Thực hiện các yêu cầu tương tự trong phần 1.3.1.

17
Sử dụng PEiD
Kết quả thấy tập tin được đóng gói bằng UPX (được ghi tại phần "EP Section").

18
Sử dụng các kiến thức đã học, sinh viên tìm thêm dấu hiệu chứng tỏ Lab01-02.exe
bị nén.

Sử dụng upx391w


Giải nén và copy upx.exe vào thư mục C:\Windows\System32.

19
Mở Command Prompt và thực hiện lệnh : Upx
Thông báo trợ giúp UPX hiển thị như hình dưới đây:

20
Sử dụng lệnh cd để chuyển đến thư mục chứa các mẫu mã độc.
Sử dụng lệnh :
cd "\Users\Administrator\Desktop\126\Practical Malware Analysis
Labs\BinaryCollection\Chapter_1L

Thực hiện lệnh UPX -d -o Lab01-02-unpacked.exe Lab01-02.exe để giải nén tập
tin:

21
Phân tích tập tin đã giải nén Lab01-02-unpacked.exe bằng PEiD.

22
Sử dụng Dependency Walker..
Thực hiện các yêu cầu tương tự phần 1.3.1, lưu ý hai hàm InternetOpenUrlA và
InternetOpenA.

Sử dụng Strings


Tìm các chuỗi trong tập tin, thấy hai chuỗi đáng ngờ là MalService và
http://www.malwareanalysisbook.com.

23
Điều này giúp ta có thể đưa ra giả thiết rằng mã độc kết nối tới địa chỉ
http://www.malwareanalysisbook.com và khi thực thi sẽ tạo dịch vụ với tên tên
MalService.

24

You might also like