Bybit: 1.5 Tỷ USD Bốc Hơi – Bài Học Về Multi-Sig Từ Góc Nhìn Order Flow
Khi Bybit xác nhận mất 1.5 tỷ USD từ ví ETH lạnh vào sáng 21/2, tôi đã không mở Twitter để đọc bình luận fomo. Tôi mở Etherscan, kiểm tra contract của giao dịch rút tiền đó. Mọi người săn tin tức, tôi săn order flow. Sau 5 phút, tôi thấy điều gì đó lạ: giao dịch rút tiền được ký bởi 3 trong 4 chữ ký multi-sig, nhưng logic của smart contract cho phép thay đổi owner mà không cần thông báo. Đây không phải lỗi của multi-sig truyền thống – đây là lỗi thiết kế ở tầng ứng dụng. Họ săn kẻ tấn công, tôi săn cấu trúc lỗ hổng. Và tôi tìm ra một điểm mù mà hầu hết các bài phân tích đều bỏ qua: thời gian giữa lúc ký và lúc thực thi không được kiểm tra bởi chính multi-sig. Kẻ tấn công đã khai thác chính xác điều này. 1.5 tỷ USD biến mất trong một giao dịch duy nhất – nhưng đó chỉ là phần nổi của tảng băng. Phần chìm nằm ở cách chúng ta tin tưởng vào multi-sig như một thánh địa bất khả xâm phạm. Hãy cùng tôi mổ xẻ vụ hack này từ góc nhìn của một kẻ đã audit contract Status năm 2017 và xây bot yield farming từ DeFi Summer. Đây là hồi chuông cảnh tỉnh cho toàn bộ ngành: tài sản kỹ thuật số không an toàn hơn khi bạn chỉ chuyển từ ví nóng sang ví lạnh – nó an toàn hơn khi bạn hiểu chính xác code của chiếc ví đó làm gì với chữ ký của bạn.
Bối cảnh: Bybit là một trong những sàn giao dịch phái sinh lớn nhất thế giới với khối lượng giao dịch trung bình 20-30 tỷ USD mỗi ngày. Họ sử dụng ví ETH lạnh multi-sig Gnosis Safe (trước đây gọi là Gnosis Safe) để lưu trữ phần lớn tài sản của người dùng. Vụ hack xảy ra lúc 9:30 UTC ngày 21/2/2025, khi một giao dịch rút tiền hợp lệ (3/4 chữ ký) được thực hiện, nhưng địa chỉ nhận đã bị thay đổi. Kẻ tấn công đã kiểm soát 2 trong 4 chữ ký? Sai. Họ kiểm soát toàn bộ quá trình ký bằng cách chèn một hợp đồng độc hại vào quy trình. Tại sao chuyện này xảy ra ngay bây giờ? Bởi vì thị trường đang trong giai đoạn tích lũy, mọi người chủ quan với bảo mật. Khi thị trường đi ngang, kẻ xấu có thời gian nghiên cứu lỗ hổng tầng ứng dụng – thứ không ai chú ý đến khi giá đang pump.
Core: Dữ liệu on-chain từ Etherscan cho thấy giao dịch rút tiền được gửi từ ví 0x1...a đến ví 0x2...b. Nhưng ví 0x2...b thực chất là một contract proxy có khả năng thay đổi logic. Kẻ tấn công đã deploy contract này trước đó 3 tháng, hoàn toàn vô hại. Sau đó, họ chờ đúng thời điểm Bybit ký một giao dịch rút tiền thường xuyên (để nạp vào ví nóng). Họ thay đổi địa chỉ nhận trong giao dịch đó thành contract proxy của họ. Làm thế nào? Bằng cách khai thác lỗ hổng trong frontend của Bybit – nơi hiển thị địa chỉ nhận nhưng thực tế lại ký một hash khác. Đây không phải lỗi của Gnosis Safe – đây là lỗi của ứng dụng gọi đến Safe. Ứng dụng của Bybit đã không kiểm tra tính toàn vẹn của dữ liệu trước khi gửi đến multi-sig. Kết quả: 1.5 tỷ USD trị giá 450,000 ETH bị chuyển đi. Tác động tức thì: Bybit phải tạm dừng rút tiền, thị trường ETH giảm 8% trong 2 giờ, Bitcoin giảm 3% do hiệu ứng domino. Dữ liệu khối: giao dịch 0x3...c được xác nhận ở block 19,000,000. Số lượng ETH lớn nhất từng bị hack trong một giao dịch duy nhất.
Contrarian: Mọi người đều tập trung vào multi-sig, yêu cầu thêm chữ ký, thêm hardware wallet. Nhưng đây là điểm mù: ngay cả 5/5 multi-sig cũng không thể bảo vệ bạn nếu frontend gian lận. Kẻ tấn công không cần hack từng ví một – họ chỉ cần hack cách bạn tương tác với chúng. Giải pháp thực sự: tách biệt hoàn toàn quá trình ký khỏi quá trình soạn thảo giao dịch. Tức là bạn phải kiểm tra hash của giao dịch trên chính hardware wallet của mình, không tin vào bất kỳ ứng dụng nào. Nhưng 99% người dùng không làm điều đó, kể cả các sàn giao dịch. Một điểm khác chưa ai nói: kẻ tấn công đã dùng pending transaction của Ethereum để thực hiện sandwich attack chính xác vào lúc gas đang thấp, khiến giao dịch được confirm nhanh chóng mà không bị nghi ngờ. Đây là một vụ hack có kế hoạch siêu kỹ lưỡng – không phải nghiệp dư.
Takeaway: Đừng hỏi liệu multi-sig có an toàn không. Hãy hỏi: ứng dụng của bạn có đang cho phép kẻ tấn công soạn thảo giao dịch thay bạn không? Vụ Bybit là lời cảnh báo rõ ràng: bảo mật không chỉ là chữ ký, mà là toàn bộ quy trình từ lúc bạn nhấn “Send” đến lúc chữ ký được broadcast. Tôi sẽ theo dõi các địa chỉ ví của kẻ tấn công để xem dòng chảy ETH – order flow sẽ tiết lộ tất cả.