Vụ trộm tài sản trị giá 160.000 đô la là một sự cố ô long? Phân tích ngắn gọn về sự kiện "Tấn công khoản vay chớp nhoáng" của Yeld.finance
成都链安
2021-02-28 08:36
本文约1576字,阅读全文需要约6分钟
160.000 đô la tài sản bị đánh cắp? Báo động giả.

1. Tổng quan sự kiện

1. Tổng quan sự kiện

https://yeldf.medium.com/the-yeld-dai-earn-vault-has-been-hacked-93f27d475b1b 

Vào ngày 27 tháng 2 năm 2021, theo giờ Bắc Kinh, theo dõi dư luận về [Chain Bi'an-Nền tảng nhận thức tình hình bảo mật chuỗi khối (Beosin-OSINT)], Yeld.finance, một dự án DeFi nổi tiếng, đã đưa ra một thông báo chính thức nói rằng dự án DAI pool bị sét Loan tấn công, link gốc như sau:

2. Phân tích sự kiện

2. Phân tích sự kiện

Mô tả hình ảnh

Như được hiển thị trong Hình 1, giao dịch dành cho người dùng có tên 0xf0f225e0, người đã gọi chức năng gửi tiền của hợp đồng 0xe780cab7ca8014543f194fc431e6bf7dc5c16762. Người ta đã xác nhận rằng hợp đồng 0xef80cab7 là nhóm DAI của bên dự án. Giao dịch này đã tạo ra tổng cộng 6 lần chuyển mã thông báo, được ký hiệu lần lượt là T1 đến T6. Vì vậy, chính xác điều gì đã gây ra những lần chuyển mã thông báo này? Phân tích mã dưới đây:

Mô tả hình ảnh

△Hình 2 mã nguồn chức năng gửi tiền

Rõ ràng, dòng mã thứ 538 tạo ra quá trình chuyển mã thông báo có số thứ tự T1, chuyển mã thông báo (nghĩa là DAI) sang hợp đồng yDAI. Đây là một giao dịch chuyển mã thông báo thông thường, cho biết rằng người dùng đã gửi 9.377 DAI vào hợp đồng yDAI.

Sau đó nhập chức năng cân bằng lại trên dòng 555 để phân tích logic của chức năng.

△Hình 3 mã nguồn chức năng cân bằng lại

Mô tả hình ảnh

Dòng 732 của mã sẽ tính toán newProvider, hàm này sẽ gọi hàm đề xuất (như trong Hình 4) và hàm đề xuất sẽ gọi hợp đồng IEarnAPRWithPool để truy vấn dự án có lãi suất hàng năm (APR) cao nhất trong số 4 dự án Defi DYDX, COMPOUND, AAVE và FULCRUM , kết quả truy vấn được hiển thị trong Hình 5:

Mô tả hình ảnh

Trong số đó, nhóm dYdX có APR cao nhất và newProvider được đặt thành nhóm dYdX. Nhóm hiện tại là nhóm AAVE, hãy nhập khối mã if trên dòng 736 và gọi hàm nội bộ _withdrawAll.

Mô tả hình ảnh

△Hình 6 Mã nguồn chức năng _withdrawAll

Dòng mã thứ 778 sẽ đề xuất tất cả DAI trong nhóm AAVE, dẫn đến việc chuyển mã thông báo có số sê-ri T3-T5. Để biết mã cụ thể, vui lòng tham khảo mã có liên quan của chức năng đổi quà của hợp đồng AAVE (0xfC1E690f61EFd961294b3e1Ce3313fBD8aa4f85d) , sẽ không được mô tả chi tiết ở đây.

Dòng cuối cùng là dòng mã thứ 741, gửi hơn 166.000 DAI từ AAVE vào hợp đồng dYdX và tạo chuyển khoản mã thông báo với số sê-ri T6, có nghĩa là gửi 166.000 DAI vào nhóm dYdX.

Điều đáng chú ý là dYdX đã đóng vai trò của một "người buôn bán lương tâm" trong vụ việc này chứ không phải là đồng phạm trong các cuộc tấn công cho vay chớp nhoáng trước đó.

3. Khuyến nghị bảo mật

3. Khuyến nghị bảo mật

Mặc dù sự cố này được đánh giá là sai sau khi phân tích bởi nhóm bảo mật của Thành Đô Chain Security (Beosin), nhưng vẫn cần phải nhắc nhở tất cả các bên dự án rằng vẫn cần đưa ra cảnh báo sớm và bảo vệ chống lại các cuộc tấn công cho vay chớp nhoáng trong bảo vệ an ninh hàng ngày công việc.Đề phòng.

成都链安
作者文库