Trong vụ tấn công nạp giả vào ngày 17 tháng 7, Solana Relayer đã bị mất 4,5 triệu USD

SOL-3,04%
ACX-0,80%
Key Takeaways
  • Bộ chuyển tiếp (relayer) Solana của Risk Labs đã mất 4,5 triệu USD vào ngày 17/7/2026, sau khi kẻ tấn công giả mạo 1.627 sự kiện nạp tiền.
  • Kẻ tấn công đã khai thác việc thiếu kiểm tra mã định danh sự kiện (Anchor) dài 8 byte để tạo ra 41,7 triệu USD trong các yêu cầu rút tiền gian lận.
  • Risk Labs đã tắt định tuyến trên Solana, triển khai bản vá trong 5 giờ và khôi phục đầy đủ dịch vụ trong 12 giờ.

Risk Labs' Solana relayer đã mất khoảng 4,5 triệu USD vào ngày 17/7/2026, khi một kẻ tấn công khai thác lỗi thiếu kiểm tra 8 byte trong mã phân tích sự kiện của lớp xử lý ngoài chuỗi để giả mạo 1.627 sự kiện nạp tiền chưa từng xảy ra trên chuỗi. Lỗ hổng này cho phép các yêu cầu rút tiền gian lận có tổng mệnh giá khoảng 41,7 triệu USD, trong đó 581 yêu cầu đã được điền trước khi nhóm tắt định tuyến Solana và triển khai bản sửa trong vòng năm giờ kể từ lúc phát hiện. Không có quỹ người dùng nào bị mất hoặc bị đặt vào rủi ro vì Across hoạt động như một giao thức intents, trong đó các relayer ứng trước vốn của chính họ thay vì rút từ quỹ ký gửi chung của người dùng, qua đó toàn bộ tác động tài chính được giới hạn trong quỹ dự phòng vận hành của Risk Labs.

Missing Discriminator Check Enabled Forged Deposit Events

Lỗ hổng nằm trong thành phần SvmCpiEventsClient của relayer Risk Labs, thành phần này chấp nhận mọi chỉ thị bên trong được địa chỉ tới hợp đồng SpokePool thông qua event_authority PDA như một sự kiện thật mà không xác minh bộ phân biệt sự kiện Anchor dài 8 byte. Kẻ tấn công triển khai một chương trình bọc ngoài (wrapper) gọi một hàm trợ giúp SpokePool chỉ đọc vô hại—get_unsafe_deposit_id—và gắn vào đó các payload FundsDeposited được giả mạo. Dưới góc nhìn của relayer, các thứ này trông như những sự kiện nạp tiền hợp lệ, dù không có khoản tiền nào được chuyển trên chuỗi, không có số dư thay đổi, và không có hợp đồng nào bị chạm tới. Risk Labs làm rõ rằng get_unsafe_deposit_id không phải chính là lỗ hổng mà chỉ là một “gói chứa” mà kẻ tấn công sử dụng; nguyên nhân gốc là việc thiếu kiểm tra bộ phân biệt trong cơ sở mã của relayer.

Attacker Submitted 1,627 Forged Deposits Across 18 Chains

Từ 05:07 đến 06:14 UTC vào ngày 17/7, kẻ tấn công đã gửi 1.627 khoản nạp tiền giả mạo từ 1.627 ví chỉ dùng một lần, trải chúng qua 18 chuỗi đích với trị giá danh nghĩa khoảng 41,7 triệu USD, hợp nhất về một địa chỉ người nhận EVM duy nhất. Relayer của Risk Labs đã điền 581 trong số các yêu cầu gian lận này, thanh toán khoảng 4,5 triệu USD vốn của chính mình trước khi nhóm tắt Solana như một chuỗi gốc. Phần còn lại khoảng 37 triệu USD trong các khoản nạp giả mạo hết hạn và trở nên vô giá trị khi relayer ngừng điền. Không có hợp đồng thông minh nào bị xâm phạm; các chương trình Solana và toàn bộ hợp đồng EVM hoạt động đúng như thiết kế trong suốt sự cố.

Intents Protocol Design Prevented User Fund Loss

Không có quỹ người dùng nào bị mất tại bất kỳ thời điểm nào trong suốt sự cố. Across vận hành như một giao thức intents, trong đó người dùng nạp tài sản vào một hợp đồng ký gửi trên chuỗi gốc và các relayer độc lập ứng trước vốn của họ để thực hiện các chuyển khoản trên chuỗi đích. Giao thức chỉ hoàn trả cho relayer sau một quy trình đối soát riêng xác minh từng khoản nạp mà họ đã điền, vì vậy các khoản nạp giả mạo không bao giờ chạm tới quỹ ký gửi của người dùng. Mọi khoản nạp thực sự của người dùng đều được hoàn tất hoặc được hoàn tiền đầy đủ trong cùng ngày. Risk Labs đã chịu trực tiếp khoản thanh toán gộp khoảng 4,5 triệu USD; với khoảng 500.000 USD vốn của kẻ tấn công bị mắc kẹt trong giao thức, mức lỗ ròng nằm dưới 4 triệu USD và tiếp tục giảm khi các nỗ lực thu hồi tiến triển.

