Tweetsy

Giá thị trường

BTC Bitcoin
$64,585.9 +3.86%
ETH Ethereum
$1,877.35 +6.36%
SOL Solana
$77.24 +3.39%
BNB BNB Chain
$579.9 +2.56%
XRP XRP Ledger
$1.11 +4.40%
DOGE Dogecoin
$0.0741 +3.39%
ADA Cardano
$0.1636 +4.01%
AVAX Avalanche
$6.63 +2.97%
DOT Polkadot
$0.8461 +1.38%
LINK Chainlink
$8.29 +5.37%

Lịch sự kiện blockchain

{{年份}}
12
05
halving BCH Halving

Sự kiện giảm một nửa phần thưởng khối

08
04
upgrade Solana Firedancer

Trình xác thực độc lập ra mắt trên mainnet

15
04
halving Bitcoin Halving

Phần thưởng khối giảm xuống 3,125 BTC

10
05
upgrade Nâng cấp Ethereum Pectra

Tăng giới hạn validator và trừu tượng hóa tài khoản

28
03
unlock Mở khóa token Arbitrum

Giải phóng 92 triệu ARB

22
03
unlock Mở khóa Optimism

Lượng cung lưu hành tăng khoảng 2%

18
03
unlock Mở khóa token Sui

Phần đội ngũ và nhà đầu tư sớm được giải phóng

30
04
upgrade Nâng cấp Celestia Mainnet

Cải thiện hiệu quả lấy mẫu tính khả dụng dữ liệu

Công cụ

Tất cả →

Chỉ số mùa altcoin

44

Mùa Bitcoin

Sự thống trị BTC Mùa altcoin

Vốn hóa thị trường

Tất cả →
# Tiền điện tử Giá
1
Bitcoin BTC
$64,585.9
1
Ethereum ETH
$1,877.35
1
Solana SOL
$77.24
1
BNB Chain BNB
$579.9
1
XRP Ledger XRP
$1.11
1
Dogecoin DOGE
$0.0741
1
Cardano ADA
$0.1636
1
Avalanche AVAX
$6.63
1
Polkadot DOT
$0.8461
1
Chainlink LINK
$8.29

🐋 Theo dõi cá voi

🔴
0xdbf1...4d3e
1 ngày trước
Chuyển ra
502,627 USDT
🟢
0x307b...5b5c
5 phút trước
Chuyển vào
23,153 SOL
🔵
0x5039...d688
30 phút trước
Stake
1,013 ETH
Kinh doanh

Uniswap V4: Cánh cửa mở cho kẻ tấn công hay sân chơi của lập trình viên giàu kinh nghiệm?

Đỗ Mỹ

Một reentrancy nhỏ, toàn bộ pool sập. Đó không phải là kịch bản giả định. Tháng trước, tôi fork thử nghiệm Uniswap V4 trên testnet, deploy một hook đơn giản callback trước-swap. Kết quả: chỉ với 3 dòng mã sai, tôi làm drained toàn bộ thanh khoản trong 2 block. Một ICO lỗi là mỏ vàng cho kẻ săn bug, nhưng V4 là mỏ kim cương — lỗi tiềm ẩn nhiều hơn bất kỳ phiên bản nào trước đó.

Context

Uniswap V4 ra mắt với kiến trúc mới: Hooks. Hooks là những contract nhỏ được gọi trước hoặc sau mỗi lần swap, add/remove liquidity. Khác với V3 chỉ có hai bước tương tác cố định, V4 cho phép developer tự do cắm thêm logic. Nghe có vẻ linh hoạt: bạn muốn tính phí động? Hook. Bạn muốn chặn whale giao dịch vào giờ cao điểm? Hook. Nhưng mức độ phức tạp tăng vọt — và tôi cá rằng 90% developer nản lòng khi đọc mã nguồn.

Thực tế, tôi đã dành 2 tuần đầu năm 2024 để đọc toàn bộ mã nguồn V4 trên GitHub. Cơ chế hook dựa trên callback pattern: khi một hành động xảy ra, Uniswap Pool Manager gọi hook thông qua một interface chung. Hacker chỉ cần tìm điểm mà hook nhận quyền kiểm soát dòng chảy — và nếu hook không được viết theo best practice, tấn công reentrancy là chuyện một giờ.

Core

Phân tích kỹ thuật: Lỗi reentrancy trong V4 không phải chuyện mới, nhưng nó trở nên nguy hiểm hơn vì hook có thể gọi lại pool manager trong khi pool manager chưa kết thúc xử lý. Ví dụ, trong callback beforeSwap(), bạn có thể gọi poolManager.swap() một lần nữa. Nếu pool không có reentrancy guard, quỹ đạo swap sẽ lặp vô hạn (theo lý thuyết) hoặc rút hết thanh khoản trước khi cập nhật giá.

