Phân tích sự kiện dễ bị tổn thương Reentrancy Cream Finance
创宇区块链安全实验室
2021-09-01 10:08
本文约853字,阅读全文需要约3分钟
Vào ngày 30 tháng 8, Cream Finance, một giao thức DeFi trên Ethereum, đã bị tấn công bởi lỗ hổng reentrancy, dẫn đến khoản lỗ hơn 18 triệu đô la.

lời tựa

Vào ngày 30 tháng 8, Phòng thí nghiệm bảo mật chuỗi khối KNOW Chuangyu đã phát hiện ra rằng Cream Finance, một giao thức DeFi trên Ethereum, đã bị tấn công bởi lỗ hổng reentrancy, dẫn đến thiệt hại hơn 18 triệu đô la Mỹ. Phòng thí nghiệm đã theo dõi và phân tích sự cố càng sớm càng tốt.

đối tượng tham gia

đối tượng tham gia

0x38c40427efbaae566407e4cde2a91947df0bd22b

0x0ec306d7634314d35139d1df4a630d829475a125

Cuộc tấn công liên quan đến địa chỉ hợp đồng:

CErc20Delegator:0x2db6c82ce72c8d7d770ba1b5f5ed0b6e075066d6

CEther:0xd06527d5e56a3495252a528c4987003b712860ee

Amp:0xff20817765cb7f73d4bde2e66e067e58d11095c2

Nạn nhân liên quan đến địa chỉ hợp đồng:

Mô tả ngắn gọn quá trình tấn công

(1) Đầu tiên, tin tặc cho vay vốn khởi nghiệp 500 ETH thông qua hợp đồng 0x38c4 cho khoản vay nhanh

(2) Thế chấp ETH để lấy chứng chỉ

(3) Gọi hợp đồng CErc20Delegator thông qua hợp đồng 0x38c4 để cho vay 19.480.000 AMP

(4) Tiếp tục gọi hợp đồng CEther để cho vay 355 ETH thông qua lỗ hổng reentrancy

(5) Sử dụng hợp đồng 0x0ec3 để thanh lý khoản vay thừa trên hợp đồng 0x38c4

(7) Trả lại khoản vay nhanh

Phân tích nguyên nhân dễ bị tổn thương

Phân tích nguyên nhân dễ bị tổn thương

điều kiện lợi nhuận

Đầu tiên, hàm loanFresh chuyển qua hàm doTransferOut khi một khoản vay xảy ra, sau đó ghi lại những thay đổi mới nhất

Hàm truyền có trong hàm doTransferOut sẽ sử dụng hàm _callPostTransferHooks để gọi lại hàm tokensReceived của hợp đồng gọi

tóm tắt

tóm tắt

Sự cố bảo mật khoản vay chớp nhoáng này chủ yếu là do cuộc khủng hoảng tái nhập do bên dự án không xem xét tính tương thích giữa các giao thức khi thiết kế mã thông báo. -lỗ hổng xâm nhập.Nếu bên dự án phát hiện và theo dõi kịp thời, họ sẽ có thể giảm thiểu hoặc thậm chí tránh được tổn thất.


创宇区块链安全实验室
作者文库