Chuyên đề phân tích mã độc đang được rất nhiều bạn đọc quan tâm, tiếp nối chuyên đề này SecurityBox sẽ tiếp tục hướng dẫn các bạn Phân tích, phát hiện và gỡ bỏ mã độc Practical Malware Analysis Lab13-01 qua bài viết dưới đây.
Phân tích mã độc Lab13-01 trong cuốn sách Practical Malware Analysis
Practical Malware Analysis: https://nostarch.com/malware
Mẫu mã độc của Lab13-01 có thể tải về từ: https://github.com/mikesiko/PracticalMalwareAnalysis-Labs
Phân tích
Lab13-01.exe thực hiện các hành vi:
- Giải mã XOR nội dung resource section RCDATA 0065 0409 với key là 0x3B để lấy địa chỉ URL http://practicalmalwareanalysis.com
- Mở một socket, lấy hostname (gethostname) và mã hóa Base64 hostname vừa lấy được; sau đó kết nối tới URL trên sử dụng phương thức GET với định dạng [GET /encoded-string/] với UA là Mozilla/4.0. Như ta thấy trong URI, encoded-string là “YW5obnYtM2MyZTUy”.
- Tải URL và so sánh ký tự đầu tiên trong dữ liệu nhận được với ký tự “o”, nếu ký tự đầu tiên trong dữ liệu nhận được là “o”, hàm tải URL trả về 1; nếu không, trả về 0
- Lặp vô hạn chuỗi thao tác: Sleep 0.5s -> tải URL -> Sleep 30s cho đến khi hàm tải URL trả về 1 (ký tự đầu tiên trong dữ liệu nhận được là “o”)
- Sau khi thoát khỏi vòng lặp trên, mã độc kết thúc thực thi
Như vậy, Lab13-01.exe thực hiện gửi tín hiệu về C&C server thông báo rằng nó đang hoạt động, với định danh là hostname của máy tính nạn nhân. Khi nhận được response thích hợp (dữ liệu có ký tự “o” là giá trị ascii byte đầu tiên), mã độc kết thúc thực thi.
Phát hiện
Lab13-01.exe có thể được phát hiện bằng signature:
- 20 byte từ file offset 4650, là đoạn mã hóa Base64 hostname chuẩn bị cho phương thức GET
- 20 byte từ fileoffset 5014, là đoạn trích xuất resource section RCDATA 0065 và gọi hàm giải mã XOR
Gỡ bỏ
Mã độc không có hành vi leo thang đặc quyền hay cài đặt persistence nên ta chỉ cần xóa bỏ file thực thi của mã độc
Đón đọc chuyên đề Giải mã mật khẩu TẠI ĐÂY