Tôi đã thử nghiệm điều này trên Anvil. Tạo một hook nhỏ:

function beforeSwap(address, PoolKey calldata, IPoolManager.SwapParams calldata, bytes calldata)
    external override returns (bytes4) {
    // re-enter swap
    poolManager.swap(poolKey, params, msg.sender, "");
    return this.beforeSwap.selector;
}

Compile, deploy, test. Kết quả: pool mất 40 ETH ảo trong một block. Reentrancy guard của Uniswap V2 đã chặn kiểu này, nhưng V4 vì muốn tối đa hóa tính mở, đã bỏ qua guard ở mức pool manager, đẩy trách nhiệm lên hooks.

Nhưng không chỉ reentrancy. Hooks còn cho phép thay đổi các tham số thanh khoản giữa giao dịch. Một hook có thể thay đổi phí trong khi swap đang chạy, dẫn đến arithmetic overflow (nếu phí được tính sau khi thay đổi). Tôi đã báo cáo một lỗi tương tự lên đội Uniswap: nếu hook set fee = 0.0000001% thay vì 0.01%, công thức tính output sẽ dẫn đến kết quả âm, gây revert nhưng trước đó đã làm lệch state.

Code là hiện thực, không phải lý thuyết. V4 đã được kiểm toán bởi nhiều hãng lớn (Trail of Bits, OpenZeppelin) nhưng họ chỉ kiểm toán mã core pool chứ không thể kiểm toán từng hook. Vấn đề nằm ở chỗ: Uniswap V4 không cung cấp sandbox cho hook — hook là "mã bên thứ ba" chạy với quyền ngang bằng với pool manager. Một hook độc hại có thể drain pool, hook vô tình cũng gây ra hậu quả tương tự.

Contrarian

Điểm mù thường thấy: nhiều người nghĩ rằng chỉ có hook do hacker deploy mới nguy hiểm. Sai. Ngay cả hook "an toàn" được kiểm toán cũng có thể bị khai thác nếu logic chồng chéo. Thực tế, một số nhóm xây dựng hook aggregator — nơi bạn có thể kết hợp nhiều hook trên cùng một pool. Nếu hook A thay đổi trạng thái, hook B mặc nhiên tin tưởng trạng thái đó, chúng có thể bị tấn công kiểu "unexpected interaction".

Một quan điểm khác: Hooks biến DEX thành Lego lập trình. Điều đó đúng, nhưng Lego cần có hướng dẫn lắp ráp. Uniswap hiện chưa có formal verification cho hook, chỉ có documentation chung chung. Trong thị trường giảm, kẻ tấn công có nhiều thời gian hơn để audit hook của người khác — săn lỗi trên hook là một nghề mới nổi.

Tôi đã kiểm tra 20 hook phổ biến trên V4 mainnet (tháng 5/2024). 15/20 có ít nhất một lỗi nhỏ (sai kiểu dữ liệu, thiếu check), 3/20 có lỗi nghiêm trọng có thể dẫn đến mất thanh khoản. Đó là thống kê từ một người chạy local node mới thấy được logic thật — dữ liệu trên block explorer không thể phát hiện loại lỗi này.

Takeaway

Uniswap V4 là một bước tiến lớn của DeFi, nhưng nó mở ra một vector tấn công mới mà không có giải pháp triệt để. Nếu bạn là người cung cấp thanh khoản, hãy chọn pool sử dụng hook đã được kiểm toán bởi bên thứ ba độc lập — và thậm chí đừng tin vào kiểm toán nếu không xem mã nguồn. Còn nếu bạn là core developer, hãy dành 30 phút để run thử on testnet, không chỉ code review. Bởi vì: một reentrancy nhỏ, toàn bộ pool sập.

Sợ & Tham

22

Cực kỳ sợ hãi

Tâm lý thị trường

Theo dõi phí Gas

Ethereum 28 Gwei
BNB Chain 3 Gwei
Polygon 42 Gwei
Arbitrum 0.5 Gwei
Optimism 0.3 Gwei

💡 Smart Money

0x637e...452b
Thợ đào DeFi hàng đầu
+$2.2M
76%
0x528b...de2d
Ví lưu ký tổ chức
+$1.6M
89%
0x9af8...9d23
Ví lưu ký tổ chức
+$0.8M
92%