Giải mã cách thức hoạt động của nhóm tin tặc mã độc tống tiền Dark Angels

 
Báo cáo Ransomware Zscaler ThreatLabz 2024 mới đây đã vạch trần nhóm tin tặc Dark Angels với khoản thanh toán tiền chuộc lớn nhất được biết đến trong lịch sử là 75 triệu USD vào đầu năm nay. Bài viết sẽ cùng giải mã, phân tích chi tiết hơn các chiến thuật, kỹ thuật và quy trình của nhóm tin tặc này, dựa trên báo cáo của hãng bảo mật Zscaler (Mỹ).

TỔNG QUAN VỀ DARK ANGELS

Nhóm Dark Angels hoạt động tại các khu vực nói tiếng Nga và chủ yếu nhắm mục tiêu vào các doanh nghiệp toàn cầu tại Mỹ, châu Âu, Nam Mỹ và châu Á. Cuộc tấn công bằng mã độc tống tiền đầu tiên của nhóm này được biết đến công khai xảy ra vào tháng 4/2022.

Tuy vậy, logo của nhóm tuyên bố rằng họ thành lập vào năm 2021 như được hiển thị trong Hình 1. Không rõ liệu các tin tặc này có hoạt động và thực hiện các cuộc tấn công dưới một tên khác trong giai đoạn đầu này hay không.

Giải mã cách thức hoạt động của nhóm tin tặc mã độc tống tiền Dark Angels

Hình 1. Logo của nhóm Dark Angels

Các cuộc tấn công của Dark Angels đầu tiên được biết đến đã triển khai các payload mã độc tống tiền trên hệ thống Windows dựa trên mã nguồn Babuk bị rò rỉ.

Nhóm này có khả năng thực hiện các cuộc tấn công tống tiền kép, kết hợp mã hóa tệp với tống tiền dữ liệu. Vào tháng 01/2023, Dark Angels bắt đầu công bố dữ liệu bị đánh cắp thông qua kênh Telegram (@leaksdirectory).

Giải mã cách thức hoạt động của nhóm tin tặc mã độc tống tiền Dark Angels

Hình 2. Dữ liệu rò rỉ sớm nhất được Dark Angels công bố trên Telegram vào tháng 01/2023

Tháng 4/2023, nhóm tin tặc này đã tạo ra trang web cung cấp các dữ liệu của riêng mình có tên “Dunghill Leak” để tiếp tục công khai dữ liệu nạn nhân bị đánh cắp. Tiếp đó, vào tháng 7/2023, Dark Angels đã bị phát hiện sử dụng một biến thể của RTM Locker để khởi chạy các cuộc tấn công mã độc tống tiền nhắm vào các hệ thống Windows.

RTM Locker được vận hành dưới dạng ransomware-as-a-service (RaaS). Điều thú vị là RTM Locker cũng dựa trên mã nguồn bị rò rỉ của Babuk. Mối liên hệ giữa các tin tặc triển khai RTM Locker và Dark Angels vẫn chưa rõ ràng, ngoại trừ việc chúng cùng sử dụng payload độc hại. Dark Angels không có khả năng liên kết với RTM Locker, nhưng nhóm này có thể đã có được mã nguồn phần mềm độc hại hoặc bản build RTM Locker.

Bên cạnh đó, Dark Angels cũng tận dụng một biến thể của RagnarLocker để mã hóa các tệp trên hệ thống Linux/ESXi. Mối quan hệ chính xác giữa Dark Angels và RagnarLocker vẫn chưa rõ ràng. RagnarLocker hoạt động từ tháng 12/2019 đến tháng 10/2023, cho đến khi các cơ quan thực thi pháp luật quốc tế triệt phá cơ sở hạ tầng của nhóm này và bắt giữ những cá nhân chủ chốt. Tuy nhiên, hành động này dường như không ảnh hưởng gì đến Dark Angels.

Giải mã cách thức hoạt động của nhóm tin tặc mã độc tống tiền Dark Angels

