Các nhà nghiên cứu an ninh mạng đã cảnh báo về một tiện ích mở rộng Microsoft Visual Studio Code (VS Code) độc hại mang tên Solidity Pro ("solidity-pro"), được phát hiện đang phân tán công cụ đánh cắp ví trình duyệt và thông tin đăng nhập.
Tên của các tiện ích mở rộng này bao gồm:
- helper-beeps.solidity-pro
- web3devtoolsx.solidity-pro
Mặc dù hiện tại không có tiện ích nào còn khả dụng trên Open VSX, nhưng kho lưu trữ GitHub của "web3devtoolsx/solidity-pro" vẫn có thể truy cập được tại thời điểm viết bài.
Sự tiến hóa của mã độc Solidity Pro
Theo Yeeth Security, các phiên bản đầu tiên của tiện ích mở rộng này – từ 1.0.0 đến v2.4.x – đã được phát hiện gửi tín hiệu beacon đến các điểm cuối Cloudflare Workers để tải về một payload Python đã mã hóa và thực thi nó.
Ngược lại, các phiên bản sau này bắt đầu từ v3.0.0 đã chuyển sang một trình đánh cắp thông tin (information stealer) toàn diện. Nó có khả năng thu thập hồ sơ trình duyệt, ví crypto, token kiểm soát nguồn (source-control tokens), API keys, SSH keys và token Telegram bot. Dữ liệu bị đánh cắp sau đó được chuyển ra ngoài (exfiltrated) thông qua việc tải lên một bot Telegram.
Danh sách dữ liệu bị trình đánh cắp này thu thập bao gồm:
- Token GitHub ghp_ và github_pat_
- Token GitLab glpat-
- AWS keys và session tokens
- Token Cloudflare cfat_
- OpenAI keys (sk-, sk-proj-, và sk-ant-)
- Telegram bot tokens
- Mnemonic và seed phrases
- Ví MetaMask, Phantom, Rabby, Coinbase, Trust, Keplr
- Bitcoin WIF / xprv
- SSH private keys (PRIVATE KEY)
- Thông tin đăng nhập URL và token 1Password MFA
Kỹ thuật che giấu và lẩn tránh tinh vi
Dòng mã độc này cũng được trang bị khả năng vượt qua quá trình kiểm duyệt của marketplace, quét tĩnh (static scanning) và sandbox thông thường bằng cách sử dụng kỹ thuật làm rối mã nguồn (obfuscation) phức tạp, tung ra các phiên bản sạch trung gian để xây dựng lòng tin, và kích hoạt trì hoãn ngẫu nhiên khiến mã độc chỉ chạy sau vài giờ hoặc vài ngày kể từ khi cài đặt.
"Vào thời điểm nhánh độc hại thực thi, người dùng đã tin rằng tiện ích này hữu ích, và các trình quét tự động (vốn chỉ quan sát gói tin trong vài phút) đã bỏ qua," Yeeth Security cho biết. "Việc làm rối mã không chỉ để trang trí; nó chia nhỏ các chuỗi ký tự trong các bảng IIFE, lắp ráp lại chúng khi thực thi và thay đổi tên phương thức giữa các bản phát hành để các hệ thống phát hiện dựa trên chữ ký (signature-based detection) phải đối mặt với một mục tiêu luôn thay đổi."
Công ty an ninh mạng này cho biết hoạt động này có cùng phương thức hoạt động cấp cao với WhiteCobra, một cụm đe dọa khác đã bị phát hiện vào tháng 9 năm 2025 khi phân tán Lumma Stealer qua các tiện ích VS Code độc hại.
Đây không phải là lần đầu tiên các tác nhân đe dọa phát tán các tiện ích Solidity giả mạo trên các hệ sinh thái mã nguồn mở. Vào tháng 6 năm 2026, Yeeth Security đã cảnh báo về một tiện ích khác có tên "ethdevtools.solidity-language-support". Nó mạo danh công cụ hỗ trợ ngôn ngữ Solidity cho các nhà phát triển Ethereum nhưng thực chất chứa một trình đánh cắp clipboard kích hoạt trễ để lấy các cụm từ seed BIP-39, Ethereum private keys và địa chỉ ví.
"Khi phát hiện một địa chỉ crypto trong clipboard, nó sẽ thay thế giá trị được dán bằng một địa chỉ do kẻ tấn công kiểm soát," Yeeth Security bổ sung. "Việc hoán đổi xảy ra thông qua vscode.env.clipboard.writeText, một lời gọi API chính thống không yêu cầu child_process, không cần truy cập mạng và không ghi tệp. Các trình quét tĩnh chỉ tìm kiếm các lệnh import Node nguy hiểm sẽ không phát hiện ra nó."
Các mối đe dọa khác trong hệ sinh thái VS Code và npm
Phát hiện này cũng trùng hợp với việc tìm thấy một số tiện ích VS Code và gói npm giả mạo khác:
- Một gói npm mang tên "ascii-fetcher", nhúng mã độc trong một phần phụ thuộc tên là "@jaymara/jsononifier" để giải mã một lệnh nhúng (trong trường hợp quan sát được là "calc.exe") và thực thi nó qua "child_process.exec" với "windowsHide".
- Một tập hợp 10 tiện ích VS Code phân tán nhiều loại dropper dựa trên Windows như BAT, JavaScript và HTA, trong đó có hai tiện ích đi kèm phần phụ thuộc npm sử dụng hook postinstall để tải và thực thi payload từ xa.
- Tiện ích VS Code mang tên "DigitalBarberTrim.html-entity-codec" có khả năng thả một tệp VSIX từ xa trong các phiên bản cụ thể sau khi liệt kê các bản fork VS Code như Cursor, Windsurf, Codium và Positron, trong khi chỉ cung cấp một "stub gần như trống rỗng" trong các phiên bản khác để tránh bị phát hiện.
Người dùng đã cài đặt các tiện ích mở rộng này được khuyến nghị gỡ bỏ chúng ngay lập tức, kiểm tra lại biểu đồ phụ thuộc (dependency graphs), chặn các tên miền C2 đã biết, và cảnh báo khi có sự xuất hiện của các lệnh cscript, mshta, cmd, curl và powershell.