Tôi tìm thấy một dòng mã ẩn trong hợp đồng thông minh của Kiwi Finance — một dự án DeFi Việt Nam đang gây sốt với APY 5000%. Dòng mã đó cho phép rút toàn bộ thanh khoản của pool chỉ bằng một cú nhấp chuột, không cần vote của cộng đồng hay bất kỳ cơ chế kiểm soát nào khác. Điều độc đáo không phải là lỗi này; mà là thực tế rằng không ai trong số 15.000 người dùng hiện tại của dự án để ý đến nó. Họ chỉ thấy số APY màu xanh lá cây đang nhấp nháy trên dashboard.
Kiwi Finance ra mắt vào tháng 1 năm 2025, tự xưng là 'một giao thức yield aggregator thế hệ mới' với sự hỗ trợ từ một quỹ đầu tư mạo hiểm không tên tuổi. Trong vòng 4 tháng, TVL của nó đã tăng vọt từ 2 triệu đô la lên hơn 50 triệu đô la, chủ yếu nhờ vào chiến dịch airdrop và một câu chuyện marketing hấp dẫn về việc tối ưu hóa lợi nhuận trên nhiều Layer 2. Nhóm phát triển chủ yếu là người Việt Nam, hoạt động dưới danh nghĩa ẩn danh, một lá cờ đỏ mà tôi sẽ nói đến sau. Giao thức này hứa hẹn mang lại 'APY bền vững' thông qua một chiến lược phức tạp bao gồm farming trên nhiều giao thức khác nhau và tái đầu tư tự động. Nhưng như chúng ta đã thấy trong DeFi Summer 2020, lời hứa về lợi nhuận cao thường là bề mặt của một tảng băng chìm.
Hãy nói về mã nguồn thực tế. Tôi đã dành 6 giờ để audit phần cứng lõi của Kiwi Finance: hợp đồng MasterChef và Vault. Bắt đầu với cái gọi là cơ chế 'Emergency Withdraw'. Trong biến thể MasterChef của Kiwi, hàm này không chỉ cho phép rút tài sản gốc của người dùng, mà còn có một tham số 'amount' không bị kiểm soát. Tôi ghi lại cách này: khi ai đó gọi emergencyWithdraw(uint256 amount), hợp đồng chuyển amount token từ pool về ví người gọi, không hề kiểm tra xem số dư thực tế của người gọi trong pool là bao nhiêu. Lỗ hổng này cho phép bất kỳ ai, kể cả admin, rút toàn bộ thanh khoản của pool nếu họ biết địa chỉ của pool và gọi hàm này với một giá trị amount cực lớn.. Không có cơ chế timelock, không có multisig requirement. Chỉ là một dòng mã duy nhất bị thiếu: require(user.amount >= amount, 'Insufficient balance').
Tiếp theo, hãy xem xét tokenomics. Kiwi Finance phát hành token KIWI với tổng cung 1 tỷ. Hợp đồng token cho thấy 25% tổng cung được mint ngay lập tức cho một ví duy nhất có nhãn 'Team'. Không có vesting schedule, không có cliff. Từ ví này, tôi đã theo dõi dòng chảy token thông qua Etherscan. Ngay sau khi triển khai, 100 triệu KIWI đã được chuyển đến một sàn DEX phi tập trung — PancakeSwap — và bán thành USDT. Sau đó, USDT được gửi đến một sàn CEX có trụ sở tại Seychelles. Hành vi này hoàn toàn phù hợp với mô hình 'rug pull sớm': đội ngũ dự án mint token, bán ngay lập tức để thu về thanh khoản, để lại cộng đồng với những token không có giá trị thực.. Dựa trên dữ liệu on-chain, ví team đã bán khoảng 80 triệu KIWI trong hai tháng đầu tiên, thu về gần 2 triệu đô la. Tuy nhiên, TVL của dự án vẫn tăng, được thúc đẩy bởi các pool với APY 5000% — một tỷ lệ mà tôi tính toán là không thể duy trì về mặt toán học.
Sau đó, tôi xem xét cơ chế yield farming. Kiwi Finance hứa hẹn một chiến lược 'yield boosting' thông qua việc sử dụng đòn bẩy. Thực tế, hợp đồng cho thấy nó chỉ đơn giản là gửi tài sản của người dùng vào một pool thanh khoản của một dự án khác — ví dụ: USDT-WBNB trên PancakeSwap — và sau đó mint LP token. Không có chiến lược phức tạp nào cả. APY 5000% được tạo ra hoàn toàn bằng cách phát hành token KIWI mới, không phải từ lợi nhuận thực tế từ các hoạt động giao dịch.. Đây là sự tái hiện hoàn hảo của mô hình liquidity mining cổ điển: bạn đang trả cho người dùng bằng token của chính mình, và khi giá token sụp đổ — như nó sẽ xảy ra khi supply inflation vượt quá demand — người dùng sẽ rời đi, và TVL sẽ biến mất.
Quay lại với câu chuyện của tôi từ năm 2020. Khi tôi phân tích YAM Finance, tôi đã thấy một lỗi tương tự trong logic rebase. Lỗi đó đã dẫn đến sự sụp đổ của dự án trong vòng 48 giờ. Kinh nghiệm đó dạy tôi một bài học: trong DeFi, tất cả đều là trò chơi tâm lý — bạn cần bán cho người dùng một giấc mơ về lợi nhuận, trong khi thực tế chỉ là một bộ mã nguồn lỗi.. Kiwi Finance cũng vậy. Sự khác biệt duy nhất là tốc độ: trong khi YAM sụp đổ ngay lập tức, Kiwi Finance đã xây dựng một cộng đồng mạnh mẽ trên Telegram và TikTok, khiến cho việc cảnh báo bị bỏ qua bởi chính những người dùng đang kiếm lợi nhuận.
Bây giờ, hãy nhìn từ góc nhìn của phe bò. Có lẽ đội ngũ Kiwi Finance thực sự đang cố gắng xây dựng một sản phẩm. Họ có thể đã nhận ra lỗi và đang vá nó. Họ có thể đang chuẩn bị một phiên bản mới với cơ chế bảo mật tốt hơn. Cộng đồng của họ rất trung thành, và việc fud từ một on-chain detective vô danh như tôi có thể bị gạt bỏ như 'âm mưu của kẻ bán khống'. Tuy nhiên, tôi sẽ đưa ra một thử nghiệm: nếu Kiwi Finance thực sự muốn xây dựng lòng tin, đội ngũ nên ngay lập tức công bố một audit từ một công ty có uy tín (như Trail of Bits hoặc OpenZeppelin), và công khai địa chỉ ví của họ. Cho đến khi điều đó xảy ra, những mã nguồn lỗi và dòng chảy token đáng ngờ vẫn là bằng chứng duy nhất. Điểm mù ở đây là: thị trường tăng giá hiện tại khiến mọi người dễ dàng bỏ qua các lá cờ đỏ vì họ đang kiếm tiền. Nhưng khi thị trường đảo chiều, những lỗ hổng này sẽ trở thành bẫy chết người.
Bạn có thực sự biết bạn đang gửi tiền của mình vào đâu không? Khi bạn nhấn nút 'Cung cấp thanh khoản' trên Kiwi Finance, bạn không chỉ đang giao dịch, bạn đang trao niềm tin của mình cho một vài dòng mã. Cho đến khi đội ngũ Kiwi Finance công bố một audit công khai và minh bạch về quản trị của mình, sự hoài nghi là lựa chọn duy nhất có trách nhiệm. Hãy nhớ: trong DeFi, không có gì là miễn phí.