Hình 3. Dòng thời gian về hoạt động nổi bật của nhóm tin tặc Dark Angels

PHƯƠNG PHÁP TẤN CÔNG

Dark Angels xâm nhập vào hệ thống mạng mục tiêu bằng nhiều kỹ thuật khác nhau, bao gồm email lừa đảo và thông qua các ứng dụng công khai tồn tại lỗ hổng như CVE-2023-22069.

Khi đã vào bên trong mạng, các tin tặc thực hiện việc dò quét, trinh sát hệ thống và nâng cao đặc quyền để có quyền truy cập vào tài khoản quản trị viên. Sau đó, nhóm này xác định và đánh cắp thông tin nhạy cảm.

Như đã đề cập, không giống như các tác nhân đe dọa khác, Dark Angels không thuê ngoài các cuộc tấn công cho các bên liên kết thứ ba. Do đó, số lượng các cuộc tấn công do nhóm này phát động rất hạn chế và nhắm vào các tổ chức doanh nghiệp lớn, dẫn đến các khoản thanh toán tiền chuộc có giá trị cao.

Thay vì làm tê liệt toàn bộ các tổ chức, Dark Angels xâm nhập vào các mạng lưới và đánh cắp một lượng lớn dữ liệu, thông thường dao động từ 1 đến 100 TB. Sau đó, các tin tặc sẽ xác định xem có triển khai mã độc tống tiền và mã hóa dữ liệu của nạn nhân hay không. Quyết định này dựa trên việc mã hóa tệp có gây gián đoạn hoạt động kinh doanh hay không.

Việc tập trung vào tính ẩn danh và độ chính xác đã giúp nhóm này vẫn tương đối ít được biết đến. Cách tiếp cận như vậy không chỉ làm tăng số tiền chuộc từ các nạn nhân mà còn cho phép Dark Angels hoạt động tránh được sự đưa tin rộng rãi của truyền thông và sự giám sát của cơ quan thực thi pháp luật. Nhóm này đã phát động các cuộc tấn công nhắm vào nhiều ngành công nghiệp bao gồm chăm sóc sức khỏe, công nghệ, sản xuất và viễn thông.

MÃ HÓA TỆP TIN

Mã hóa trên hệ thống Windows

Trong các cuộc tấn công đầu tiên của Dark Angels, các tin tặc đã tận dụng bản thực thi của Babuk. Tuy nhiên, vào tháng 7/2023, các nhà nghiên cứu Zscaler đã quan sát thấy nhóm sử dụng một biến thể của RTM Locker, bản thân nó dựa trên Babuk. Tuy nhiên, biến thể RTM bao gồm các sửa đổi như thay thế thuật toán mã hóa đối xứng từ HC-128 thành ChaCha20.

Tương tự như Babuk, RTM Locker sử dụng thuật toán Elliptic Curve Cryptography (ECC) với Curve25519 để mã hóa bất đối xứng. Quá trình bắt đầu bằng cách tạo một giá trị 32 byte ngẫu nhiên cho mỗi tệp được sử dụng làm khóa riêng Curve25519. Khóa công khai tương ứng cho mỗi tệp sau đó được lấy từ khóa riêng. Giá trị khóa riêng sau đó được sử dụng để thực hiện trao đổi khóa Elliptic-Curve Diffie-Hellman (ECDH) với khóa công khai được mã hóa cứng do Dark Angels tạo ra để tạo ra một giá trị bí mật được chia sẻ.

Từ đây, giá trị này được sử dụng làm khóa ChaCha20 với nonce 8 byte NULL để mã hóa nội dung của tệp. Không giống như hầu hết các dòng mã độc tống tiền khác, RTM Locker không thêm phần footer chứa các tham số mã hóa của từng tệp. Thay vào đó, khóa công khai Curve25519 của tệp được mã hóa thành chuỗi hex 64 ký tự (32 byte khi giải mã) và phần mở rộng được thêm vào giá trị này. Một thư mục mẫu sau khi mã hóa tệp được hiển thị trong Hình 4.

