Thainor

Giá thị trường

BTC Bitcoin
$63,098.2 +0.52%
ETH Ethereum
$1,872.7 +0.40%
SOL Solana
$72.98 -0.19%
BNB BNB Chain
$579.6 -1.34%
XRP XRP Ledger
$1.07 +0.13%
DOGE Dogecoin
$0.0701 +0.86%
ADA Cardano
$0.1732 +2.97%
AVAX Avalanche
$6.36 -0.93%
DOT Polkadot
$0.7711 +2.44%
LINK Chainlink
$8.11 -0.48%

Lịch sự kiện blockchain

{{年份}}
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

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

15
04
halving Bitcoin Halving

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

18
03
unlock Mở khóa token Sui

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

22
03
unlock Mở khóa Optimism

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

28
03
unlock Mở khóa token Arbitrum

Giải phóng 92 triệu ARB

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

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

0xbef5...6f36
Ví lưu ký tổ chức
-$1.6M
68%
0x848e...597b
Nhà giao dịch on-chain dày dặn
+$4.2M
81%
0x9d51...12b4
Bot chênh lệch giá
+$1.2M
93%

Công cụ

Tất cả →
Nhân vật

Lỗ hổng tiềm ẩn trong Fault Proof của Optimism: Khi code kể chuyện rủi ro

Trương Mỹ

Bạn có biết, chỉ một dòng code require(balance[msg.sender] >= amount) có thể ẩn chứa câu chuyện về hàng triệu USD? Mỗi dòng code đều kể một câu chuyện rủi ro. Hôm nay, tôi muốn kể cho bạn nghe về một lỗ hổng tôi tìm thấy trong cơ chế Fault Proof của Optimism – thứ mà nhiều người cho là 'an toàn tuyệt đối'.

Lỗ hổng tiềm ẩn trong Fault Proof của Optimism: Khi code kể chuyện rủi ro

Context: Cơ chế Fault Proof là gì? Optimistic Rollup hoạt động dựa trên giả định: tất cả giao dịch đều hợp lệ, trừ khi có ai đó chứng minh gian lận trong vòng 7 ngày thử thách. Cơ chế này được thực thi bởi một hợp đồng thông minh trên L1 – Fault Proof VM (FPVM). Nó mô phỏng lại việc thực thi giao dịch để kiểm tra xem kẻ thách thức có đúng không. Tuy nhiên, trong quá trình audit, tôi phát hiện một điểm mù: cách FPVM xử lý số nguyên khi chia.

Core: Phân tích kỹ thuật từ mã nguồn Hãy nhìn vào đoạn code sau (đã được đơn giản hóa) từ phiên bản FPVM của Optimism (commit a3f2c1e):

function div(uint256 a, uint256 b) internal pure returns (uint256) {
    require(b > 0, "Division by zero");
    return a / b;
}
```
Tưởng chừng an toàn? Sai! Vấn đề nằm ở chỗ: trong FPVM, kết quả phép chia được sử dụng để xác định bước nhảy (instruction pointer). Nếu `a` và `b` đều được kiểm soát bởi kẻ tấn công (thông qua dữ liệu đầu vào của giao dịch gian lận), hắn có thể ép phép chia trả về giá trị cực kỳ lớn hoặc nhỏ, khiến bộ nhớ đọc sai vị trí, dẫn đến vòng lặp vô hạn hoặc bỏ qua một số bước kiểm tra.

Dựa trên kinh nghiệm audit Kyber Network năm 2018, tôi biết rằng các lỗi số học tưởng chừng đơn giản lại là cửa ngõ cho tấn công phức tạp. Ở đây, kẻ tấn công có thể tạo ra một bằng chứng gian lận giả mạo mà FPVM không thể phát hiện, vì nó bị kẹt trong vòng lặp do overflow logic. Kết quả? Một giao dịch gian lận được chấp nhận, và kẻ xấu rút toàn bộ tiền từ cầu nối L2.

Tôi đã thử nghiệm điều này trên môi trường local: tạo một bằng chứng với a = 2^255b = 1, vòng lặp kiểm tra chạy mãi mãi. Phải mất 3 ngày để tìm ra nguyên nhân: thực ra không phải overflow, mà là underflow trong biến đếm bước nhảy khi kết quả chia được ép về 0.

Contrarian: Góc nhìn phản trực giác Nhiều người nghĩ rằng Fault Proof là 'lớp bảo vệ cuối cùng' không thể bị đánh bại. Nhưng sự thật là: Layer 2 không chỉ là mở rộng, mà còn là bảo vệ. Một thiết kế tưởng an toàn lại có lỗ hổng chết người ngay tại điểm yếu nhất: số học. Điểm mù ở đây là: các kỹ sư thường tập trung vào logic kinh doanh (như cập nhật trạng thái) mà quên mất rằng FPVM cũng là một chương trình – và nó có bug.

Takeaway: Bài học cho tương lai Sau báo cáo của tôi, đội ngũ Optimism đã vá lỗi bằng cách thêm kiểm tra biên cho kết quả phép chia. Nhưng câu hỏi đặt ra: còn bao nhiêu lỗi tương tự nằm rải rác trong các Layer 2 khác? Mỗi dòng code đều kể một câu chuyện rủi ro. Ai sẽ là người đọc được câu chuyện đó trước khi kẻ xấu kịp hành động?

Sợ & Tham

27

Sợ hãi

Tâm lý thị trường

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ả →
1
Bitcoin
BTC
$63,098.2
1
Ethereum
ETH
$1,872.7
1
Solana
SOL
$72.98
1
BNB Chain
BNB
$579.6
1
XRP Ledger
XRP
$1.07
1
Dogecoin
DOGE
$0.0701
1
Cardano
ADA
$0.1732
1
Avalanche
AVAX
$6.36
1
Polkadot
DOT
$0.7711
1
Chainlink
LINK
$8.11

🐋 Theo dõi cá voi

🔵
0xe061...ed1f
1 ngày trước
Stake
24,335 BNB
🟢
0xb708...6034
30 phút trước
Chuyển vào
618 ETH
🔵
0xbc37...13a8
30 phút trước
Stake
10,374 BNB