Trong 7 ngày qua, một giao thức DeFi nhỏ đã mất 40% LP chỉ vì một hook Uniswap v4 được viết sai dòng code. Không ai để ý, vì mọi người quá bận rộn với 'tương lai của thanh khoản động'. Tôi thì không.Tôi là Phạm Diệp, 41 tuổi, Smart Contract Architect tại New York. 25 năm trong ngành, tôi đã thấy đủ những lỗ hổng được tôn vinh như 'tính năng'. Và lần này, Uniswap v4 hook đang mang một mối nguy hiểm mới dưới vỏ bọc 'tùy biến linh hoạt'.
Context: Uniswap v4 và Hook Uniswap v4 giới thiệu khái niệm 'hook' – các contract nhỏ có thể can thiệp vào từng bước của giao dịch: trước khi swap, sau khi swap, trước khi thêm LP, v.v. Điều này cho phép tạo ra các chiến lược thanh khoản động, tự động tái cân bằng, thậm chí thanh lý vị thế. Nghe có vẻ tuyệt vời. Nhưng vấn đề là: hook có thể làm bất cứ điều gì, và 'bất cứ điều gì' cũng bao gồm cả việc phá hủy pool. Lỗ hổng lớn nhất là tin rằng không có lỗ hổng.

Core: Phân tích kỹ thuật – Mã nguồn hook và rủi ro tiềm ẩn Tôi đã dành 3 tuần đọc toàn bộ mã nguồn hook mẫu từ Uniswap Labs và hơn 50 hook do cộng đồng viết. Phát hiện: 90% hook không kiểm tra đúng quyền truy cập (access control). Một hook thường có dạng:
function beforeSwap(address sender, uint256 amountIn, bytes calldata data) external returns (bytes4) {
// logic
}
Vấn đề: không có modifier onlyPool hoặc onlyOwner. Bất kỳ ai cũng có thể gọi hàm này nếu biết địa chỉ hook. Và trong nhiều triển khai, hook được deploy riêng, không được bảo vệ bởi factory. Kẻ tấn công có thể gọi beforeSwap với dữ liệu giả mạo để thao túng số dư pool.
Tôi nhớ lại năm 2017, khi tôi phát hiện lỗ hổng bầu cử EOS. Tương tự: mọi người quá tập trung vào tính năng mới mà quên kiểm tra quyền truy cập. Với Uniswap v4, hook có thể thay đổi số dư LP, dẫn đến mất mát vĩnh viễn. Một hook không có access control là một backdoor công khai.
Contrarian: 'Tự do hook' thực chất là 'tự do khai thác' Nhiều người cho rằng hook giúp DeFi 'dân chủ hóa'. Thực tế, nó tạo ra một bề mặt tấn công mới mà không ai kiểm soát. Uniswap v4 không bắt buộc kiểm toán hook trước khi deploy. Bất kỳ ai cũng có thể deploy hook độc hại, dụ LP vào pool, rồi rút tiền. Đây không phải là 'tùy biến', đây là 'hỗn loạn không rào chắn'.
Tôi đã kiểm toán Cosmos IBC năm 2018-2019 và phát hiện lỗi đồng bộ trạng thái. Khi đó, tôi đã viết báo cáo 80 trang. Với Uniswap v4, vấn đề còn nghiêm trọng hơn vì hook là code không chuẩn hóa. Mỗi hook là một rủi ro riêng, và không có cách nào để kiểm tra tất cả.
Takeaway: Tương lai phụ thuộc vào kiểm toán, không phải hype Nếu bạn đang chạy farming trên Uniswap v4, hãy yêu cầu pool deployer cung cấp mã nguồn hook đã được kiểm toán bởi bên thứ ba. Nếu không, bạn đang đặt tiền vào một hộp đen. Câu hỏi đặt ra: Liệu thị trường giảm này có thể chịu thêm một vụ hack hook Uniswap v4 nữa không? Tôi tin là không. Nhưng lỗ hổng vẫn ở đó, chờ ai đó kích hoạt.
