Tấn công mạng: Bẫy mã độc nguy hiểm trong phỏng vấn tuyển dụng

Tấn công mạng: Bẫy mã độc nguy hiểm trong phỏng vấn tuyển dụng
CLOUD SERVER
Vững hạ tầng • Chắc thành công
☁️
⚡ Hiệu năng cao
🛡️ Bảo mật
📈 Mở rộng dễ dàng
🕒 Hỗ trợ 24/7
TÌM HIỂU NGAY

Các tấn công mạng mới nhắm vào các nhà phát triển phần mềm bằng cách biến các buổi phỏng vấn xin việc thông thường thành các bẫy mã độc. Chiến dịch gần đây đã phát tán hai công cụ truy cập từ xa đa nền tảng là NodeRabbit và PollCat thông qua các bài kiểm tra viết mã trông giống như các bài kiểm tra thực tế.

Hoạt động này đã ảnh hưởng đến các nạn nhân trong ngành hàng không, vũ trụ và công nghệ tài chính tại Ai Cập, Ethiopia và Afghanistan. Nó cũng cho thấy một dự án tải xuống dường như bình thường có thể mang lại cho kẻ tấn công điểm truy cập vào máy trạm của nhà phát triển, nơi mã nguồn, thông tin xác thực đám mây và quyền truy cập doanh nghiệp có thể nằm trong tầm tay.

Chiến dịch lừa đảo tuyển dụng

Các nhà nghiên cứu tại Securelist đã xác định được các họ mã độc NodeRabbit và PollCat chưa từng được ghi nhận trước đây trong quá trình theo dõi nhóm Mirage Kitten. Securelist báo cáo rằng đây là lần đầu tiên nhóm này sử dụng công khai các mã độc cấy ghép Node.js và JavaScript.

Việc này rất quan trọng vì mã độc có thể chạy trên Windows, Linux và macOS, phù hợp với môi trường hỗn hợp phổ biến trong các nhóm kỹ thuật. Nó cũng mở rộng một mô hình kỹ thuật xã hội đã được thiết lập trong các chiến dịch giả mạo nhà tuyển dụng trước đây, nhưng kết hợp nó với khả năng truy cập bền bỉ hơn và các thủ thuật tập trung vào nhà phát triển.

Quy trình lây nhiễm ban đầu

Quá trình lây nhiễm bắt đầu với một hồ sơ nhà tuyển dụng trên LinkedIn hoặc các dịch vụ tìm kiếm việc làm khác. Mục tiêu được đề nghị một vị trí kỹ thuật và nhận một liên kết đến bài đánh giá mã hóa được lưu trữ trong một bộ lưu trữ Amazon S3. Sau đó, họ bị gây áp lực để tải xuống và chạy dự án một cách nhanh chóng.

Một trong những thủ đoạn lừa đảo, có tên là TaskFlow, tự nhận là một bài tập sửa lỗi front-end. Tệp README của nó đặt ra thời hạn ba giờ, yêu cầu ứng viên không sử dụng trợ lý AI và khẳng định rằng tệp server.js đã đúng. Những hướng dẫn này nhằm đánh lạc sự chú ý khỏi phần mã đã bị sửa đổi.

Phân tích mã độc

Dòng mã đầu tiên của server.js nhập `colorized_terminal` phiên bản 2.1.0, một gói độc hại được đóng gói bên trong `node_modules` thay vì được xuất bản trên npm. Việc nhập gói này đã âm thầm khởi chạy NodeRabbit ở chế độ nền từ một đường dẫn bộ nhớ đệm ẩn, tương tự như các rủi ro trong vụ tấn công chuỗi cung ứng `binding.gyp`, nơi các hành động thông thường của nhà phát triển kích hoạt việc thực thi mã.

Các kho lưu trữ khác sử dụng gói độc hại thứ hai là `pretty-log` để khởi chạy các biến thể NodeRabbit nâng cao hơn. Các nhà nghiên cứu đã thu hồi các mẫu liên quan từ các hệ thống ở Afghanistan, Ai Cập và Ethiopia, liên kết chiến dịch này với một nỗ lực rộng lớn hơn nhằm vào các tổ chức ở Trung Đông và Châu Phi.

Các công cụ truy cập từ xa NodeRabbit và PollCat

NodeRabbit thu thập thông tin máy chủ, giao tiếp với máy chủ từ xa và có thể chạy lệnh, liệt kê tiến trình, duyệt tệp và truyền dữ liệu. Phiên bản mới hơn của nó còn tìm kiếm các vị trí dự án của nhà phát triển, có thể thêm một tiện ích mở rộng trình soạn thảo giả và chèn các trình khởi chạy vào các hook Git, do đó các công việc phát triển thông thường có thể khởi động lại mã độc.

PollCat được phân phối thông qua một bài đánh giá riêng dựa trên React có tên là `RankChallenge-react`. Dự án yêu cầu ứng viên chạy một lệnh cài đặt và sau đó hiển thị một mã dùng một lần hết hạn do nhà tuyển dụng cung cấp. Thiết kế này tạo ra cảm giác khẩn cấp trong khi thành phần ẩn của nó bắt đầu liên lạc với cơ sở hạ tầng của kẻ tấn công.

Khi hoạt động, PollCat có thể thực thi các lệnh shell, di chuyển hoặc xóa tệp, thu thập thông tin hệ thống và di chuyển tệp giữa nạn nhân và kẻ điều hành của nó. Nó thiết lập sự bền bỉ thông qua các tác vụ được lên lịch trên Windows, cron jobs trên Linux hoặc một LaunchAgent trên macOS. Kết quả tương tự như trường hợp gói `node-ipc` bị xâm phạm, nơi một mô-đun JavaScript được tải đã làm lộ các bí mật của nhà phát triển và cho phép điều khiển từ xa.

Khuyến nghị bảo mật

Các nhà phát triển nên coi các kho lưu trữ đánh giá không mong muốn là phần mềm không đáng tin cậy, ngay cả khi người gửi có hồ sơ chuyên nghiệp thuyết phục. Hãy xác nhận cơ hội thông qua kênh chính thức của nhà tuyển dụng, kiểm tra các phụ thuộc và tệp khởi động trước khi chạy một dự án, và sử dụng một môi trường cô lập không chứa thông tin xác thực sản xuất hoặc kho lưu trữ riêng tư.

Các nhóm cũng nên xem xét các lượt tải xuống bài kiểm tra viết mã gần đây, kiểm tra các tác vụ được lên lịch bất thường, tiện ích mở rộng trình soạn thảo và các hook Git đã thay đổi, đồng thời xoay vòng thông tin xác thực được lưu trữ trên máy đã chạy một thử thách đáng ngờ. Sự cẩn trọng này đặc biệt quan trọng sau chiến dịch gói `undicy-http` độc hại, chiến dịch này cũng cho thấy cách một gói JavaScript lừa đảo có thể tồn tại và làm lộ dữ liệu nhạy cảm.

Các nhà tuyển dụng nên nhận ra rằng công tác tuyển dụng hiện nằm trong bề mặt tấn công. Các nhóm bảo mật có thể cung cấp cho ứng viên môi trường kiểm tra an toàn và các phương pháp đơn giản để xác minh xem nhà tuyển dụng, nhiệm vụ và liên kết tải xuống có hợp pháp hay không. Để biết thêm thông tin về các lỗ hổng bảo mật, hãy tham khảo các cảnh báo từ các nguồn uy tín như CISA.