Cuộc tấn công vào Layer-2 ZK-Rollup: Backdoor không bao giờ là lỗi, là chủ ý.
Hook: 100 triệu USD biến mất trong 36 giờ
Đêm Chủ Nhật, khi thị trường đang say sưa với đợt pump mới nhất của ETH, một tin nhắn trong group Telegram kín của các nhà phát triển ZK-Rollup đã làm rung chuyển cả cộng đồng: "Sequencer của dự án XentraL2 đã bị khai thác. ~100 triệu USD token USDC và WETH đã được rút qua một hàm không có trong tài liệu." Tôi nhận được tin nhắn đó lúc 2 giờ sáng giờ Buenos Aires. Kinh nghiệm 27 năm trong ngành cho tôi biết: đây không phải là một vụ hack thông thường. Đây là một cuộc tấn công có tổ chức, được chuẩn bị kỹ lưỡng, và có dấu hiệu của backdoor có chủ ý trong hợp đồng thông minh.

20 ETH mất vì một chiếc hợp đồng cười. Câu nói đó văng vẳng trong đầu tôi khi nhìn vào log giao dịch. Vụ việc lần này không chỉ là một lỗi code đơn thuần. Nó phơi bày một trong những điểm yếu lớn nhất của ngành: sự phụ thuộc mù quáng vào audit bên thứ ba và sự thiếu minh bạch trong triển khai layer-2. Hãy cùng tôi mổ xẻ vụ việc này.
Context: Tại sao XentraL2 lại là mục tiêu lý tưởng?
XentraL2 là một ZK-Rollup được xây dựng trên Ethereum, hứa hẹn tốc độ giao dịch 100.000 TPS với phí cực thấp nhờ công nghệ zk-SNARKs. Dự án đã huy động 45 triệu USD từ các quỹ đầu tư mạo hiểm hàng đầu như Paradigm và a16z. Token $XEN đã tăng 300% trong ba tháng qua. Cộng đồng tin tưởng vào đội ngũ phát triển với các thành viên từ MIT và Stanford.
Tuy nhiên, khi làm cố vấn rủi ro cho một quỹ đầu tư tại Buenos Aires, tôi đã từ chối tham gia vào dự án này ngay từ vòng seed. Lý do? Hợp đồng chính của họ có một hàm emergencyPause() được gắn với một owner duy nhất. Điều đó vi phạm nguyên tắc phi tập trung cơ bản. Nhưng thị trường tăng đã làm mờ mắt mọi người. Khi giá token tăng, mọi lời cảnh báo đều bị coi là FUD. Và bây giờ, chúng ta đang nhìn vào hậu quả.
Core: Tháo gỡ vụ hack có hệ thống
Tôi đã dành 48 giờ để phân tích on-chain data, đọc mã nguồn fork trên GitHub, và đối chiếu với các báo cáo audit từ Certik và SlowMist. Dưới đây là những gì tôi tìm thấy.
1. Kỹ thuật: Hàm backdoor ẩn trong Proxy Contract
Hợp đồng chính của XentraL2 sử dụng mô hình proxy (UUPS) để nâng cấp. Tuy nhiên, trong implementation contract, tồn tại một hàm không được document:
