1. Thông tin về sample
File name: Chi Thi cua thu tuong nguyen xuan phuc.rar
File Hash (SHA-256): bbbeb1a937274825b0434414fa2d9ec629ba846b1e3e33a59c613b54d375e4d2
File Size: 172 KB
File type: RAR
File Timestamps: 2020:03:03 14:46:12
Archived File Name: Chi Thi cua thu tuong nguyen xuan phuc\Chi Thi cua thu tuong nguyen xuan phuc.lnk
Hình 1: Nội dung của tài liệu xuất hiện khi mã độc thực thi
Hình 2: Nội dung trong file nén
File .lnk đơn giản là một shorcut được Windows sử dụng làm tham chiếu đến file gốc. Các file này thường sử dụng cùng một biểu tượng với file gốc, nhưng thêm một mũi tên cuộn tròn nhỏ để cho biết nó trỏ đến một vị trí khác. Khi người dùng vô tình mở file .lnk trong file nén trên, hành vi của mã độc sẽ diễn ra theo trình tự:
¨ Khởi chạy
cmd.exe, mục đích để gọi
mshta.exe với tham số truyền vào là file .lnk đã được giải nén tạm ở thư mục
%Temp%:
Hình 3: cmd.exe gọi tới mshta.exe
Hình 4: Thực thi mshta.exe với tham số truyền vào là file lnk
¨
mshta.exe có nhiệm vụ phân tích file, tìm kiếm và thực thi script được nhúng trong file. Từ đây, thực hiện các hành động sau:
- Tạo các file 3.exe, http_dll.dll, http_dll.dat, Chi Thi cua thu tuong nguyen xuan phuc.doc trong thư mục %LocalAppData%\Temp.
- Khởi chạy 3.exe, tiến trình này sẽ tạo các file unsecapp.exe, http_dll.dll, http_dll.dat trong thư mục %AllUsersProfile%\Microsoft Malware Protectionydy.
- Thiết lập run key Microsoft Malware Protectionydy trong Registry (HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run & HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Microsoft Malware Protectionydy) trỏ tới file unsecapp.exe đã tạo ở trên.
- Gọi WINWORD.EXE để mở tài liệu %Temp%\Chi Thi cua thu tuong nguyen xuan phuc.doc với nội dung như ở Hình 1 nhằm đánh lừa người dùng.
Hình 5: Luồng thực thi của các tiến trình
¨ Tiến trình
unsecapp.exe sau khi thực thi sẽ kết nối tới C2 là
vietnam[.]zing[.]photos:
Hình 6: Tiến trình unsecapp.exe kết nối tới C2
Hai file
3.exe và
unsecapp.exe thực chất là cùng là một file và có Certificate nhằm qua mặt các phần mềm Antivirus:
Hình 7: 3.exe và unsecapp.exe trùng hash
Hình 8: Thông tin Certificate mà độc sử dụng
2.2. Phân tích chi tiết file lnk và VBScript
Như mô tả ở phần trên, khi người dùng mở file
Chi Thi cua thu tuong nguyen xuan phuc.lnk trong
Chi Thi cua thu tuong nguyen xuan phuc.rar,
mshta.exe sẽ được gọi để thực thi script. Như vậy, nội dung của script này phải được nhúng sẵn trong file .lnk. Sử dụng
010 Editor để mở file .lnk và tìm kiếm chuỗi
<script, kết quả có được thông tin về đoạn VBScript được nhúng trong file:
Hình 9: Nội dung của script nhúng trong file
Trích xuất toàn bộ nội dung của script. Nội dung của script như sau:
¨ Khai báo các biến
CAwyFTsgCQ, yilJSYTMMh, TPDgWjZcyJ và gán lần lượt nội dung của
3.exe, http_dll.dll, http_dll.dat cho từng biến:
Hình 10: Tạo biến chứa nội dung của file
¨ Tạo lập đường dẫn cho các files và gọi hàm
vSWGUThohAGJ để tạo files:
Hình 11: Tạo các file 3.exe, http_dll.dll, http_dll.dat
¨ Thực thi file
3.exe đã tạo, tạo tài liệu
Chi Thi cua thu tuong nguyen xuan phuc.doc và mở tài liệu này để đánh lừa người dùng.
Hình 12: Thực thi 3.exe và mở tài liệu Chi Thi cua thu tuong nguyen xuan phuc.doc
2.3. Phân tích chi tiết các payload
2.3.1. Phân tích unsecapp.exe
Như đã đề cập ở trên, mã độc sau khi thực thi thành công sẽ thiết lập run key
Microsoft Malware Protectionydy trong Registry (
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run) trỏ tới file
unsecapp.exe. File này bản chất là
EHttpSrv.exe (ESET HTTP Server Service) thuộc sản phẩm
Eset Smart Security của hãng
ESET. Kẻ tấn công đã lợi dụng file này để thực hiện kĩ thuật
DLL side-loading nhằm tải và thực thi mã độc nằm trong thư viện
http_dll.dll.
Hình 13: unsecapp.exe gọi hàm LoadLibraryW để nạp http_dll.dll
2.3.2. Phân tích http_dll.dll
http_dll.dll sau khi được nạp sẽ thực thi code tại
DllMain, tại đây mã độc gọi hàm thực hiện công việc sau:
¨ Lấy địa chỉ thuộc
unsecapp.exe tính từ
base address + 0x157A.
¨ Gọi hàm
VirtualProtect để thay đổi
16 bytes từ địa chí tính toán ở trên thành
PAGE_EXECUTE_READWRITE.
¨ Patch code tại địa chỉ đó thông qua kĩ thuật
push – ret để nhảy tới hàm thực hiện nhiệm vụ giải mã mà thực thi Shellcode.
Hình 14: Sử dụng kĩ thuật push-ret để nhảy tới hàm tại địa chỉ 0x10001230
Tại hàm
DecryptShellCodeAndExcecute (0x10001230), mã độc tiếp tục thực hiện:
¨ Cấu thành đường dẫn tới
http_dll.dat, file này chứa payload đã bị mã hóa:
Hình 15: Cấu thành đường dẫn tới http_dll.dat
¨ Gọi hàm
FileReadAll (0x10001030), đọc toàn bộ nội dung của
http_dll.dat vào vùng nhớ đã cấp phát:
Hình 16: Hàm FileReadAll chịu trách nhiệm đọc nội dung http_dll.dat
Hình 17: Code của hàm FileReadAll
¨ Trích xuất key giải mã (
10 bytes đầu của
http_dll.dat), cấp phát vùng nhớ và copy toàn bộ dữ liệu của
http_dll.dat vào vùng nhớ đã được cấp phát. Gọi hàm
XorDecrypt (0x100014B0) để giải mã payload mới trên bộ nhớ:
Hình 18: Thực hiện giải mã payload mới trên bộ nhớ
¨ Cuối cùng gọi hàm
VirtualProtect để thay đổi vùng nhớ của payload mới thành
PAGE_EXECUTE_READWRITE và gọi thẳng tới payload này để thực thi. Payload cuối cùng này sẽ làm nhiệm vụ giải mã cấu hình có thông tin về thư mục “
Microsoft Malware Protectionydy” dùng để lưu các payload, thông tin về C2 như đã đề cập ở trên và thực hiện nhiệm vụ kết nối tới C2.
Hình 19: Thực thi payload mới đã giải mã trên bộ nhớ
Bằng thông tin phân tích được ở trên, có thể giải mã và thu được payload mới mà không cần debug:
Hình 20: http_dll.dat trước và sau khi giải mã
Payload có được là một dll (
HT.dll):
Hình 21: Payload mới là một dll
Bài viết xin được tạm dừng tại đây, trong phần tiếp theo chúng tôi sẽ phân tích chi tiết về cách thức hoạt động của payload cuối cùng (HT.dll).
Indicators of compromise (IOCs)
Dropped file:
%LocalAppData%\Temp
1. 3.exe [SHA256: c3159d4f85ceb84c4a0f7ea9208928e729a30ddda4fead7ec6257c7dd1984763]
2. http_dll.dll [SHA256: 79375c0c05243354f8ba2735bcd086dc8b53af709d87da02f9206685095bb035]
3. http_dll.dat [SHA256: b62d35d8edae874a994fff12ec085a0bf879c66b3c97fd13fe0a335b497342e5]
4. Chi Thi cua thu tuong nguyen xuan phuc.doc [SHA256: e3556d6ba5e705b85599b70422928165c8d4130074029a8dcd04a33f4d1aa858]
%AllUsersProfile%\Microsoft Malware Protectionydy
1. unsecapp.exe
[SHA256: c3159d4f85ceb84c4a0f7ea9208928e729a30ddda4fead7ec6257c7dd1984763]
2. http_dll.dll [SHA256: 79375c0c05243354f8ba2735bcd086dc8b53af709d87da02f9206685095bb035]
3. http_dll.dat [SHA256: b62d35d8edae874a994fff12ec085a0bf879c66b3c97fd13fe0a335b497342e5]
Persistence Registry:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Microsoft Malware Protectionydy = C:\ProgramData\Microsoft Malware Protectionydy\unsecapp.exe"
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\Microsoft Malware Protectionydy = C:\ProgramData\Microsoft Malware Protectionydy\unsecapp.exe"
C2:
Domain: vietnam[.]zing[.]photos
IP: 104.160.44.85