#rsETHAttackUpdate: Phân tích chi tiết về lỗ hổng, quá trình khôi phục và bài học rút ra



Cộng đồng tài chính phi tập trung (DeFi) đã bị chấn động vào ngày 22 tháng 4 năm 2026, khi một cuộc tấn công tinh vi nhắm vào hợp đồng token restaking thanh khoản rsETH. rsETH, do Kelp DAO phát hành như một token biên nhận cho các vị trí restaking EigenLayer, đã bị khai thác logic gửi và rút tiền cốt lõi, dẫn đến mất tạm thời khoảng 8,4 triệu đô la tài sản. Bài viết này cung cấp cập nhật chi tiết, theo từng bước về sự cố – từ vector ban đầu đến kết quả điều tra cuối cùng.

1. rsETH là gì và tại sao nó lại trở thành mục tiêu?

rsETH là token restaking thanh khoản đại diện cho phần stake của người dùng trong nhiều dịch vụ xác thực hoạt động (AVS) qua EigenLayer. Khác với stETH của Lido đơn giản, rsETH liên quan đến các logic hoán đổi, mint và burn phức tạp qua nhiều pool. Kẻ tấn công thường nhắm vào các hợp đồng như vậy vì các cuộc gọi chéo hợp đồng và phụ thuộc vào oracle giá tạo ra các bề mặt tấn công.

Lỗ hổng khai thác tuần này không nằm trong giao thức cốt lõi của EigenLayer, mà trong một “bọc gửi tiền” tùy chỉnh do Kelp DAO sử dụng để chấp nhận ETH và LSTs (như stETH) để đổi lấy rsETH. Bọc này, KelpDepositAdapterV2, có hàm receive() không được bảo vệ, cho phép phê duyệt token tùy ý bị chuyển hướng.

2. Lịch trình tấn công – Quá trình diễn ra như thế nào

Giai đoạn 1 – Điều tra (18-21 tháng 4)
Kẻ tấn công, được tài trợ qua Tornado Cash (0.5 ETH seed), bắt đầu dò hỏi hợp đồng adapter. Dữ liệu trên chuỗi cho thấy nhiều giao dịch “kiểm thử” với số lượng nhỏ, để kiểm tra cách hợp đồng xử lý reentrancy và delegatecall.

Giai đoạn 2 – Thực thi khai thác (22 tháng 4, 14:32 UTC)
Sử dụng một khoản vay flash 5.000 ETH từ Aave V3, kẻ tấn công gọi hàm depositLST của adapter. Lỗ hổng cho phép họ truyền tham số bytes độc hại ghi đè địa chỉ pool nội bộ. Do đó, adapter gửi tiền của người dùng đến một pool Lido giả do kẻ tấn công kiểm soát.

Thông qua các khoản vay flash và hoán đổi lặp lại, họ đã rút khoảng 1.280 rsETH từ pool thanh khoản trên Uniswap V3 (Arbitrum) và thêm 740 rsETH từ pool 80/20 của Balancer. Tổng thiệt hại tính theo USD vào thời điểm đó là khoảng 8,4 triệu đô la.

Giai đoạn 3 – Phát hiện và tạm dừng (14:45 UTC)
Các bot giám sát của Kelp DAO đã phát hiện ra việc sử dụng gas bất thường của hàm depositLST. Trong vòng 13 phút, nhóm đã tạm dừng tất cả các khoản gửi và rút tiền qua multisig quản trị. Điều này ngăn chặn thêm các cuộc khai thác đối với số tiền còn lại, nhưng các tài sản đã bị đánh cắp trước đó đã được hoán đổi sang DAI và chuyển qua chuỗi chính Ethereum.

3. Phản ứng ngay lập tức và tác động đến người dùng

Nhóm Kelp DAO ngay lập tức phát hành cập nhật trạng thái trên Discord chính thức và Twitter, xác nhận rằng #rsETHAttack. Họ xác nhận:

· Không có quỹ người dùng nào trong các vault restaking (EigenLayer pods) bị trực tiếp xâm phạm.
· Chỉ hợp đồng adapter gửi tiền (đang giữ các khoản gửi tạm thời trong khoảng 6 giờ) bị ảnh hưởng.
· Giá rsETH trên thị trường thứ cấp tạm thời giảm 12% nhưng đã phục hồi sau khi tạm dừng.

Một báo cáo điều tra chính thức đã được chia sẻ trong vòng 6 giờ, liệt kê các địa chỉ bị ảnh hưởng. Khoảng 340 người gửi tiền duy nhất đã sử dụng adapter trong 12 giờ trước đó phải chịu thiệt hại chưa thực hiện. Nhóm cam kết thực hiện kế hoạch hoàn trả đầy đủ bằng quỹ DAO và quỹ bảo hiểm (Nexus Mutual có chính sách bảo hiểm lên tới $5 triệu đô la).

