Thấy ông chủ onekey bảo vệ quyền lợi Resupply, mất vài triệu tài sản, cảm thán Defi thật sự quá mong manh. Nhìn quanh, dường như không ai nói rõ ràng về cách mà hacker tấn công, vì vậy tôi đã tự nghiên cứu một chút và chia sẻ với mọi người: Nhân vật chính trong câu chuyện là ResupplyPair, người dùng có thể vay mượn tài sản bằng cách thế chấp. Modifier isSolvent trong hợp đồng chịu trách nhiệm kiểm tra xem người dùng có đủ điều kiện để yêu cầu vay tài sản hay không, logic mã cụ thể là: Có thể thấy dòng 282 tính toán ltv, nếu chúng ta có cách đặt _exchangeRate thành 0, thì việc kiểm tra không phải lúc nào cũng đúng sao? Tiếp tục đọc mã: Có thể thấy giá trị này là biến đến từ việc gọi oracle getPrices, và là mẫu số, nói cách khác, chúng ta cần làm cho giá của tài sản thế chấp cực lớn. Đọc mã của oracle có thể biết getPrices chỉ là một lớp chuyển tiếp, thực tế là gọi giao diện convertToAssets của tài sản thế chấp (tức là kho). Tiếp tục đọc mã: Có thể thấy kết quả này được tạo thành từ các phép toán toán học rất phức tạp, hacker đã phóng đại mẫu số, và hơn nữa là total_assets, hoàn thành cuộc tấn công, xem xét việc thực hiện hàm _total_assets có thể phát hiện: Giá trị này liên quan đến borrowed_token mà hợp đồng controller của kho nắm giữ, tức là crvUSD. Phân tích đến đây thì đã rõ ràng, ResupplyPair khi được tạo ra đã sử dụng một kho rỗng, hacker đã chuyển một lượng borrowed_token nhất định vào hợp đồng controller của kho, cuối cùng làm cho _exchangeRate về 0, từ đó làm cho giá trị tài sản thế chấp của mình tăng vô hạn, với chi phí cực nhỏ đã vay được tới 10 triệu reUSD. Giao dịch tấn công: Địa chỉ hợp đồng ResupplyPair: Địa chỉ hợp đồng controller của kho: Địa chỉ hợp đồng kho: Địa chỉ hợp đồng oracle:
Hiển thị ngôn ngữ gốc
68,36 N
307
Nội dung trên trang này được cung cấp bởi các bên thứ ba. Trừ khi có quy định khác, OKX không phải là tác giả của bài viết được trích dẫn và không tuyên bố bất kỳ bản quyền nào trong các tài liệu. Nội dung được cung cấp chỉ nhằm mục đích thông tin và không thể hiện quan điểm của OKX. Nội dung này không nhằm chứng thực dưới bất kỳ hình thức nào và không được coi là lời khuyên đầu tư hoặc lời chào mời mua bán tài sản kỹ thuật số. Việc sử dụng AI nhằm cung cấp nội dung tóm tắt hoặc thông tin khác, nội dung do AI tạo ra có thể không chính xác hoặc không nhất quán. Vui lòng đọc bài viết trong liên kết để biết thêm chi tiết và thông tin. OKX không chịu trách nhiệm về nội dung được lưu trữ trên trang web của bên thứ ba. Việc nắm giữ tài sản kỹ thuật số, bao gồm stablecoin và NFT, có độ rủi ro cao và có thể biến động rất lớn. Bạn phải cân nhắc kỹ lưỡng xem việc giao dịch hoặc nắm giữ tài sản kỹ thuật số có phù hợp hay không dựa trên tình hình tài chính của bạn.