Risk Labs Deployed Fix Within Five Hours of Detection

Giao dịch nạp giả mạo đầu tiên được gửi lúc 05:07 UTC ngày 17/7; luồng nạp giả mạo kết thúc lúc 06:14 UTC với các địa chỉ của kẻ tấn công đầu tiên bị đưa vào danh sách đen lúc 06:16 UTC. Solana đã bị tắt như chuỗi gốc và chuỗi đích trong API lúc 08:23 UTC, SpokePool của Solana được tạm dừng trên chuỗi lúc 08:35 UTC, và tuyên bố công khai đầu tiên được ban hành lúc 08:36 UTC. Bản sửa do nguyên nhân gốc được hợp nhất lúc 09:37 UTC và triển khai trên toàn bộ hạ tầng của Risk Labs lúc 10:26 UTC—khoảng năm giờ sau khi phát hiện. Các khoản nạp Solana được bật lại thông qua định tuyến CCTP lúc 17:05 UTC, khôi phục đầy đủ dịch vụ Solana trong khoảng 12 giờ. Tất cả hoạt động giao thức khác vẫn không bị ảnh hưởng trong suốt thời gian.

Solana Event Parsing Logic Undergoing Re-Audit

Luồng lệnh giao dịch của Solana hiện được định tuyến độc quyền thông qua fallback routing của CCTP, mà Risk Labs cho biết bao phủ tất cả các chuỗi lớn. Định tuyến intents qua lại với Solana vẫn bị tắt trong khi nhóm rà soát lại logic phân tích sự kiện của Solana ngoài chuỗi để xác nhận lớp lỗ hổng này đã được đóng hoàn toàn và mô hình bảo mật quanh việc xử lý sự kiện được chuẩn hóa trên toàn bộ stack. Risk Labs đang phối hợp với SEAL 911, đơn vị đã cung cấp hỗ trợ gần như tức thời sau khi sự cố được báo cáo, và với cơ quan thực thi pháp luật của Mỹ; các địa chỉ của kẻ tấn công đã bị gắn cờ trên các sàn giao dịch và các điểm chuyển đổi ra ngoài (off-ramp). Quy trình mua lại token ACX vẫn hoàn toàn không bị ảnh hưởng và tiếp tục như kế hoạch.

FAQ

Có quỹ người dùng nào bị mất trong cuộc tấn công relayer Solana của Across không?

Không quỹ người dùng nào bị mất hoặc bị đặt vào rủi ro tại bất kỳ thời điểm nào. Mọi chuyển khoản thực sự đều được hoàn tất hoặc được hoàn tiền đầy đủ vào ngày 17/7/2026.

Nguyên nhân kỹ thuật của lỗ hổng bảo mật trong relayer Risk Labs là gì?

Lỗ hổng được gây ra bởi việc thiếu xác minh bộ phân biệt sự kiện Anchor 8 byte trong mã relayer ngoài chuỗi. Điều này cho phép kẻ tấn công giả mạo các sự kiện nạp mà relayer coi là thật, dù không có khoản tiền nào được chuyển trên chuỗi.

Risk Labs đã phản ứng thế nào trước cuộc tấn công giả mạo vào relayer Solana của họ?

Risk Labs đã tắt Solana như một chuỗi gốc, tạm dừng SpokePool của Solana trên chuỗi, triển khai bản sửa do nguyên nhân gốc trong khoảng năm giờ kể từ khi phát hiện, và khôi phục đầy đủ dịch vụ Solana trong khoảng 12 giờ bằng cách sử dụng định tuyến fallback CCTP.

Tuyên bố miễn trừ trách nhiệm: Thông tin trên trang này có thể đến từ các nguồn bên thứ ba và chỉ mang tính chất tham khảo. Thông tin này không phản ánh quan điểm hoặc ý kiến của Gate và không cấu thành bất kỳ lời khuyên tài chính, đầu tư hoặc pháp lý nào. Giao dịch tài sản ảo tiềm ẩn rủi ro cao. Vui lòng không chỉ dựa vào thông tin trên trang này khi đưa ra quyết định. Để biết thêm chi tiết, vui lòng xem Tuyên bố miễn trừ trách nhiệm.
Bình luận
0/400
Không có bình luận