Giao dịch là sự thật duy nhất. Nhưng nếu sự thật đó bị bóp méo trước khi chạm tới on-chain thì sao? Ngày 27/03/2026, Garden Finance – một giao thức intent-based DEX mới ra mắt – đã phải tạm dừng ứng dụng sau khi mất 450.000 USD do một cuộc tấn công không chạm vào smart contract. Kẻ tấn công không khai thác lỗi Solidity, cũng không chạm vào ví người dùng. Họ chỉ đơn giản… chèn vài dòng dữ liệu giả vào cơ sở dữ liệu của một solver độc lập.
Context: Cái bẫy của sự tiện lợi
Garden Finance thuộc lớp giao thức “intent-based” – nơi người dùng chỉ cần nói “Tôi muốn đổi 100 USDC lấy ETH” mà không cần chỉ định đường đi. Phần còn lại được ủy thác cho các solver – những thực thể off-chain chịu trách nhiệm tính toán lộ trình tối ưu và gửi giao dịch lên chain. Mô hình này hứa hẹn trải nghiệm mượt mà, chống MEV, nhưng lại tạo ra một điểm tin cậy mới: solver. Nếu solver bị xâm nhập, toàn bộ hệ thống có thể sụp đổ. Và điều đó đã xảy ra.
Core: Mổ xẻ cuộc tấn công lạnh lùng
Theo báo cáo từ Blockaid, kẻ tấn công đã xâm nhập vào cơ sở dữ liệu off-chain của một solver độc lập được Garden Finance ủy thác. Chúng chèn các bản ghi trao đổi giả mạo – những giao dịch chưa từng xảy ra trên bất kỳ sàn DEX nào. Khi solver nhận được intent từ người dùng, nó ưu tiên “lộ trình ảo” này vì cho rằng nó có giá tốt hơn thị trường thực. Kết quả: các giao dịch được thực hiện với mức giá bất lợi, gây thất thoát 450.000 USD.
Điểm đáng chú ý: smart contract và ví người dùng không bị ảnh hưởng. Garden Finance nhanh chóng khẳng định điều này. Nhưng hãy nhìn sâu hơn: lỗi vẫn còn đó, chỉ là chưa ai tìm ra. Lần này kẻ tấn công chọn cách chèn dữ liệu giả. Lần sau có thể là khai thác API, hoặc thậm chí kiểm soát hoàn toàn solver. Đây không phải lỗi code – đây là lỗi kiến trúc.
Dựa trên kinh nghiệm audit của tôi (từng phát hiện lỗi trong Uniswap v2 năm 2020), những cuộc tấn công off-chain thường bị đánh giá thấp. Các đội ngũ tập trung audit smart contract, nhưng bỏ quên các thành phần ngoại vi: cơ sở dữ liệu, máy chủ, API. Garden Finance đã trả giá cho “món nợ bảo mật” này ngay từ những ngày đầu ra mắt.
Contrarian: Phe bò đúng ở đâu?
Một số người cho rằng vì người dùng không mất tiền trực tiếp, và smart contract an toàn, nên đây chỉ là sự cố nhỏ. Họ nói: “Ít nhất nó cho thấy code on-chain hoạt động tốt.” Sai. Sự cố này phơi bày một điểm mù chết người: lòng tin mù quáng vào solver. Nếu bạn không thể tin tưởng dữ liệu đầu vào, thì smart contract có an toàn đến mấy cũng vô nghĩa. Terra dạy: thanh khoản là hư ảo. Garden Finance dạy: dữ liệu off-chain cũng hư ảo không kém.
Phe bò có thể viện dẫn rằng đội ngũ đã phản ứng nhanh – tắt app ngay lập tức. Đúng, nhưng hành động đó cũng cho thấy họ có quyền kiểm soát tập trung, đi ngược lại tinh thần phi tập trung. Nếu dự án thực sự không cần tin cậy, tại sao một nhóm nhỏ có thể tự ý tắt toàn bộ hệ thống?
Takeaway: Trách nhiệm thuộc về ai?
Garden Finance vừa mở mắt cho cả ngành: bảo mật DeFi không chỉ là audit smart contract. Nó là audit toàn bộ hệ thống – bao gồm các thành phần off-chain. Nếu bạn là người dùng, hãy đặt câu hỏi: “Solver của giao thức này có được kiểm toán không? Ai kiểm soát dữ liệu đầu vào?” Nếu bạn là builder, hãy thiết kế lại kiến trúc: đưa logic solver lên chain, hoặc sử dụng cơ chế xác minh zero-knowledge. Đừng để bài học 450.000 USD trở thành vô ích. Bởi lần sau, con số có thể là 45 triệu.