Nhóm tin tặc Lazarus nhắm mục tiêu tấn công liên quan đến COVID-19

14:06 | 24/03/2021

Trong khi cuộc khủng hoảng do đại dịch COVID-19 tiếp tục có nhiều diễn biến phức tạp, một nhóm nghiên cứu của Hàn Quốc đã tìm thấy bằng chứng cho thấy, nhóm tin tặc Lazarus đang thực hiện các cuộc tấn công vào các hệ thống mục tiêu liên quan đến COVID-19 nhằm mục đích đánh cắp thông tin về việc phát triển vắc xin COVID-19.

Trong thời gian gần đây, nhóm nghiên cứu Hàn Quốc đã phát hiện nhóm tin tặc Lazarus đang tìm kiếm các đối tượng liên quan đến COVID-19. Nhóm tin tặc này đã tấn công vào một công ty dược phẩm vào cuối tháng 9/2020. Trong quá trình điều tra, nhóm nghiên cứu cũng phát hiện ra Lazarus đã tấn công vào Bộ Y tế của Chính phủ Hàn Quốc. Mỗi cuộc tấn công sử dụng các chiến thuật, kỹ thuật và quy trình khác nhau, nhưng nhóm nghiên cứu đã tìm thấy mối liên hệ giữa hai trường hợp và bằng chứng cho thấy các cuộc tấn công đó được thực hiện bởi Lazarus.

Hình 1. Các mục tiêu tấn công của nhóm Lazarus trong thời gian gần đây

Cuộc tấn công đầu tiên nhằm vào Bộ Y tế của Chính phủ Hàn Quốc. Vào ngày 27/10/2020, hai máy chủ Windows đã bị xâm nhập. Tuy không thể xác định được hướng tấn công, nhưng có thể kẻ tấn công đã cài đặt một nhóm mã độc có tên wAgent trên hai máy chủ này. WAgent chỉ hoạt động trong bộ nhớ và payload kết nối đến máy chủ điều khiển từ xa.

Cuộc tấn công thứ hai liên quan đến một công ty dược phẩm. Theo thông tin ghi nhận được, công ty này đã bị tấn công vào ngày 25/9/2020. Lần này, nhóm Lazarus đã triển khai mã độc Bookcode. Các nhà nghiên cứu có thể quan sát các lệnh sau khi khai thác do nhóm Lazarus thực hiện tại cuộc tấn công này.

Cả hai cuộc tấn công trên đều tận dụng các nhóm mã độc khác nhau và không trùng lặp. Tuy nhiên, các chuyên gia đã tìm thấy sự tương đồng trong quá trình sau khi khai thác và xác nhận rằng cả hai sự cố trên có liên quan với nhóm Lazarus.

Nhóm mã độc wAgent

Hình 2. Quy trình lây nhiễm của cụm mã độc wAgent

Tuy nhóm nghiên cứu không thể tìm thấy được môđun khởi động được sử dụng trong cuộc tấn công này, nhưng dường như môđun chỉ có một vai trò thực thi wAgent với các tham số cụ thể. Một trong những mẫu wAgent thu thập được có siêu dữ liệu giả để làm cho nó trông giống như tiện ích nén hợp pháp XZ Utils.

Theo thông tin ghi nhận trên hệ thống, mã độc này đã được thực thi trực tiếp trên máy nạn nhân từ Command Line Shell bằng cách gọi hàm Thumbs với tham số:

C:\windows\system32\rundll32.exe  

C:\Programdata\Oracle\javac.dat, Thumbs 8IZ-VU7-109-S2MY

Tham số chuỗi 16 byte được sử dụng làm khóa AES để giải mã payload được nhúng. Khi payload được tải vào trong bộ nhớ, nó sẽ giải mã thông tin cấu hình bằng cách sử dụng khóa giải mã đã có. Cấu hình chứa các thông tin bao gồm: địa chỉ máy chủ C&C kết nối, đường dẫn tệp được sử dụng sau này. Đáng lưu ý, một số đường dẫn URL được phân tách bằng ký hiệu ‘@’. Mã độc cố gắng kết nối với từng đường dẫn URL theo một cách ngẫu nhiên.

