Các nhà nghiên cứu an ninh mạng vừa phát hiện một vụ tấn công NuGet typosquat (tấn công giả mạo tên miền/tên gói) không giống với các phần mềm độc hại đánh cắp thông tin thông thường. Thay vì chỉ lấy dữ liệu, nó được thiết kế để dàn xếp kết quả trò chơi trực tiếp trên nền tảng Digitain.
Gói phần mềm này có tên là "Newtonsoftt.Json.Net", giả mạo thư viện Newtonsoft.Json nổi tiếng và thực chất là một bản fork bị gắn Trojan. Đã có 7 phiên bản của gói này được đăng tải lên kho lưu trữ NuGet, bao gồm: 11.0.4, 11.0.5, 11.0.7, 11.0.8, 11.0.9, 11.0.10 và 11.0.11. Cho đến nay, gói này đã được tải xuống khoảng 1.200 lần.
Chủ sở hữu có tên "MagicalPuff96" đã đưa gói này vào trạng thái "unlisted", nghĩa là nó sẽ không xuất hiện khi tìm kiếm trên NuGet. Tuy nhiên, các tệp tin độc hại vẫn có thể được tải xuống trực tiếp từ hệ thống đăng ký.
"Mã độc Trojan này dàn xếp kết quả trên Digitain, một nền tảng cá cược trực tuyến. Ở các phiên bản sau, nó còn trích xuất kết quả các vòng chơi đã được dàn xếp về máy chủ do kẻ tấn công kiểm soát, sử dụng header
X-Seq-ApiKey: theperfectheist2025," theo báo cáo từ JFrog.
Tấn công có mục tiêu chính xác
Điểm đáng chú ý của gói phần mềm này là nó nhắm mục tiêu cụ thể vào một thực thể duy nhất, trong khi vẫn hoạt động bình thường như một thư viện chuẩn đối với các người dùng khác.
"Những nhà phát triển cài đặt nhầm gói này do gõ sai tên vẫn nhận được một bản build Newtonsoft.Json hoạt động bình thường. Hành vi độc hại chỉ bắt đầu sau khi máy chủ khởi tạo
JsonConvert.DefaultSettings, và chỉ thành công trên các hệ thống có phương thức backend trò chơi cụ thể của mục tiêu, sau một khoảng thời gian chờ nhất định," Guy Korolevski, nhà nghiên cứu bảo mật tại JFrog, cho biết.
Tất cả 7 phiên bản được công bố đều chứa cùng một bản fork bị gắn Trojan của Newtonsoft.Json 13.0, trải dài qua ba thế hệ được xuất bản từ ngày 13 tháng 8 đến ngày 10 tháng 10 năm 2025.
Backdoor tự kích hoạt thông qua thuộc tính DefaultSettings, vốn đã bị chỉnh sửa để gọi mã điều khiển bởi kẻ tấn công. Nó tạo ra một khoảng thời gian trễ ngẫu nhiên nhằm vượt qua các cơ chế phát hiện trước khi thực hiện hành vi độc hại. Mục tiêu cuối cùng là nhắm vào các máy chủ chạy backend trò chơi "crash-game" của Digitain và đánh cắp kết quả đã được dàn xếp về một địa chỉ C2 cố định (185.126.237[.]64:5341) bằng cách ngụy trang dưới dạng dữ liệu đo lường từ xa (telemetry).
Quá trình tinh vi hóa mã độc
"Sự thay đổi qua các phiên bản nằm ở kỹ thuật làm xáo trộn mã (obfuscation), chiến lược dàn xếp và đường dẫn trích xuất dữ liệu," JFrog giải thích. "Quá trình này cho thấy tác giả đã lặp đi lặp lại việc tăng cường payload: Thế hệ 1 chỉ là bản thử nghiệm (PoC) dàn xếp tại địa phương; Thế hệ 2 bổ sung tính năng trích xuất dữ liệu nhưng ẩn giấu sau kỹ thuật reflection và ConfuserEx; Thế hệ 3 đã tối ưu hóa việc dàn xếp và ổn định đường truyền dữ liệu."
Nạn nhân chính là Digitain, nhà điều hành trò chơi cá cược FG-Crash. Metadata của gói phần mềm đã làm rò rỉ URL kho lưu trữ nội bộ của Digitain tới 7 lần, cho thấy tác giả có thể đã tiếp cận được mã nguồn của trò chơi FG-Crash.
"Payload không thực hiện đánh cắp thông tin đăng nhập, duy trì sự hiện diện (persistence) hay leo thang đặc quyền. Mục đích duy nhất của nó là làm tổn hại đến tính toàn vẹn của trò chơi. Các nhà phát triển khác cài nhầm gói này thậm chí có thể không nhận ra họ đang dùng phần mềm độc hại vì nó chỉ nhắm vào một tổ chức cụ thể," Korolevski nhấn mạnh.
Khuyến nghị bảo mật
Để đối phó với mối đe dọa này, các nhà phát triển được khuyến nghị:
- Gỡ bỏ ngay gói typosquat độc hại.
- Chặn địa chỉ máy chủ điều khiển (C2).
- Cố định phiên bản Newtonsoft.Json an toàn thông qua tệp
packages.lock.json.
Về phía Digitain, họ cho biết đã nắm được vấn đề và đang thực hiện các bước giải quyết. Tuy nhiên, mức độ ảnh hưởng thực tế vẫn chưa được xác định đầy đủ.