OrionProtocol bị tấn công tái nhập, thiệt hại 2,9 triệu USD USDT và BUSD

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

Vào chiều ngày 2 tháng 2 năm 2023, Orion Protocol trên chuỗi Ethereum và Binance đã bị tấn công tái nhập do lỗ hổng hợp đồng, gây thiệt hại khoảng 2,9 triệu đô la Mỹ. Cụ thể, thiệt hại bao gồm 2.844.766 USDT trên Ethereum và 191.606 BUSD trên chuỗi Binance.

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

Kẻ tấn công trước tiên tạo ra một hợp đồng Token, và thực hiện các thao tác chuyển nhượng và ủy quyền, chuẩn bị cho cuộc tấn công tiếp theo. Sau đó, kẻ tấn công vay tiền thông qua phương thức swap của UNI-V2, và gọi phương thức swapThroughOrionPool của hợp đồng ExchangeWithAtomic để thực hiện việc hoán đổi token.

Đường dẫn trao đổi được thiết lập thành [USDC, Token do kẻ tấn công tạo ra, USDT]. Trong quá trình trao đổi, do hợp đồng Token do kẻ tấn công tạo ra có chức năng gọi lại, kẻ tấn công có thể tiếp tục gọi lại phương thức depositAsset của hợp đồng ExchangeWithAtomic thông qua phương thức Transfer của Token, từ đó thực hiện tấn công tái nhập, làm cho số tiền gửi liên tục gia tăng. Cuối cùng, kẻ tấn công hoàn tất việc rút tiền để thu lợi.

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

Phân tích lỗ hổng

Lỗ hổng nằm ở hàm doSwapThroughOrionPool trong hợp đồng ExchangeWithAtomic. Hàm này có vấn đề sau khi thực hiện _doSwapTokens:

  1. Cập nhật biến curBalance sau khi thực hiện thao tác chuyển tiền.
  2. Không tuân theo mô hình "Kiểm tra - Hiệu ứng - Tương tác" (Checks-Effects-Interactions).

Kẻ tấn công đã lợi dụng lỗ hổng này, thêm chức năng gọi lại vào hàm transfer của hợp đồng Token giả mạo, khiến nó gọi hàm depositAsset khi thực hiện chuyển khoản. Điều này dẫn đến biến curBalance bị cập nhật sai, cho phép kẻ tấn công rút tiền thừa qua hàm withdraw sau khi hoàn trả khoản vay chớp nhoáng.

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

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

Dòng tiền

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

Đề xuất phòng ngừa

Để tránh các cuộc tấn công tương tự, nhóm dự án nên chú ý đến những điểm sau:

  1. Khi thiết kế hợp đồng, cần xem xét các tình huống bất ngờ có thể phát sinh từ nhiều Token và các con đường trao đổi khác nhau.
  2. Tuân thủ nghiêm ngặt quy tắc lập trình "kiểm tra - hiệu quả - tương tác", đảm bảo thực hiện đánh giá trước, sau đó cập nhật biến trạng thái, cuối cùng mới thực hiện gọi bên ngoài.
  3. Đối với các hoạt động quan trọng liên quan đến chuyển tiền, thực hiện các kiểm tra và hạn chế an ninh nghiêm ngặt hơn.
  4. Thực hiện kiểm toán an ninh hợp đồng định kỳ để phát hiện và sửa chữa kịp thời các lỗ hổng tiềm ẩn.

Sự kiện này một lần nữa nhắc nhở chúng ta rằng, an ninh là vô cùng quan trọng trong phát triển hợp đồng thông minh. Các bên dự án nên luôn giữ cảnh giác và thực hiện nhiều biện pháp bảo vệ để giảm thiểu rủi ro hợp đồng ở mức tối đa.

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
  • Đăng lại
  • Chia sẻ
Bình luận
0/400
GateUser-4745f9cevip
· 08-18 13:15
Một cuộc tấn công tái nhập khác! Hết cách rồi
Xem bản gốcTrả lời0
OptionWhisperervip
· 08-16 06:37
Lại mất nữa rồi
Xem bản gốcTrả lời0
CryptoGoldminevip
· 08-16 06:37
Lỗ hổng chính là tỷ suất sinh lợi âm của tài sản
Xem bản gốcTrả lời0
RektButSmilingvip
· 08-16 06:35
Lại có lỗ hổng rồi
Xem bản gốcTrả lời0
GasSavingMastervip
· 08-16 06:35
Lại là tấn công tái nhập?
Xem bản gốcTrả lời0
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)