- 
							
							09/04/2020
						
 
- 
							
							118
						
 
- 
							
							1.232 bài viết
						
 
								Mã độc SleepyDuck ẩn trong extension, chiếm quyền và trộm ví tiền số của người dùng
							
						
						
							Một tiện ích dành cho lập trình viên Solidity trên kho Open VSX vừa bị phát hiện chứa mã độc nguy hiểm mang tên SleepyDuck. Theo các chuyên gia an ninh mạng, kẻ tấn công đã lợi dụng cơ chế cập nhật của extension mã nguồn mở để cấy mã độc từ xa, khiến nhiều nạn nhân chịu thiệt hại nghiêm trọng.
Cụ thể, kẻ tấn công sẽ lợi dụng Extension "juan-bianco.solidity-vlang", loại extension này ban đầu hoàn toàn vô hại, được phát hành ngày 31/10/2025 như một thư viện hỗ trợ lập trình Solidity. Tuy nhiên, chỉ một ngày sau, khi đạt hơn 14.000 lượt tải, nó được cập nhật lên phiên bản mới chứa mã độc. Hành động này cho thấy chiến thuật “ra mắt bản sạch, chờ đủ người dùng rồi cấy độc”, vốn ngày càng phổ biến trong các chiến dịch tấn công vào cộng đồng lập trình viên.
Theo phân tích của các chuyên gia, SleepyDuck được kích hoạt mỗi khi người dùng mở cửa sổ code mới hoặc chọn file ".sol". Lúc này, nó sẽ:
Các extension giả mạo thường mang tên nghe hợp pháp hoặc hấp dẫn (như “Solidity Tools”, “Smart Contract Helper”...) để lừa người dùng cài đặt. Sau khi được tải xuống, chúng chiếm quyền trên môi trường phát triển (IDE), nơi thường chứa private key, seed phrase, API key hoặc file cấu hình ví điện tử, dẫn đến nguy cơ rò rỉ nghiêm trọng.
Các chuyên gia cũng cảnh báo về một nhóm extension độc khác trên Visual Studio Code Marketplace, được phát hành bởi tài khoản “developmentinc”. Một trong số đó, có chủ đề “Pokémon”, tải và chạy script đào tiền ảo Monero thông qua máy chủ "mock1[.]su". Script này thậm chí tự tăng quyền admin, thêm ngoại lệ cho Windows Defender, rồi tải miner từ xa để chiếm dụng tài nguyên CPU.
Tất cả năm extension này đã bị gỡ bỏ, bao gồm:
Nguy cơ lớn nhất nằm ở việc:
Để giảm thiểu rủi ro, các chuyên gia an ninh mạng khuyến nghị:
Sự việc này nhắc nhở một bài học, mã nguồn và tiện ích cho lập trình không nên được coi là “vô hại” mặc nhiên. Với tiền mã hóa và môi trường phát triển chứa thông tin nhạy cảm, một extension độc nhỏ cũng đủ gây tổn thất lớn. Cộng đồng cần kết hợp biện pháp kỹ thuật, chính sách quản trị và ý thức cảnh giác để ngăn chặn rủi ro này. Nếu bạn là dev Solidity hoặc quản trị hệ thống, giờ là lúc rà soát lại các extension đã cài và suy nghĩ kỹ trước khi bấm nút “Install”.
			
			Cụ thể, kẻ tấn công sẽ lợi dụng Extension "juan-bianco.solidity-vlang", loại extension này ban đầu hoàn toàn vô hại, được phát hành ngày 31/10/2025 như một thư viện hỗ trợ lập trình Solidity. Tuy nhiên, chỉ một ngày sau, khi đạt hơn 14.000 lượt tải, nó được cập nhật lên phiên bản mới chứa mã độc. Hành động này cho thấy chiến thuật “ra mắt bản sạch, chờ đủ người dùng rồi cấy độc”, vốn ngày càng phổ biến trong các chiến dịch tấn công vào cộng đồng lập trình viên.
