OrionProtocol đã bị tấn công tái nhập trị giá 2,9 triệu USD, cả hai chuỗi ETH và BSC đều bị ảnh hưởng.

robot
Đang tạo bản tóm tắt

Phân tích sự kiện tấn công tái nhập của OrionProtocol

Tóm tắt sự kiện

Vào ngày 2 tháng 2 năm 2023, OrionProtocol đã chịu một cuộc tấn công tái nhập trên Ethereum và chuỗi thông minh Binance, dẫn đến tổn thất khoảng 2,9 triệu USD. Kẻ tấn công đã lợi dụng lỗ hổng hợp đồng để đánh cắp 2.844.766 USDT trên chuỗi Ethereum và 191.606 BUSD trên chuỗi thông minh Binance.

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Phân tích quá trình tấn công

  1. Kẻ tấn công trước tiên triển khai một hợp đồng Token tùy chỉnh, chuẩn bị cho cuộc tấn công tiếp theo.

  2. Thực hiện vay mượn thông qua phương pháp swap của UNI-V2 và gọi phương thức ExchangeWithAtomic.swapThroughOrionPool để thực hiện đổi token. Đường đi của việc đổi bao gồm địa chỉ hợp đồng Token do kẻ tấn công tạo ra.

  3. Khi thực hiện phương thức swapThroughOrionPool, kẻ tấn công lợi dụng hàm gọi lại trong hợp đồng Token tùy chỉnh, gọi lại phương thức ExchangeWithAtomic.depositAsset nhiều lần, dẫn đến số tiền gửi bị cộng dồn nhiều lần.

  4. Cuối cùng, kẻ tấn công hoàn thành việc thu lợi thông qua thao tác rút tiền.

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Dòng tiền

Vốn ban đầu của kẻ tấn công đến từ ví nóng của một nền tảng giao dịch nào đó. Trong số 1,651 ETH kiếm được, 657.5 ETH vẫn còn trong ví của kẻ tấn công, phần còn lại đã được chuyển qua dịch vụ trộn coin.

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Phân tích lỗ hổng

Vấn đề cốt lõi nằm ở hàm doSwapThroughOrionPool. Hàm này trong quá trình thực hiện _doSwapTokens, trước tiên thực hiện thao tác chuyển tiền, sau đó cập nhật biến curBalance. Kẻ tấn công đã lợi dụng việc thêm callback vào hàm transfer của Token tùy chỉnh, gọi lại hàm depositAsset trước khi curBalance được cập nhật, dẫn đến tính toán sai số dư.

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Phân tích tấn công tái nhập OrionProtocol kèm PoC

Đề xuất phòng ngừa

  1. Khi thiết kế hợp đồng, cần xem xét các rủi ro an ninh có thể phát sinh từ nhiều Token và các con đường đổi khác nhau.

  2. Tuân thủ mô hình "Kiểm tra - Hiệu lực - Tương tác" (Checks-Effects-Interactions) khi viết mã hợp đồng, tức là trước tiên thực hiện kiểm tra điều kiện, sau đó cập nhật biến trạng thái, cuối cùng là thực hiện gọi ngoại bộ.

  3. Thêm cơ chế bảo mật như khóa tái nhập để ngăn chặn tấn công tái nhập.

  4. Thực hiện kiểm tra mã định kỳ và quét lỗ hổng, kịp thời sửa chữa các mối nguy cơ an ninh tiềm ẩn.

  5. Giới hạn số tiền tối đa cho một giao dịch, thiết lập giới hạn tần suất giao dịch và các biện pháp khác để giảm thiểu tổn thất do các cuộc tấn công tiềm ẩn.

Bằng cách thực hiện các biện pháp này, nhóm dự án có thể nâng cao đáng kể tính an toàn của hợp đồng và giảm thiểu rủi ro bị tấn công tương tự. Việc liên tục chú ý đến an toàn hợp đồng thông minh là vô cùng quan trọng để duy trì sự phát triển lành mạnh của hệ sinh thái Web3.

Xem bản gốc
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
  • 5
  • Chia sẻ
Bình luận
0/400
StakeOrRegretvip
· 07-15 17:28
Lại là cái bẫy của hợp đồng thông minh
Xem bản gốcTrả lời0
TokenEconomistvip
· 07-15 07:15
để tôi giải thích điều này: lỗ hổng tái nhập cổ điển, về cơ bản là chênh lệch kinh tế nhưng với lỗi hợp đồng thông minh
Xem bản gốcTrả lời0
FreeRidervip
· 07-12 19:16
又一个新đồ ngốc贡献者
Xem bản gốcTrả lời0
WenMoon42vip
· 07-12 19:09
Một dự án nữa đã chết.
Xem bản gốcTrả lời0
LiquidationSurvivorvip
· 07-12 19:08
Hợp đồng lại bị kéo, không nói nên lời.
Xem bản gốcTrả lời0
  • Ghim
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)