OrionProtocol遭2.9亿重入攻击 资金已部分流入 cốc trộn tiền điện tử

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, OrionProtocol đã bị tấn công tái nhập do lỗ hổng hợp đồng trên Ethereum và Binance Smart Chain, tổng thiệt hại khoảng 2,9 triệu USD. Thiệt hại cụ thể bao gồm 2,844,766 USDT trên chuỗi Ethereum và 191,606 BUSD trên chuỗi Binance Smart.

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

Kẻ tấn công đầu tiên triển khai một hợp đồng Token tùy chỉnh và thực hiện các thao tác chuyển nhượng và ủy quyền liên quan, chuẩn bị cho cuộc tấn công tiếp theo. Sau đó, kẻ tấn công thực hiện vay mượn thông qua phương thức swap của một DEX và gọi phương thức ExchangeWithAtomic.swapThroughOrionPool để thực hiện đổi token. Đường đổi được thiết lập là [USDC, Token của kẻ tấn công, USDT].

Trong quá trình trao đổi, kẻ tấn công đã lợi dụng chức năng gọi lại của hợp đồng Token tùy chỉnh, thông qua phương thức Token.Transfer để gọi lại liên tục hàm ExchangeWithAtomic.depositAsset, dẫn đến số tiền gửi được cộng dồn liên tục. Cuối cùng, kẻ tấn công đã hoàn thành việc kiếm 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

Dòng tiền

Nguồ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 mà kẻ tấn công đã 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.

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 gọi hàm _doSwapTokens, sau khi thực hiện chuyển tiền mã thông báo, biến curBalance được cập nhật. Kẻ tấn công đã thêm logic callback vào hàm transfer của Token tùy chỉnh, gọi hàm depositAsset, dẫn đến việc cập nhật curBalance không chính xác. Sau đó, kẻ tấn công gọi hàm withdraw để rút tiền sau khi hoàn trả khoản vay chớp nhoáng, hoàn thành cuộc tấn cô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

Tái hiện tấn công

Kẻ tấn công tạo ra hợp đồng mã thông báo ERC20 tùy chỉnh và lợi dụng chức năng vay chớp nhoáng của một DEX để thực hiện tấn công. Các bước chính bao gồm:

  1. Tạo Token tùy chỉnh và thiết lập cặp giao dịch với USDC, USDT
  2. Chuẩn bị vốn ban đầu và cung cấp tính thanh khoản
  3. Gọi các hàm depositAsset và swapThroughOrionPool của hợp đồng ExchangeWithAtomic
  4. Thêm logic callback vào hàm transfer của Token tùy chỉnh
  5. Cuối cùng, rút tiền lợi nhuận thông qua hàm withdraw.

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

Những lời khuyên an toàn

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

  1. Trong 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 loại Token và các lộ trình trao đổi.
  2. Tuân theo quy tắc mã hóa "Kiểm tra trước, có hiệu lực sau, tương tác sau" (Checks-Effects-Interactions)
  3. Thực hiện kiểm toán an ninh toàn diện, đặc biệt chú ý đến rủi ro tấn công gọi lại.
  4. Cân nhắc sử dụng cơ chế bảo mật như khóa tái nhập
  5. Thực hiện quét lỗ hổng hợp đồng và đánh giá an ninh định kỳ

Sự kiện này một lần nữa nhấn mạnh tầm quan trọng của an toàn hợp đồng thông minh, các dự án nên liên tục chú ý và cải thiện các biện pháp an toàn của họ để bảo vệ tài sản của người dùng và duy trì uy tín của nền tảng.

TOKEN-4.94%
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
  • 4
  • Chia sẻ
Bình luận
0/400
AirdropF5Brovip
· 20giờ trước
bẫy tiền mặt đi nào lại có mục tiêu mới~
Xem bản gốcTrả lời0
ProbablyNothingvip
· 20giờ trước
Hợp đồng còn tệ hơn nữa không?
Xem bản gốcTrả lời0
CountdownToBrokevip
· 20giờ trước
Một công ty nữa đã đóng cửa.
Xem bản gốcTrả lời0
StablecoinAnxietyvip
· 20giờ trước
Ôi chao, lại thêm một hacker kiểu trọng tài.
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)