Bạn có nghĩ rằng đang apply một công việc crypto mơ ước thực ra lại là cái bẫy? Điều mà ai cũng nghĩ là MFA (xác thực đa yếu tố) sẽ bảo vệ bạn, nhưng thực ra session token mới là kẻ phản bội. Hãy cùng tôi phân tích vụ lừa đảo tuyển dụng tại Singapore gây thiệt hại 11.8 triệu USD – một sự kiện làm rung chuyển niềm tin vào quy trình tuyển dụng Web3.
Context Sự kiện được công bố bởi cơ quan chức năng Singapore, xác nhận các cuộc tấn công nhắm vào developers thông qua các bài kiểm tra coding giả mạo. Kẻ tấn công đã gửi mã độc dưới dạng bài test, sau đó đánh cắp session token và vượt qua MFA, cuối cùng chiếm quyền truy cập vào kho lưu trữ mã nguồn (code repository). Chỉ trong một chuỗi tấn công, chúng đã rút được 11.8 triệu USD. Câu chuyện này không phải là về một lỗ hổng smart contract, mà là về điểm yếu trong quy trình con người và công cụ cộng tác.
Core Công nghệ tấn công không hề mới: social engineering kết hợp malware. Nhưng điều làm nó đáng chú ý là cách nó khai thác các giả định bảo mật phổ biến trong Web3. Cụ thể: - Session token hijacking: Khi một developer mở link test giả, mã độc được cài vào máy, đánh cắp token từ trình duyệt hoặc bộ nhớ. Token này có giá trị như một phiên đăng nhập hợp lệ, cho phép kẻ tấn công truy cập GitHub, GitLab, hoặc CI/CD tools mà không cần mật khẩu hay MFA. - Bypass MFA: Dù có bật MFA, token vẫn được xác thực mà không yêu cầu lại yếu tố thứ hai. Đây là điểm mù mà nhiều team bỏ qua. - Mục tiêu cuối cùng: code repository – nơi chứa deployment keys, private keys, hoặc config. Chỉ cần lấy được những thứ này, kẻ tấn công có thể rút toàn bộ pool thanh khoản, mint token, hoặc backdoor hợp đồng.
Điều phản trực giác: MFA không phải là giải pháp toàn diện. Session token là kẻ phản bội, và hầu hết các công ty Web3 đều không monitor hành vi bất thường của token (ví dụ: token được sử dụng từ IP khác). Họ chỉ tập trung vào audit smart contract, mà quên rằng cửa sau lớn nhất lại là máy tính của developer.
Contrarian Nhiều người sẽ nghĩ: “Chỉ cần cẩn thận khi nhận link test, không chạy file lạ là được.” Nhưng thực tế, kẻ tấn công rất tinh vi: chúng gửi link đến một môi trường coding online giả mạo, yêu cầu bạn clone repo và chạy script. Ngay cả developer có kinh nghiệm cũng dễ bị lừa vì bài test có vẻ hợp lý. Điểm mù ở đây là: quy trình tuyển dụng từ xa thiếu chuẩn bảo mật. Các công ty Web3 thường vội vã tuyển người, giao việc coding test qua các nền tảng không được kiểm soát. Họ không yêu cầu ứng viên chạy test trong môi trường sandbox, hoặc không có chính sách “cách ly” thiết bị.
Takeaway Bài học rõ ràng: Hãy coi mọi bài test coding như một mối đe dọa tiềm ẩn. Các công ty Web3 cần đầu tư vào: - Môi trường coding test tách biệt: dùng container hoặc VM có thời gian sống ngắn, không kết nối đến mạng nội bộ. - FIDO2/Passkey thay vì OTP-based MFA: loại này không thể bị token hijacking. - Giám sát session token: phát hiện đăng nhập bất thường từ IP lạ, hoặc token được sử dụng nhiều nơi.
Câu hỏi để lại: Liệu ngành Web3 có đủ nhanh để học từ vụ lừa đảo 11.8 triệu USD này, hay sẽ tiếp tục đổ lỗi cho “hacker” trong khi chính quy trình tuyển dụng của họ là lỗ hổng?