Giải mã cách thức hoạt động của nhóm tin tặc mã độc tống tiền Dark Angels

Hình 4. Ví dụ về các tệp được mã hóa bằng biến thể RTM Locker được Dark Angels sử dụng

Các tham số duy nhất cần thiết để giải mã các tệp của nạn nhân là khóa riêng Curve25519 do Dark Angels sở hữu và khóa công khai Curve25519 của mỗi tệp, sau đó có thể được sử dụng để suy ra giá trị bí mật được chia sẻ (tức là khóa mã hóa ChaCha20 của tệp) bằng ECDH.

Tuy nhiên, có một vấn đề chính trong việc triển khai này. Nếu mã hóa tệp bị gián đoạn (ví dụ, nạn nhân nhận thấy tệp được mã hóa và tắt hệ thống), phần mở rộng chứa khóa công khai sẽ không được thêm vào tệp, vì thao tác đó xảy ra sau khi quá trình mã hóa tệp hoàn tất. Do đó, bí mật được chia sẻ để mã hóa ChaCha sẽ không thể khôi phục được và không thể giải mã tệp đó.

Mã hóa trên máy chủ Linux và VMware ESXi

Dark Angels thường tận dụng biến thể RagnarLocker để nhắm mục tiêu vào các hệ thống Linux và VMware ESXi. Mã hóa sử dụng sự kết hợp của ECC bất đối xứng và AES 256-bit đối xứng ở chế độ CBC. Đường cong elliptic được chọn để mã hóa bất đối xứng là secp256k1. Phần mềm độc hại sẽ mã hóa đệ quy các tệp bắt đầu từ một đường dẫn được chỉ định qua dòng lệnh. Dưới đây là sơ đồ minh họa quá trình mã hóa.

Giải mã cách thức hoạt động của nhóm tin tặc mã độc tống tiền Dark Angels

Hình 5. Quá trình mã hóa tệp tin được thực hiện bởi biến thể RagnarLocker

Mã hóa tệp đầu tiên tạo ra một giá trị 32 byte ngẫu nhiên được sử dụng làm khóa riêng secp256k1 cho mỗi hệ thống (được biểu thị trong sơ đồ trên là prv). Sau đó, khóa công khai secp256k1 được lấy từ giá trị này (pbv). Trao đổi khóa ECDH được thực hiện bằng cách sử dụng khóa riêng secp256k1 (prv) và khóa công khai secp256k1 được mã hóa cứng (prd) để tạo giá trị bí mật dùng chung.

Mã trao đổi khóa ECDH tận dụng thư viện bitcoin-core libsecp256k1. Lưu ý rằng thư viện này sử dụng hàm băm tùy chỉnh để lấy khóa dùng chung, do đó, nó không tương thích với nhiều thư viện đường cong elliptic chuẩn. Hàm này lấy kết quả của phép nhân vô hướng ECDH và bit cuối cùng của tọa độ y, rồi thực hiện thao tác OR từng bit để tính số phiên bản.

Giải mã cách thức hoạt động của nhóm tin tặc mã độc tống tiền Dark Angels

Hình 6. Sử dụng thư viện bitcoin-core libsecp256k1

Giá trị này sau đó được thêm vào giá trị của tọa độ x và băm SHA256 được tính toán để tạo ra giá trị bí mật được chia sẻ. Sau đó, phần mềm độc hại tạo ra một giá trị 32 byte ngẫu nhiên khác và một vectơ khởi tạo 16 byte (ivs). Giá trị trước đóng vai trò là khóa AES chính 256 bit (mk) được sử dụng để mã hóa tất cả các tệp ở chế độ CBC cùng với một vectơ khởi tạo 16 byte ngẫu nhiên (ivf) cho mỗi tệp. Khóa AES chính này sau đó được mã hóa bằng AES 256 bit ở chế độ CBC với giá trị bí mật được chia sẻ có nguồn gốc từ hoạt động ECDH (và hàm băm tùy chỉnh) làm khóa (sk).