Hình 3. Địa chỉ C&C trong cấu hình

Khi mã độc được thực thi lần đầu tiên, nó sẽ tạo ra các số định danh riêng để phân biệt từng nạn nhân bằng cách sử dụng hàm băm có giá trị ngẫu nhiên. Nó cũng tạo ra một giá trị ngẫu nhiên 16 byte và đảo ngược thứ tự của nó. Tiếp theo, mã độc sẽ nối giá trị 16 byte ngẫu nhiên này và giá trị hàm băm bằng cách sử dụng ‘@’ làm dấu phân cách. Ví dụ: 82UKx3vnjQ791PL2 @ 29312663988969.

Tham số POST được giải mã trong thời gian chạy và được chọn ngẫu nhiên tại mỗi kết nối C&C. Trước đây, một kỹ thuật tương tự đã được sử dụng khi nhóm Lazarus tấn công các doanh nghiệp tiền điện tử bằng mã độc.

Mã độc mã hóa số định danh được tạo bằng mã base64 và kết nối đến máy chủ C&C. Cuối cùng, payload tiếp theo từ máy chủ C&C được tải trực tiếp vào bộ nhớ. Tuy nhóm nghiên cứu trên không thể lấy được bản sao của nó nhưng theo phán đoán của họ, payload trên là một DLL có chứa các chức năng cửa hậu (Backdoor). Việc sử dụng Backdoor trong bộ nhớ giúp kẻ tấn công có thể thực thi nhiều lệnh để thu thập thông tin nạn nhân:

cmd.exe /c ping -n 1 -a 192.[redacted]

cmd.exe /c ping -n 1 -a 192.[redacted]

cmd.exe /c dir \\192.[redacted]\c$

cmd.exe /c query user

cmd.exe /c net user [redacted] /domain

cmd.exe /c whoami

Duy trì hoạt động của mã độc wAgent

Sử dụng backdoor wAgent, kẻ tấn công đã cài đặt thêm một payload wAgent có cơ chế liên tục theo dõi và đánh cắp dữ liệu. Sau quá trình tìm kiếm DLL này, một dòng lệnh được thực thi với các tham số như sau:

rundll32.exe C:\programdata\oracle\javac.io,SagePlug 4GO-R19-0TQ-HL2A C:\programdata\oracle\~TMP739.TMP

4GO-R19-0TQ-HL2A được dùng làm khóa và đường dẫn tệp ở trên cho biết nơi lưu các thông báo gỡ lỗi. Trình cài đặt wAgent hoạt động tương tự như mã độc trong trình tải wAgent được mô tả ở trên. Sau khi giải mã nó bằng khóa 16 byte từ dòng lệnh, nó chịu trách nhiệm tải xuống một payload. Trong phần payload được giải mã này, mã độc tạo ra một đường dẫn tệp để tiếp tục lây nhiễm:

C:\Windows\system32\[random 2 characters]svc.drv

Tệp này được ngụy trang dưới dạng một chương trình hợp pháp có tên là SageThumbs Shell Extension. Đây là một công cụ hiển thị các tệp hình ảnh trực tiếp trong Windows Explorer. Tuy nhiên, bên trong công cụ này đã chứa thêm các thành phần độc hại.

Trong khi tạo tệp này, môđun trình cài đặt sẽ điền vào tệp đó dữ liệu ngẫu nhiên để tăng kích thước của tệp. Mã độc cũng sao chép thời gian tạo của cmd.exe vào tệp mới để giúp nó ít bị phát hiện hơn.

Để thực hiện việc ghi nhật ký và gỡ lỗi, mã độc lưu trữ thông tin trong tệp được cung cấp dưới dạng đối số thứ hai (C:\programdata\oracle\~TMP739.TMP). Tệp nhật ký này chứa thông tin về thời gian và quá trình lây nhiễm. Kẻ tấn công có thể kiểm tra tệp này theo cách thủ công bằng các lệnh Windows. Các thông báo gỡ lỗi này có cấu trúc giống với mã độc trước đây được sử dụng trong các cuộc tấn công được thực hiện bởi nhóm Lazarus vào các doanh nghiệp tiền điện tử.

