Cuộc Tấn Công vào Float Protocol
Float Protocol đã mất khoảng 28.000 USD, tương đương 10.71 ETH, sau khi một kẻ tấn công sử dụng flash loan để thao túng giá spot của Uniswap V3 và khai thác cách mà các hợp đồng Hypervisor tính toán giá trị chia sẻ của nhà cung cấp thanh khoản. SlowMist cho biết vào ngày 31 tháng 8 rằng kẻ tấn công đã làm sai lệch giá spot (slot0) của Uniswap V3, khiến các hợp đồng Hypervisor bị ảnh hưởng tính toán sai giá trị chia sẻ LP. Công ty bảo mật blockchain đã truy vết cuộc tấn công đến các chức năng thiếu xác minh TWAP hoặc oracle và bảo vệ trượt giá.
Thông Tin Chi Tiết về Cuộc Tấn Công
Thiệt hại: ~28.000 USD (10.71 ETH)
Nguyên nhân gốc rễ: Thao túng giá spot Uniswap V3 (slot0) thông qua flash loans đã dẫn đến việc định giá sai chia sẻ LP trong các hợp đồng Hypervisor. Các chức năng quan trọng thiếu xác thực TWAP/oracle và bảo vệ trượt giá.
Sử dụng các giao dịch lớn trong pool thanh khoản V3 cơ bản, kẻ tấn công đã thao túng các giá trị trả về bởi currentTick và getTotalAmounts. SlowMist cho biết kẻ tấn công sau đó đã liên tục gửi và rút tiền trong khi các hợp đồng Hypervisor đang làm việc với các giá trị chia sẻ bị thổi phồng. Công ty bảo mật đã xác định địa chỉ của kẻ tấn công là 0xaea29218262dc6b0904ca077f6527c49dfd426d9 và hợp đồng tấn công là 0xb46655eb5b77de277063a75586d1883e951b6c54. Hai hợp đồng dễ bị tấn công được liệt kê là 0x85cbed523459b7f6f81c11e710df969703a8a70c và 0xc86b1e7fa86834cac1468937cdd53ba3ccbc1153, trong khi pool thanh khoản cơ bản được xác định là 0xe8c2036068fc3b0161ee1def0e8d01df4eac0ac.
Phân Tích Cuộc Tấn Công
Cuộc tấn công tập trung vào cách mà các hợp đồng bị ảnh hưởng nhận thông tin giá từ pool Uniswap V3 cơ bản. SlowMist cho biết các giao dịch lớn đã cho phép kẻ tấn công làm sai lệch slot0, chứa thông tin giá hiện tại và tick của pool.
Khi giá pool đã bị thay đổi, việc thao túng đã thay đổi các giá trị trả về bởi currentTick và getTotalAmounts. Các hợp đồng Hypervisor bị ảnh hưởng đã sử dụng dữ liệu đã bị thay đổi để tính toán giá trị chia sẻ LP, cho phép kẻ tấn công tương tác với các hợp đồng trong khi các chia sẻ đó được định giá sai. Flash loans đã cung cấp vốn tạm thời cần thiết để thực hiện các giao dịch lớn.
Như crypto.news đã giải thích trước đó, một flash loan cho phép vay tài sản mà không cần tài sản thế chấp trước miễn là khoản vay và phí được hoàn trả trong cùng một giao dịch blockchain. Nếu việc hoàn trả không xảy ra, toàn bộ giao dịch sẽ bị đảo ngược. Cơ chế này cho phép các nhà giao dịch tiếp cận một lượng lớn thanh khoản tạm thời cho việc chênh lệch giá, hoán đổi tài sản thế chấp và thanh lý, nhưng cùng một thanh khoản có thể được sử dụng để khai thác các giá trị định giá hoặc logic hợp đồng thông minh dễ bị tấn công.
Hậu Quả và Các Cuộc Tấn Công Tương Tự
Trong phân tích của mình về Float Protocol, SlowMist đã quy trách nhiệm thiệt hại cho các hợp đồng dựa vào một giá spot có thể bị thao túng mà không có các kiểm tra có thể xác minh nó so với giá trung bình theo thời gian hoặc một oracle khác. Các chức năng quan trọng cũng thiếu bảo vệ trượt giá, theo công ty bảo mật.
SlowMist cho biết kẻ tấn công không dừng lại sau khi thay đổi giá pool Uniswap V3. Khi slot0 đã bị làm sai lệch, kẻ tấn công đã liên tục gửi vào và rút ra từ các hợp đồng bị ảnh hưởng bằng cách sử dụng các tính toán chia sẻ LP bị thổi phồng.
Chuỗi sự kiện này cho phép giá trị được rút ra trong khi các hợp đồng dựa vào trạng thái pool đã bị thao túng. SlowMist ước tính thiệt hại cuối cùng khoảng 10.71 ETH, trị giá khoảng 28.000 USD khi công bố cảnh báo.
Các phương pháp tương tự đã được sử dụng trong các cuộc tấn công DeFi khác, nơi các giao dịch tạm thời lớn làm sai lệch giá hoặc tỷ lệ pool trước khi một hợp đồng khác sử dụng các giá trị đã bị thao túng. Vào tháng 7, Allbridge Core đã bị tạm dừng sau khi một kẻ tấn công sử dụng một flash loan 1.12 triệu USD USDC từ Kamino trong một cuộc tấn công mà PeckShield ước tính gây ra thiệt hại khoảng 1.65 triệu USD.
Onchain Lens cho biết kẻ tấn công Allbridge đã thực hiện các giao dịch nhanh chóng USDC và USDT để thay đổi tỷ lệ bên trong một pool stablecoin. Kẻ tấn công sau đó đã rút thanh khoản theo tỷ lệ đã bị sai lệch trước khi hoàn trả flash loan trong cùng một giao dịch.
Kết Luận
Sự cố của Float Protocol liên quan đến một cơ chế khác được SlowMist mô tả. Phân tích của công ty bảo mật đã chỉ ra điểm yếu bên trong các hợp đồng Hypervisor bị ảnh hưởng, nơi dữ liệu pool Uniswap V3 bị thao túng có thể ảnh hưởng đến các tính toán được sử dụng để định giá chia sẻ LP. Vốn flash-loan đã xuất hiện trong các cuộc tấn công khác trong năm nay.
Đối với Float Protocol, SlowMist đã xác định cụ thể sự thiếu vắng xác thực TWAP hoặc oracle như một phần của con đường tấn công. Một TWAP sử dụng các quan sát được thu thập trong một khoảng thời gian thay vì chỉ dựa vào giá có sẵn tại một thời điểm. Giá spot bên trong các pool thanh khoản có thể di chuyển khi một giao dịch đủ lớn thay đổi tỷ lệ tài sản, đó là cơ chế mà SlowMist cho biết kẻ tấn công Float Protocol đã khai thác.