4. Nguyên nhân gốc rễ: Thiếu bảo vệ reentrancy và thao túng oracle

Hai lỗi nghiêm trọng được xác định trong KelpDepositAdapterV2:

· Không có modifier nonReentrant trên hàm depositLST. Điều này cho phép kẻ tấn công gọi đệ quy hàm này trước khi trạng thái được cập nhật, dẫn đến việc nhận gấp đôi rsETH.
· Phụ thuộc vào một feed giá duy nhất từ một pool Curve có thanh khoản thấp để chuyển đổi LST/ETH. Bằng cách làm lệch tỷ lệ pool đó bằng các khoản vay flash, kẻ tấn công đã làm hợp đồng đánh giá quá cao khoản gửi của họ.

Sau khi tạm dừng, nhóm đã triển khai một adapter sửa đổi (V3) với ReentrancyGuard của OpenZeppelin và chuyển sang oracle tổng hợp ETH/LST mới của Chainlink (sử dụng giá trung vị từ năm pool thanh khoản cao).

5. Tình trạng hiện tại (24 tháng 4 năm 2026)

· Khôi phục quỹ: Các nhà điều tra trên chuỗi đã theo dõi DAI bridged của kẻ tấn công đến một địa chỉ mới. Kẻ tấn công đã trả lại 5.200 ETH (khoảng 9,1 triệu đô la) vào ngày 23 tháng 4 sau đàm phán qua tin nhắn whitehat, giữ lại phần thưởng 5%. Tất cả người gửi tiền bị ảnh hưởng đã được hoàn trả đầy đủ.
· Cập nhật hợp đồng: Địa chỉ hợp đồng adapter mới (0x...c7D9) đã hoạt động 24 giờ với các biện pháp bảo mật nâng cao. Các khoản gửi và rút tiền đã được tiếp tục. Nhóm cũng đã giới hạn giới hạn gửi hàng ngày ở mức $2 triệu đô la( trong khi chờ đợi kiểm toán của bên thứ ba )bởi Quantstamp( hoàn tất.
· Hành động người dùng cần thực hiện: Không cần hành động nào từ người dùng hiện tại của rsETH – số dư token của họ vẫn hợp lệ. Tuy nhiên, bất kỳ ai đã tương tác với hàm depositLST của adapter cũ trong thời gian khai thác nên yêu cầu hoàn tiền qua cổng yêu cầu riêng )không có liên kết – chỉ kiểm tra kênh chính thức của Kelp DAO#rsETHAttackUpdate .

6. Bài học cho hệ sinh thái DeFi

(như một lời nhắc nhở nữa về bốn nguyên tắc chính:

1. Các hợp đồng adapter phải được xem là rủi ro cao. Ngay cả khi lớp nền )EigenLayer( là an toàn, wrapper xung quanh nó cũng cần được kiểm tra kỹ như một giao thức cho vay.
2. Việc thử nghiệm mô phỏng vay flash nên là bắt buộc trong các pipeline CI/CD. Vector tấn công sử dụng ở đây sẽ bị phát hiện bởi các công cụ như Echidna hoặc Medusa fuzzing.
3. Cơ chế tạm dừng giúp bảo vệ quỹ. Thời gian phản ứng 13 phút của Kelp là tiêu biểu – nhưng dựa vào multisig 3/5. Các circuit breaker tự động nhanh hơn )dựa trên khối lượng gửi bất thường( hiện đang được thêm vào.
4. Minh bạch xây dựng niềm tin. Quyết định của nhóm công bố toàn bộ báo cáo điều tra, bao gồm các địa chỉ bị ảnh hưởng và đàm phán thưởng, đã ngăn chặn hoang mang và thuyết âm mưu.

Kết luận

Tính đến thời điểm này, rsETH vẫn được đảm bảo đầy đủ, tất cả quỹ người dùng đã được khôi phục, và giao thức đã trải qua ba cuộc kiểm tra hợp đồng thông minh mới. Lỗ hổng, dù gây căng thẳng cho người gửi tiền, không dẫn đến mất vĩnh viễn – nhờ phản ứng nhanh và sự hợp tác của whitehat. Để cập nhật liên tục, theo dõi các kênh truyền thông chính thức của Kelp DAO )Discord, Twitter, và diễn đàn quản trị. Luôn xác minh địa chỉ hợp đồng độc lập và không bao giờ phê duyệt giao dịch từ các liên kết không chính thức.
STETH-0,82%
ETH-0,81%
AAVE0,39%
Xem bản gốc
post-image
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • Bình luận
  • Đăng lại
  • Retweed
Bình luận
Thêm một bình luận
Thêm một bình luận
Không có bình luận
  • Ghim