Sau đó, mã độc sẽ giải mã cấu hình nhúng của nó. Dữ liệu cấu hình này có cấu trúc tương tự như mã độc wAgent đã nói ở trên. Nó cũng chứa các địa chỉ máy chủ C&C ở cùng một định dạng:

hxxps://iski.silogica[.]net/events/serial.jsp@WFRForms.jsp@import.jsp@view.jsp@cookie.jsp

hxxp://sistema.celllab[.]com.br/webrun/Navbar/auth.jsp@cache.jsp@legacy.jsp@chooseIcon.jsp@customZoom.jsp

hxxp://www.bytecortex.com[.]br/eletronicos/digital.jsp@exit.jsp@helpform.jsp@masks.jsp@Functions.jsp

hxxps://sac.najatelecom.com[.]br/sac/Dados/ntlm.jsp@loading.jsp@access.jsp@local.jsp@default.jsp

Mã độc mã hóa dữ liệu cấu hình và lưu trữ dưới dạng khóa registry được xác định trước với tên tệp của nó:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application\Emulate – [random 2 characters]svc

Sau đó, mã độc này thêm đường dẫn tệp đã tạo vào cuối giá trị registry hiện có. Nhờ khóa registry này, mà DLL có thể được tải bởi lsass.exe trong lần khởi động tiếp theo.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa – Security Packages : kerberos msv1_0 schannel wdigest tspkg pku2u [random 2 characters]svc.drv

Cuối cùng, môđun khởi động khởi động tệp svc.drv trong một tiến trình điều khiển. Nó tiếp tục tìm kiếm tiến trình svchost.exe đầu tiên và thực hiện DLL Injection. Sau đó, svc.drv được đưa vào một tiến trình giải mã. Payload cuối cùng là wAgent, tiếp tục tìm kiếm các payload bổ sung từ máy chủ điều khiển C&C (có thể là một backdoor đầy đủ tính năng và tải nó vào bộ nhớ).

Nhóm mã độc Bookcode

Công ty dược phẩm bị mã độc Bookcode của nhóm tin tặc Lazarus tấn công là nơi nghiên cứu và đã được phép sản xuất, phân phối vắc-xin COVID-19. Trước đây, nhóm Lazarus từng tấn công một công ty phần mềm ở Hàn Quốc bằng mã độc Bookcode. ​Nhóm đã phát tán mã độc Bookcode bằng cách thực hiện các hành vi lừa đảo trực tuyến hoặc xâm nhập web của công ty. Tuy nhiên, không thể xác định chính xác hướng tấn công ban đầu cho vụ việc này.

Hình 4. Quy trình lây nhiễm mã độc

Mặc dù không tìm thấy mã độc triển khai tiến trình tải xuống và mã hóa payload của Bookcode, nhưng nhóm nghiên cứu có thể xác định một mẫu đã được tải xuống. Tệp này có nhiệm vụ tải payload được mã hóa có tên gmslogmgr.dat nằm trong thư mục hệ thống. Sau khi giải mã payload, trình tải tìm tiến trình lưu trữ dịch vụ svchost.exe với các tham số winmgmt, ProfSvc hoặc Appinfo và đưa payload vào đó. Tuy không thể tìm được payload được mã hóa, nhưng nhóm nghiên cứu có thể tạo lại các hành động của mã độc trên máy của các nạn nhân và xác định nó là mã độc Bookcode.

