
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.