Các tham số mã hóa này sau đó được đặt dưới dạng footer trong mỗi tệp được mã hóa cũng như ghi chú tiền chuộc được tạo cho mỗi tệp. Trong trường hợp mã hóa tệp bị gián đoạn, footer trong ghi chú tiền chuộc vẫn có thể được sử dụng để khôi phục các tham số mã hóa và do đó giải mã dữ liệu tệp gốc.

Phần footer cho biến thể mã độc tống tiền Dark Angels dựa trên RagnarLocker có thể được định nghĩa theo cấu trúc 177 byte như Hình 7.

Giải mã cách thức hoạt động của nhóm tin tặc mã độc tống tiền Dark Angels

Hình 7. Định nghĩa cấu trúc 117 byte footer của phần mềm độc hại

Ba trường đầu tiên (113 byte) sẽ giống nhau đối với mọi tệp được mã hóa trên một hệ thống riêng lẻ. Trường num_mb_to_skip được xác định bởi đối số “-m”. Tham số này xác định tỷ lệ phần trăm nào của tệp sẽ được mã hóa dựa trên số megabyte bị bỏ qua (tức là không được mã hóa) cho mỗi khối 1 MB được mã hóa.

Nếu tệp nhỏ hơn 10 MB, toàn bộ nội dung tệp sẽ được mã hóa và trường num_mb_to_skip sẽ được đặt thành giá trị 0xAB. Nếu tệp lớn hơn 10 MB, phần mềm độc hại sẽ mã hóa dữ liệu của từng tệp thành các khối 0x100000 byte (1 MB) và bỏ qua khối được chỉ định trong trường num_mb_to_skip của footer trước khi mã hóa khối tiếp theo.

Giải mã cách thức hoạt động của nhóm tin tặc mã độc tống tiền Dark Angels

Hình 8. Ví dụ về định dạng tệp được mã hóa với tham số -m được chỉ định là 10

Mục đích của việc chọn chế độ mã hóa tệp là để tối ưu hóa việc mã hóa cho các tệp rất lớn, có khả năng mất nhiều giờ để hoàn tất mã hóa. Dưới đây là ví dụ về một tệp có kích thước ban đầu là 5 byte được mã hóa bởi biến thể Dark Angels RagnarLocker.

Giải mã cách thức hoạt động của nhóm tin tặc mã độc tống tiền Dark Angels

Hình 9. Ví dụ về cấu trúc tệp được mã hóa cho tệp có kích thước dưới 10 MB

KẾT LUẬN

Vào tháng 3/2024, Dark Angels đã nhận được khoản tiền chuộc kỷ lục là 75 triệu USD. Trước vụ việc này, nhóm này phần lớn vẫn ẩn mình trong bóng tối do cách thức hoạt động của chúng, khá khác biệt so với hầu hết các nhóm tin tặc mã độc tống tiền khác.

Thay vì dựa vào các chi nhánh để thực hiện các cuộc tấn công, nhóm này hoạt động một mình và tập trung vào một số lượng hạn chế các mục tiêu có giá trị cao bao gồm các công ty, doanh nghiệp lớn. Dark Angels cũng lựa chọn có triển khai mã độc tống tiền để mã hóa các tệp hay không, nhưng trong mọi trường hợp, chúng đều đánh cắp một lượng lớn dữ liệu nhạy cảm.

Dark Angels là một trong số ít nhóm tin tặc tìm cách hạn chế sự gián đoạn kinh doanh và tránh công khai. Đây là một trong những lý do chính khiến nhóm này cực kỳ thành công trong việc tống tiền các doanh nghiệp trong khi thu hút rất ít sự chú ý.

Cập nhật tin tức công nghệ mới nhất tại fanpage Công nghệ & Cuộc sống