Các nhà nghiên cứu an ninh mạng vừa phân tích sâu JSCeal, một loại mã độc JavaScript được biên dịch thành mã bytecode V8, sở hữu nhiều chức năng nguy hiểm như đánh cắp thông tin đăng nhập, theo dõi người dùng, chụp màn hình và can thiệp lưu lượng truy cập.
JSCeal không chỉ tìm cách lấy mật khẩu. Mã độc này còn có khả năng đánh cắp cookie để khôi phục phiên đăng nhập, từ đó thực hiện tấn công chiếm quyền phiên và truy cập trái phép vào tài khoản Google của nạn nhân.
JSCeal không chỉ tìm cách lấy mật khẩu. Mã độc này còn có khả năng đánh cắp cookie để khôi phục phiên đăng nhập, từ đó thực hiện tấn công chiếm quyền phiên và truy cập trái phép vào tài khoản Google của nạn nhân.
Phát tán qua quảng cáo giả mạo
JSCeal lần đầu được Check Point Research ghi nhận vào tháng 7/2025. Mã độc được phát tán thông qua các chiến dịch quảng cáo độc hại trên Facebook và Google, dẫn người dùng tới những website giả mạo các nền tảng giao dịch tiền số.
Các trang web này thường đóng giả những thương hiệu quen thuộc và yêu cầu người dùng tải xuống phần mềm, chẳng hạn trình cài đặt TradingView giả mạo. Khi người dùng chạy trình cài đặt, JSCeal sẽ được triển khai trên máy tính.
Chiến dịch sử dụng các tệp ZIP được phân phối thông qua PowerShell, trong đó một gói chứa môi trường Node.js và gói còn lại chứa payload cùng các thành phần hỗ trợ. Hoạt động này có điểm tương đồng với một số chiến dịch được theo dõi dưới tên WEEVILPROXY và MeadowLocust.
Các trang web này thường đóng giả những thương hiệu quen thuộc và yêu cầu người dùng tải xuống phần mềm, chẳng hạn trình cài đặt TradingView giả mạo. Khi người dùng chạy trình cài đặt, JSCeal sẽ được triển khai trên máy tính.
Chiến dịch sử dụng các tệp ZIP được phân phối thông qua PowerShell, trong đó một gói chứa môi trường Node.js và gói còn lại chứa payload cùng các thành phần hỗ trợ. Hoạt động này có điểm tương đồng với một số chiến dịch được theo dõi dưới tên WEEVILPROXY và MeadowLocust.
Vì sao JSCeal khó phân tích?
JSCeal được bảo vệ bằng công cụ javascript-obfuscator, sử dụng nhiều lớp làm rối mã nhằm gây khó khăn cho các nhà nghiên cứu khi phân tích.
Một số kỹ thuật nổi bật gồm:
Một số kỹ thuật nổi bật gồm:
- Đổi tên hàm và biến thành những chuỗi ngắn hoặc vô nghĩa.
- Chia nhỏ các chuỗi quan trọng, mã hóa và bảo vệ bằng RC4 trước khi ghép lại khi thực thi.
- Sử dụng control-flow flattening, biến luồng thực thi thông thường thành cấu trúc phẳng với vòng lặp và biến trạng thái.
- Chuyển lời gọi hàm qua các hàm trung gian và "bọc" những phép toán đơn giản như cộng, trừ, so sánh hoặc gọi hàm bằng các hàm riêng.
Đáng chú ý, mã độc còn được biên dịch thành V8 JavaScript bytecode, khiến quá trình phân tích phức tạp hơn so với JavaScript thông thường. Check Point Research cho biết đã phát triển một quy trình giải mã tĩnh để phân tích loại bytecode này, qua đó làm rõ hơn các chức năng bên trong JSCeal.
Nhắm tới nhiều trình duyệt phổ biến
JSCeal có mô-đun chuyên đánh cắp dữ liệu trình duyệt và nhắm tới nhiều trình duyệt dựa trên Chromium, trong đó có:
- Google Chrome
- Microsoft Edge
- Brave
- Opera và Opera GX
- Avast Secure Browser
- Vivaldi
- Cốc Cốc
Mã độc tìm tới thư mục dữ liệu người dùng của từng trình duyệt, liệt kê các hồ sơ (profile) và tìm cách lấy cookie, mật khẩu đã lưu, OAuth token cùng những dữ liệu khác.
Điều nguy hiểm nằm ở việc cookie không đơn thuần là dữ liệu duyệt web. Trong một số trường hợp, cookie có thể được sử dụng để khôi phục phiên đăng nhập đang tồn tại.
Theo phân tích của Check Point, JSCeal được trang bị khả năng sử dụng cookie đánh cắp được để tái tạo phiên trình duyệt và thực hiện session replay, qua đó tìm cách vượt qua bước xác thực và truy cập trái phép vào tài khoản Google của nạn nhân. Nói đơn giản, kẻ tấn công có thể không cần biết trực tiếp mật khẩu nếu đã lấy được thông tin phiên hợp lệ.
Không chỉ đánh cắp dữ liệu
JSCeal còn tích hợp các chức năng giám sát người dùng như ghi lại thao tác bàn phím và chụp ảnh màn hình. Mã độc cũng có khả năng thiết lập một proxy cục bộ, tạo và cài đặt chứng chỉ, sau đó can thiệp vào các yêu cầu và phản hồi HTTP/HTTPS của một số dịch vụ.
Phần mã được phân tích cho thấy JSCeal có các cấu hình riêng dành cho Binance, Bybit và Ledger, bên cạnh những chức năng tổng quát như thay thế nội dung HTML, chặn máy chủ hoặc xóa một số cookie.
Một số thành phần còn tập trung vào các nền tảng tiền số, trong đó có chức năng thu thập thông tin tài khoản và ghi nhận số dư tiền điện tử.
Phần mã được phân tích cho thấy JSCeal có các cấu hình riêng dành cho Binance, Bybit và Ledger, bên cạnh những chức năng tổng quát như thay thế nội dung HTML, chặn máy chủ hoặc xóa một số cookie.
Một số thành phần còn tập trung vào các nền tảng tiền số, trong đó có chức năng thu thập thông tin tài khoản và ghi nhận số dư tiền điện tử.
JSCeal vẫn đang được phát triển
Sự kết hợp giữa bytecode V8 được biên dịch theo phiên bản cụ thể và nhiều lớp làm rối JavaScript khiến JSCeal nằm ngoài quy trình phân tích thông thường của nhiều nhà nghiên cứu.
Tuy nhiên, những kỹ thuật này không khiến mã độc không thể phân tích. Các nhà nghiên cứu đã xây dựng được phương pháp giải mã tĩnh để khôi phục luồng thực thi và xác định các chức năng bên trong.
Việc JSCeal tiếp tục xuất hiện trong các chiến dịch gần đây cho thấy nhóm đứng sau đang tích cực phát triển mã độc, đồng thời mở rộng khả năng thu thập dữ liệu và tấn công các nền tảng, trình duyệt phổ biến.
Tuy nhiên, những kỹ thuật này không khiến mã độc không thể phân tích. Các nhà nghiên cứu đã xây dựng được phương pháp giải mã tĩnh để khôi phục luồng thực thi và xác định các chức năng bên trong.
Việc JSCeal tiếp tục xuất hiện trong các chiến dịch gần đây cho thấy nhóm đứng sau đang tích cực phát triển mã độc, đồng thời mở rộng khả năng thu thập dữ liệu và tấn công các nền tảng, trình duyệt phổ biến.
Người dùng cần làm gì?
Người dùng nên đặc biệt thận trọng với các quảng cáo dẫn tới website yêu cầu tải phần mềm giao dịch, ví tiền số hoặc ứng dụng phổ biến.
- Không tải phần mềm từ quảng cáo hoặc website không chính thức.
- Kiểm tra kỹ tên miền trước khi đăng nhập hoặc tải ứng dụng.
- Không chạy các trình cài đặt không rõ nguồn gốc được tải về từ Internet.
- Hạn chế lưu mật khẩu và thông tin nhạy cảm trực tiếp trên trình duyệt nếu không cần thiết.
- Khi nghi ngờ máy tính bị nhiễm mã độc, nên đăng xuất các tài khoản quan trọng, thay đổi mật khẩu từ một thiết bị an toàn và kiểm tra các phiên đăng nhập đang hoạt động.
Được phối hợp thực hiện bởi các chuyên gia của Bkav,
cộng đồng An ninh mạng Việt Nam WhiteHat
và cộng đồng Khoa học công nghệ VnReview
Sửa lần cuối:
