Phân tích mã độc Practical Malware Analysis Lab03-04
Ở bài viết lần trước bạn đọc đã cùng chuyên gia an ninh mạng SecurityBox Nguyễn Việt Anh tìm hiểu, phân tích, cách phát hiện và cách gỡ bỏ mã độc Practical Malware Analysis Lab03-03. Tiếp tục đồng hành cùng SecurityBox phân tích, phát hiện và tìm hiểu gỡ bỏ mã độc Practical Malware ...
Ở bài viết lần trước bạn đọc đã cùng chuyên gia an ninh mạng SecurityBox Nguyễn Việt Anh tìm hiểu, phân tích, cách phát hiện và cách gỡ bỏ mã độc Practical Malware Analysis Lab03-03. Tiếp tục đồng hành cùng SecurityBox phân tích, phát hiện và tìm hiểu gỡ bỏ mã độc Practical Malware Analysis Lab03-04 trong bài viết dưới đây nhé.
Phân tích mã độc Lab03-04 trong cuốn Practical Malware Analysis
Practical Malware Analysis: https://nostarch.com/malware
Mẫu mã độc của Lab03-04 có thể tải về từ: https://github.com/mikesiko/PracticalMalwareAnalysis-Labs
Phân tích
- Lab03-04 gồm 1 file .EXE là Lab03-04.exe, không packed
- Lab03-04.exe chỉ thực thi các hành vi độc hại khi được cấp đúng tham số đầu vào và password. Password là “abcd”. Các tham số đầu vào cơ bản bao gồm “-in”, “-re”, “-c”, “-cc”. Nếu các tham số ban đầu và password cung cấp sai, mã độc tự xóa file thực thi của chính nó sau đó kết thúc thực thi. Ta có thể đặt tên cho file thực thi của mã độc với bất cứ tên gì. Trong bài phân tích, tên file thực thi được giữ nguyên là “Lab03-04.exe”.
Lab03-04.exe -in abcd:
- Các registry key mà mã độc tạo:
+ HKEY_LOCAL_MACHINESOFTWAREMicrosoft XPS (chú ý ký tự SPACE trong subkey “Microsoft ”) với một value có tên là Configuration chứa dữ liệu là các giá trị string “ups”, “http://www.practicalmalwareanalysis.com”, “80”, “60”
+ HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesX với value DisplayName là “X Manager Service” và ImagePath là “%SYSTEMROOT%system32X.exe”, với X là Tên File Thực Thi không kèm tên mở rộng. Registry key này là kết quả gián tiếp sau khi mã độc thực hiện hàm CreateService, tạo một autostart service.
- Copy file thực thi X.exe vào thư mục %SYSTEMROOT%system32 với tên giữ nguyên là X.exe (khi detect/disinfect phải lấy %SYSTEMROOT%system32)
- Copy giá trị FileTime của C:Windowssystem32kernel32.dll và dùng giá trị FileTime đó set cho C:Windowssystem32X.exe (timestomping)
- Với tham số đầu vào “-in abcd”, mã độc thực hiện chức năng như một backdoor: Kết nối internet với tham số lấy trong registry value Configuration (host www.practicalmalwareanalysis.com, port 80), lệnh điều khiển lấy từ file ngẫu nhiên xxxx/xxxx.xxx. Các lệnh điều khiển là: SLEEP, UPLOAD, DOWNLOAD, CMD, NOTHING.
- Ví dụ, với file thực thi đặt tên là Lab03-04.exe, mã độc tạo registry key HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesLab03-04, với value DisplayName là Lab03-04 Manager Service và ImagePath là “%SYSTEMROOT%system32Lab03-04.exe”.
Lab03-04.exe -re abcd:
- Mã độc gỡ bỏ autostart service mà nó tạo với tham số đầu vào “-in” bằng cách xóa registry key HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesLab03-04.
- Xóa file %SYSTEMROOT%system32Lab03-04.exe
- Xóa dữ liệu trong value HKEY_LOCAL_MACHINESOFTWAREMicrosoft XPSConfiguration
- Nếu thao tác xóa dữ liệu của registry value trên không thành công, mã độc cố gắng xóa registry key đó.
Lab03-04.exe -c abcd chibi cute meow lovely:
- Với tham số đầu vào “-c”, mã độc yêu cầu các tham số sau đó phải là password và 4 tham số phụ khác (trường hợp này, mã độc sử dụng tổng cộng 7 tham số dòng lệnh), các tham số phụ này đặt tùy ý.
- Gọi hàm phân giải các tham số 3, 4, 5, 6 (chibi, cute, meow, lovely); tạo mới/mở registry value tại HKLMSOFWAREMicrosoft XPSConfiguration và set dữ liệu là 4 tham số đầu vào vừa phân giải được, sau đó kết thúc thực thi
Lab03-04.exe -cc abcd:
- Truy vấn giá trị của registry value HKLMSOFWAREMicrosoft XPSConfiguration và in kết quả ra màn hình
Phát hiện
Lab03-04.exe có thể phát hiện bằng signature:
- 20 byte tính từ file offset 9525 (2535h), là đoạn kiểm tra password trong tham số đầu vào
- 20 byte tính từ file offset 49225 (C049h), là một phần của giá trị hard-coded string “SOFWAREMicrosoft XPSConfiguration”
Gỡ bỏ
- Xóa file thực thi của mã độc
- Vì file thực thi có thể được đặt bất cứ tên gì. Ta phải lấy tên file (không tính phần tên mở rộng) ghép vào đường dẫn “HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices” và “%SYSTEMROOT%system32” để xóa registry key và file thực thi tương ứng.
- Dùng hàm WinAPI GetSystemDirectory() để lấy giá trị đường dẫn %SYSTEMROOT%
- Xóa registry key “HKLMSOFWAREMicrosoft XPS”
XEM THÊM: PHÂN TÍCH MÃ ĐỘC PRACTICAL MALWARE ANALYSIS LAB01-01
Bạn là sinh viên các ngành quản trị thông tin và an ninh mạng, bạn muốn tìm tòi cơ hội để thực hành, thực tế và nhận sự hướng dẫn của chuyên gia an ninh mạng SecurityBox =>> XEM TẠI ĐÂY