18/09/2018, 16:00

Phân tích, phát hiện và gỡ bỏ mã độc Practical Malware Analysis Lab14-01

Bài viết hướng dẫn các bạn cách phân tích, phát hiện và gỡ bỏ mã độc Practical Malware Analysis Lab14-01 Phân tích mã độc Lab14-01 trong cuốn sách Practical Malware Analysis Practical Malware Analysis: https://nostarch.com/malware Mẫu mã độc của Lab14-01 có thể tải về ...

lab1401

Bài viết hướng dẫn các bạn cách phân tích, phát hiện và gỡ bỏ mã độc Practical Malware Analysis Lab14-01

Phân tích mã độc Lab14-01 trong cuốn sách Practical Malware Analysis

Practical Malware Analysis: https://nostarch.com/malware

Mẫu mã độc của Lab14-01 có thể tải về từ: https://github.com/mikesiko/PracticalMalwareAnalysis-Labs

Phân tích

Khi thực thi, Lab14-01.exe thực hiện các hành vi:

  • Lấy cấu trúc hardware profile thông qua hàm GetCurrentHwProfileA, sau đó ghép các phần tử từ HwProfileGuid[25] – HwProfileGuid[36] trong cấu trúc HwProfileInfo trả về thành định dạng giống một địa chỉ MAC: HH:HH:HH:HH:HH:HH
  • Lấy username của người dùng hiện tại (thông qua hàm GetUserNameA), và ghép chuỗi string định dạng giống địa chỉ MAC từ thao tác trên với username vừa lấy được. Nếu không lấy được username, kết thúc thực thi.
  • Đưa chuỗi string dạng HH:HH:HH:HH:HH:HH-username vào hàm mã hóa Base64. Hàm mã hóa Base64 này sử dụng ký tự ‘a’ thay cho ký tự ‘=’ khi paddinglab1401
  • Lấy ký tự cuối của chuỗi string sau khi mã hóa Base64, ghép chuỗi thành một URL hoàn thiện theo định dạng http://www.practicalmalwareanalysis.com/%s/%c.png với %s là chuỗi string sau khi mã hóa Base64 và %c là ký tự cuối cùng của chuỗi đó. Do hàm mã hóa Base64 sử dụng ký tự ‘a’ làm padding, trong nhiều trường hợp, %c là ký tự ‘a’.
  • Sử dụng URL vừa ghép làm đầu vào hàm URLDownloadToCacheFileA. Như vậy, mã độc thực hiện tải nội dung file http://www.practicalmalwareanalysis.com/%s/%c.png vào một cache file, hàm URLDownloadToCacheFileA trả về địa chỉ của cache file vừa tải.
  • Địa chỉ cache file được truyền vào hàm CreateProcessA. Nếu hàm này được gọi thành công, mã độc kết thúc thực thi. Nếu không, mã độc sleep trong 60s và lặp vô tận thao tác gọi hàm [URLDownloadToCacheFileA -> CreateProcessA] cho đến khi CreateProcess thành công.
  • Tại thời điểm phân tích, khi mã độc thực hiện HTTP request tới http://www.practicalmalwareanalysis.com/%s/%c.png, HTTP response luôn trả về StatusCode là 404, Not found. Vì vậy, mã độc lặp vô tận thao tác URLDownloadToCacheFileA -> CreateProcessA
  • Như vậy, Lab14-01.exe hoạt động như một downloader, tải về và kích hoạt các thành phần độc hại khác.

lab1412

Phát hiện

Lab14-01.exe có thể được phát hiện bằng signature:

  • 20 byte từ file offset 4216, là đoạn padding bằng ký tự ‘a’ trong hàm mã hóa Base64

lab1413

  • 20 byte từ file offset 4617, là một đoạn trong hàm thao tác URLDownloadToCacheFileA-CreateProcess

lab1414

Gỡ bỏ

  • Chỉ cần xóa file Lab14-01.exe

lab1415

Tổng hợp chuyên đề phân tích mã độc =>> CLICK XEM NGAY

0