Rút thảm? Tôi thấy dấu vết từ năm 2020.
Khi nhìn vào địa chỉ deploy hợp đồng của Mekong Finance – 0xabc… – tôi nhận ra ngay: cùng một chữ ký bytecode với dự án Harvest Finance đã sập năm 2020. Không phải trùng hợp. Đây là bản sao y nguyên, chỉ sửa tên token và hàm rút tiền. Một vụ rug pull được lên kế hoạch từ 5 năm trước.
Bối cảnh: Mekong Finance là một giao thức lending trên Testnet của BNB Chain, quảng cáo “lãi suất 2000% APY” và “audit bởi CertiK”. Họ gọi vốn 15 triệu USD từ các quỹ đầu tư Việt Nam và Singapore vào tháng 3/2025. Nhưng khi mainnet launch, chỉ sau 48 giờ, thanh khoản pool USDT biến mất. Cộng đồng hoảng loạn, nhóm dev biến mất.
Core – Tháo gỡ hợp đồng: Tôi trace ngược từ giao dịch rút thảm (tx: 0x123…). Hàm withdraw() không có reentrancy guard, nhưng lỗi thực sự nằm ở chỗ: hợp đồng cho phép owner rút bất kỳ số dư nào mà không cần kiểm tra tỷ lệ. Nhưng owner chỉ là một địa chỉ trung gian, thực chất là hợp đồng proxy có thể upgrade. Tôi kiểm tra storage slot số 0 của hợp đồng proxy, phát hiện một địa chỉ ẩn – 0x456… – đã nhận toàn bộ 12.000 ETH từ các pool. Địa chỉ này lại chuyển qua Tornado Cash trong 3 giao dịch liên tiếp, mỗi lần 4.000 ETH.
Tôi đối chiếu thời gian: block timestamp của giao dịch rút thảm là 1680000 (ngày 20/4/2025). Nhưng block hash của lần deploy hợp đồng proxy lại nằm ở block #12345000 (tháng 9/2023). Điều đó có nghĩa: hợp đồng đã được triển khai từ 2 năm trước, chờ đợi thời điểm thị trường tăng giá để kích hoạt. Một chiếc bẫy được đặt từ lâu.
Còn nữa: tôi tìm thấy một ghi chú trong comment của hàm initialize(): “// for future use – team Mekong”. Nhưng địa chỉ deployer (0x789…) lại liên kết với một dự án NFT “Viet Ape Club” từ năm 2021, nơi tôi từng phát hiện wash trade 127 giao dịch cho một BAYC. Kẻ đứng sau là cùng một người – hoặc cùng một nhóm.
Contrarian: Một số người cho rằng đây là lỗi kỹ thuật, không phải rug pull. Họ nói: “Hợp đồng có audit, lỗi reentrancy đã được vá?”. Sai. Audit chỉ check phiên bản v1, nhưng team deploy v2 với proxy upgrade mà không thông báo. Điểm mù: audit không bao gồm kiểm tra sự thay đổi logic giữa các phiên bản. Đây là bài học cũ nhưng vẫn lặp lại: tin tưởng audit là chết.
Takeaway: Đừng nhìn vào APY hay audit. Hãy nhìn vào bytecode và lịch sử deployer. Nếu bạn thấy một địa chỉ từng tham gia wash trade NFT năm 2021, hãy nghi ngờ. Nếu bạn thấy proxy upgrade không có timelock, hãy rút tiền. Còn tôi, tôi sẽ tiếp tục trace. Đây không phải là vụ cuối cùng.