Khi thực thi, mã độc Bookcode sẽ đọc một tệp cấu hình. Trong khi các mẫu Bookcode trước đây sử dụng tệp perf91nc.inf làm tệp cấu hình, phiên bản này đọc cấu hình của nó từ tệp có tên C-28705.NLS. Mẫu mã độc Bookcode này có chức năng gần giống như mã độc được mô tả trong báo cáo do Cơ quan An ninh và Internet Hàn Quốc (KISA) công bố gần đây. Khi mã độc được khởi động, nó sẽ gửi thông tin của nạn nhân đến kẻ tấn công. Sau khi kết nối với máy chủ điều khiển C&C, mã độc cung cấp các chức năng backdoor.

Giai đoạn sau khi khai thác

Các chiến dịch tấn công của nhóm Lazarus sử dụng Bookcode có các chiến thuật, kỹ thuật và quy trình duy nhất của riêng nó và có sự tương đồng với cuộc tấn công này. Cụ thể như sau:

- Trích xuất thông tin máy chủ bị nhiễm, bao gồm cả hàm băm mật khẩu;

- Sử dụng các lệnh Windows để kiểm tra kết nối mạng;

- Sử dụng công cụ WakeMeOnLan để quét các máy chủ trong cùng một mạng.

Sau khi cài đặt Bookcode vào ngày 25/9/2020, kẻ tấn công bắt đầu thu thập thông tin hệ thống và thông tin về mạng từ các nạn nhân. Ngoài ra, kẻ tấn công cũng thu thập thông tin registry có chứa các hàm băm mật khẩu.

exe /c “reg.exe save hklm\sam %temp%\~reg_sam.save > “%temp%\BD54EA8118AF46.TMP~” 2>&1″

exe /c “reg.exe save hklm\system %temp%\~reg_system.save > “%temp%\405A758FA9C3DD.TMP~” 2>&1″

Sau khi có được thông tin tài khoản, kẻ tấn công kết nối với một máy chủ khác bằng lệnh “net” và thực thi một payload đã sao chép bằng lệnh “wmic”.

exe /c “netstat -aon | find “ESTA” > %temp%\~431F.tmp

exe /c “net use \\172.[redacted] “[redacted]” /u:[redacted] > %temp%\~D94.tmp” 2>&1″

wmic /node:172.[redacted] /user:[redacted] /password:”[redacted]” process call create “%temp%\engtask.exe” > %temp%\~9DC9.tmp” 2>&1″

Hơn nữa, Lazarus đã trích xuất danh sách người dùng và máy tính của nạn nhân bằng cách sử dụng ADfind để thu thập thông tin bổ sung từ Active Directory.

Nhóm các chuyên gia trên đã phát hiện thấy một tệp cấu hình bổ sung. Nó chứa bốn máy chủ điều khiển C&C, tất cả đều là máy chủ web bị xâm nhập được đặt tại Hàn Quốc.

hxxps://www.kne.co[.]kr/upload/Customer/BBS.asp;

hxxp://www.k-kiosk[.]com/bbs/notice_write.asp;

hxxps://www.gongim[.]com/board/ajax_Write.asp;

hxxp://www.cometnet[.]biz/framework/common/common.asp

Một trong những máy chủ C&C đó đã bật danh sách thư mục, vì vậy có thể có được thông tin chi tiết về cách những kẻ tấn công quản lý máy chủ C&C của họ:

Hình 5. Tệp của kẻ tấn công được liệt kê trên trang web

Nhóm nghiên cứu này đã phát hiện ra một số tệp nhật ký và một tập lệnh từ máy chủ bị xâm nhập, đó là máy chủ C&C giai đoạn 1. Nó nhận các kết nối từ backdoor, nhưng chỉ phục vụ như một proxy tới một máy chủ giai đoạn 2, nơi kẻ tấn công thực sự lưu trữ các dữ liệu.

Hình 6. Một số tệp của kẻ tấn công

Customer_Session.asp là một tập lệnh C&C giai đoạn 1 chịu trách nhiệm gửi các lệnh từ máy chủ C&C giai đoạn tiếp theo và kết quả thực thi lệnh. Để cung cấp các lệnh thích hợp cho từng nạn nhân, tham số bbs_code được sử dụng làm định danh. Tập lệnh sử dụng định danh này để gán lệnh cho đúng nạn nhân. Dưới đây là cách thức hoạt động của quá trình gửi cho một nạn nhân cụ thể:

  1. Toán tử mã độc đặt cờ tương ứng ([id] _208) và lưu lệnh vào biến ([id] _210).
  2. Kiểm tra cờ tương ứng ([id] _208) và lấy lệnh từ biến ([id] _210) nếu nó được đặt.
  3. Sau khi thực hiện lệnh, gửi kết quả đến máy chủ C&C và đặt cờ tương ứng.
  4. Kẻ tấn công kiểm tra cờ và truy xuất kết quả nếu cờ được đặt.

Hình 7 .Logic của tập lệnh C&C

Bên cạnh các tính năng kiểm soát, tập lệnh C&C còn có các khả năng bổ sung như: cập nhật địa chỉ máy chủ C&C giai đoạn tiếp theo, gửi mã định danh đến máy chủ giai đoạn tiếp theo hoặc xóa tệp nhật ký.

Đánh giá

Theo một số phân tích trong bài viết này, các hành vi nêu trên được nhóm tin tặc Lazarus thực hiện với độ tin cậy cao. Đầu tiên, có thể nhận thấy rằng mã độc wAgent được sử dụng tấn công tại Bộ Y tế Hàn Quốc có cùng một kế hoạch lây nhiễm với mã độc mà nhóm Lazarus đã sử dụng trước đây trong các cuộc tấn công vào các doanh nghiệp tiền điện tử.

Cả hai trường hợp đều sử dụng một lược đồ đặt tên mã độc tương tự nhau, đều tạo hai ký tự ngẫu nhiên và thêm “svc” vào nó để tạo đường dẫn nơi payload bị loại bỏ. Cả hai mã độc đều sử dụng Nhà cung cấp hỗ trợ bảo mật làm cơ chế duy trì. Cả hai đều có thông báo gỡ lỗi gần như giống hệt nhau.

Dưới đây là so sánh giữa mã độc được sử dụng trong cuộc tấn công vào Bộ Y tế Hàn Quốc và mã độc được sử dụng trong cuộc tấn công vào các doanh nghiệp tiền điện tử (MD5: 4088946632e75498d9c478da782aa880):

Hình 8. So sánh 2 mẫu mã độc trong các vụ tấn công khác nhau

Theo nhóm nghiên cứu, mã độc Bookcode được sử dụng độc quyền bởi nhóm tin tặc Lazarus. Theo Kaspersky Threat Attribution Engine (KTAE), một trong các mẫu mã độc Bookcode (MD5: 0e44fcafab066abe99fe64ec6c46c84e) chứa nhiều đoạn mã trùng lặp với các biến thể Manuscrypt cũ.

Hình 9. Kết quả phân tích của Kaspersky Threat Attribution Engine

Hơn nữa, có sự tương đồng trong chiến lược tấn công trong giai đoạn sau khi khai thác, chẳng hạn như việc sử dụng ADFind ở cuộc tấn công vào Bộ Y tế Hàn Quốc để thu thập thêm thông tin về hệ thống của nạn nhân. Một công cụ tương tự đã được triển khai trong cuộc tấn công vào công ty dược phẩm để trích xuất danh sách nhân viên và máy tính từ Active Directory.

Kết luận

Hai vụ việc này cho thấy mối quan tâm của nhóm Lazarus đối với thông tin liên quan đến COVID-19. Mặc dù, nhóm Lazarus chủ yếu được biết đến với các cuộc tấn công liên quan đến hoạt động tài chính, nhưng đó là một lời cảnh báo rằng tổ chức này có thể tiếp tục thay đổi chiến lược. Vì vậy, tất cả các tổ chức hiện đang tham gia vào các hoạt động như nghiên cứu vắc xin hoặc xử lý khủng hoảng liên quan đến đại dịch COVID-19 phải cảnh giác cao độ đối với các cuộc tấn công mạng.

Các mẫu nhận diện

MITRE ATT&CK