Euler Finance遭2亿美元cuộc tấn công cho vay chớp nhoáng hợp đồng thông minh漏洞成祸根

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

Euler Finance遭受 cuộc tấn công cho vay chớp nhoáng,损失近2亿美元

Vào ngày 13 tháng 3, dự án Euler Finance đã bị tấn công cho vay chớp nhoáng do lỗ hổng trong hợp đồng thông minh của nó, gây ra thiệt hại lên tới khoảng 197 triệu đô la Mỹ. Cuộc tấn công này liên quan đến 6 loại mã thông báo tiền điện tử khác nhau.

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị tấn công cho vay chớp nhoáng, mất 1.97 triệu đô la!

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

Kẻ tấn công trước tiên đã lấy 30 triệu DAI từ một nền tảng cho vay để thực hiện Khoản vay nhanh, và đã triển khai hai hợp đồng quan trọng: một hợp đồng cho hoạt động cho vay, hợp đồng còn lại để thanh lý.

Sau đó, kẻ tấn công đã đặt cọc 20 triệu DAI vào hợp đồng Euler Protocol, nhận được khoảng 19,5 triệu eDAI. Sử dụng tính năng đòn bẩy 10x của Euler Protocol, kẻ tấn công đã tiếp tục vay 195,6 triệu eDAI và 200 triệu dDAI.

Tiếp theo, kẻ tấn công sử dụng 10 triệu DAI còn lại để trả một phần nợ, phá hủy dDAI tương ứng. Sau đó, lại vay ra cùng một số lượng eDAI và dDAI.

Bước quan trọng là, kẻ tấn công đã lợi dụng lỗ hổng của hàm donateToReserves, đã quyên góp số tiền gấp 10 lần số tiền hoàn trả, tức là 100 triệu eDAI. Hành động này đã cho phép kẻ tấn công kích hoạt cơ chế thanh lý, từ đó thu được 310 triệu dDAI và 250 triệu eDAI.

Cuối cùng, kẻ tấn công đã lấy được 38,9 triệu DAI thông qua chức năng rút tiền, hoàn trả 30 triệu DAI khoản vay nhanh, và cuối cùng thu lợi khoảng 8,87 triệu DAI.

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị cuộc tấn công cho vay chớp nhoáng, thiệt hại 1.97 triệu đô la!

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị cuộc tấn công cho vay chớp nhoáng, thiệt hại 1.97 triệu đô la!

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị cuộc tấn công cho vay chớp nhoáng, thiệt hại 1.97 triệu đô la!

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị cuộc tấn công cho vay chớp nhoáng, thiệt hại 1.97 triệu đô la!

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị cuộc tấn công cho vay chớp nhoáng, thiệt hại 1.97 tỷ đô la!

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị tấn công cho vay chớp nhoáng, tổn thất 1.97 triệu đô la!

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị cuộc tấn công cho vay chớp nhoáng, thiệt hại 1.97 triệu đô la!

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị cuộc tấn công cho vay chớp nhoáng, thiệt hại 1.97 triệu USD!

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị tấn công cho vay chớp nhoáng, thiệt hại 1.97 triệu USD!

Phân tích nguyên nhân lỗ hổng

Lỗ hổng cốt lõi của cuộc tấn công này nằm ở hàm donateToReserves của Euler Finance, thiếu kiểm tra thanh khoản cần thiết. So với các hàm quan trọng khác (như hàm mint), hàm donateToReserves không gọi checkLiquidity để xác thực thanh khoản của người dùng.

Trong điều kiện bình thường, hàm checkLiquidity sẽ gọi mô-đun RiskManager để đảm bảo số lượng eToken của người dùng lớn hơn số lượng dToken, nhằm duy trì tính an toàn của hệ thống. Tuy nhiên, do hàm donateToReserves thiếu bước quan trọng này, kẻ tấn công có thể thao túng trạng thái tài khoản của chính mình để phù hợp với điều kiện bị thanh lý, sau đó thực hiện thanh lý để thu lợi.

Phân tích lỗ hổng Euler Finance: Làm thế nào để bị cuộc tấn công cho vay chớp nhoáng, thiệt hại 1.97 triệu đô la!

Đề xuất an toàn

Đối với các cuộc tấn công cho vay chớp nhoáng như vậy, chúng tôi khuyên các dự án blockchain:

  1. Thực hiện kiểm toán an ninh toàn diện trước khi hợp đồng thông minh được ra mắt, đặc biệt chú ý đến các khía cạnh quan trọng như vay vốn, quản lý thanh khoản và thanh lý nợ.

  2. Thực hiện kiểm tra an ninh nghiêm ngặt đối với tất cả các hàm có thể ảnh hưởng đến trạng thái tài sản của người dùng, bao gồm nhưng không giới hạn ở việc xác minh tính thanh khoản.

  3. Thực hiện kiểm tra mã định kỳ và quét lỗ hổng, kịp thời khắc phục các rủi ro an ninh tiềm ẩn.

  4. Xây dựng cơ chế quản lý rủi ro hoàn thiện, thiết lập hạn mức cho vay hợp lý và ngưỡng thanh lý.

  5. Cân nhắc việc triển khai các biện pháp bảo mật bổ sung như chữ ký đa chữ ký hoặc khóa thời gian để ngăn chặn việc mất mát tài sản lớn.

Bằng cách thực hiện những biện pháp phòng ngừa này, có thể nâng cao đáng kể sự an toàn của các dự án DeFi và giảm thiểu rủi ro bị tấn công tương tự.

EUL-1.42%
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
  • 7
  • Đăng lại
  • Chia sẻ
Bình luận
0/400
ServantOfSatoshivip
· 07-19 18:22
Lại xảy ra sự cố thật tệ
Xem bản gốcTrả lời0
MercilessHalalvip
· 07-19 08:53
Lại thấy vùng mù hợp đồng
Xem bản gốcTrả lời0
DYORMastervip
· 07-17 03:24
Lại một lần nữa hợp đồng đã rơi vào hố.
Xem bản gốcTrả lời0
StableNomadvip
· 07-17 03:24
Một dự án biến thành gạch khác
Xem bản gốcTrả lời0
LightningSentryvip
· 07-17 03:19
Lại bị hái một đợt lông cừu.
Xem bản gốcTrả lời0
just_another_fishvip
· 07-17 03:11
Kiểm toán hợp đồng là điều không thể thiếu
Xem bản gốcTrả lời0
BitcoinDaddyvip
· 07-17 02:56
Lại thấy sự cố hợp đồng thông minh rồ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)