Theo phân tích của các chuyên gia, SleepyDuck được kích hoạt mỗi khi người dùng mở cửa sổ code mới hoặc chọn file ".sol". Lúc này, nó sẽ:
- Tự động tìm nhà cung cấp Ethereum RPC nhanh nhất để kết nối với blockchain.
 - Truy cập vào một hợp đồng thông minh trên Ethereum có địa chỉ "0xDAfb81732db454DA238e9cFC9A9Fe5fb8e34c465" để lấy thông tin máy chủ điều khiển (C2).
 - Gửi dữ liệu hệ thống gồm: Hostname, username, địa chỉ MAC, múi giờ… về server "sleepyduck[.]xyz".
 - Duy trì liên lạc bằng cơ chế polling mỗi 30 giây, chờ nhận lệnh từ hacker.
 
Các extension giả mạo thường mang tên nghe hợp pháp hoặc hấp dẫn (như “Solidity Tools”, “Smart Contract Helper”...) để lừa người dùng cài đặt. Sau khi được tải xuống, chúng chiếm quyền trên môi trường phát triển (IDE), nơi thường chứa private key, seed phrase, API key hoặc file cấu hình ví điện tử, dẫn đến nguy cơ rò rỉ nghiêm trọng.
Các chuyên gia cũng cảnh báo về một nhóm extension độc khác trên Visual Studio Code Marketplace, được phát hành bởi tài khoản “developmentinc”. Một trong số đó, có chủ đề “Pokémon”, tải và chạy script đào tiền ảo Monero thông qua máy chủ "mock1[.]su". Script này thậm chí tự tăng quyền admin, thêm ngoại lệ cho Windows Defender, rồi tải miner từ xa để chiếm dụng tài nguyên CPU.
Tất cả năm extension này đã bị gỡ bỏ, bao gồm:
- developmentinc.cfx-lua-vs
 - developmentinc.pokemon
 - developmentinc.torizon-vs
 - developmentinc.minecraftsnippets
 - developmentinc.kombai-vs
 
Nguy cơ lớn nhất nằm ở việc:
- Lập trình viên bị đánh cắp thông tin hệ thống, ví hoặc private key.
 - Máy tính bị điều khiển từ xa để thực hiện hành vi tấn công khác.
 - Hệ sinh thái phát triển (VS Code, Cursor, Open VSX) bị lợi dụng để phát tán rộng rãi hơn.
 
Để giảm thiểu rủi ro, các chuyên gia an ninh mạng khuyến nghị:
- Trước khi cài extension, kiểm tra kỹ nhà xuất bản, mã nguồn (nếu public) và review người dùng; ưu tiên extension có nguồn rõ ràng.
 - Chỉ tải extension từ nhà phát hành uy tín, có hồ sơ rõ ràng và được cộng đồng xác thực.
 - Kiểm tra mã nguồn (nếu công khai) hoặc chạy thử trong môi trường cách ly trước khi cài trên máy chính.
 - Giới hạn quyền truy cập mạng cho IDE hoặc extension chưa được kiểm duyệt.
 - Không lưu khóa cá nhân, seed phrase, ví điện tử hoặc API key trong thư mục dự án.
 - Theo dõi hoạt động mạng bất thường và cập nhật phần mềm bảo mật thường xuyên.
 - Doanh nghiệp và tổ chức nên thiết lập danh sách extension được phép (whitelist) và quét định kỳ các tiện ích được cài đặt.
 
Sự việc này nhắc nhở một bài học, mã nguồn và tiện ích cho lập trình không nên được coi là “vô hại” mặc nhiên. Với tiền mã hóa và môi trường phát triển chứa thông tin nhạy cảm, một extension độc nhỏ cũng đủ gây tổn thất lớn. Cộng đồng cần kết hợp biện pháp kỹ thuật, chính sách quản trị và ý thức cảnh giác để ngăn chặn rủi ro này. Nếu bạn là dev Solidity hoặc quản trị hệ thống, giờ là lúc rà soát lại các extension đã cài và suy nghĩ kỹ trước khi bấm nút “Install”.
WhiteHat
