Theo giám sát rủi ro bảo mật Beosin EagleEye, cảnh báo sớm và giám sát nền tảng chặn của công ty kiểm toán bảo mật chuỗi khối Beosin**, hợp đồng LibertiVault trên chuỗi Polygon đã bị tấn công và thiệt hại khoảng 123ETH và 56.234USDT trị giá khoảng 290.000 đô la Mỹ và chuỗi Ethereum 35ETH và 96223USDT trị giá khoảng 160.000 đô la Mỹ, tổng cộng hơn 450.000 đô la Mỹ. **Nhân viên kỹ thuật đã phân tích và phát hiện ra rằng cuộc tấn công này là do lỗ hổng đăng nhập lại trong hợp đồng LibertiVault.
Kẻ tấn công đã vay 5 triệu USDT bằng cách sử dụng khoản vay chớp nhoáng và gọi chức năng gửi tiền của hợp đồng LibertiVault để cầm cố. Logic cầm cố sẽ sử dụng một phần token đã cầm cố để trao đổi, sau đó tính toán số lượng coin được đúc. Số lượng tiền được đúc dựa trên hợp đồng và tiền gửi Việc tính toán dựa trên tỷ lệ giữa số lượng mã thông báo được gửi so với số dư trước khi hợp đồng được gửi.
Hoán đổi hoạt động trao đổi sẽ gọi hợp đồng của hacker, lúc này hacker nhập lại khoản tiền gửi cuộc gọi lần đầu tiên và nhập lại chức năng này lần thứ hai, gửi 2,5 triệu USDT vào hợp đồng.
Sau lần vào lại thứ hai, hợp đồng sẽ đúc xu cho hacker theo tỷ lệ 2,5 triệu USDT so với số dư USDT của hợp đồng trước đó. Sau khi hoàn thành chức năng gửi tiền của lần vào lại đầu tiên, hacker gửi thêm 2,5 triệu USDT vào đó.
Tại thời điểm này, hoạt động trao đổi trong chức năng gửi tiền bên ngoài đã hoàn tất và hợp đồng sẽ đúc tiền theo tỷ lệ 2,5 triệu USDT trên số dư USDT của hợp đồng.
Vấn đề nằm ở điểm thứ 4. Nói một cách logic, phép tính thứ hai của số dư hợp đồng phải là số dư trước đó cộng với số dư 2,5 triệu được nhập lần đầu tiên làm tham số cho phép tính này, nhưng đây là ở dạng nhập lại, số dư hợp đồng đã được lấy ngay từ đầu, vì vậy các tham số không thay đổi và số dư ban đầu vẫn được sử dụng để tính toán, dẫn đến việc tạo ra một số lượng lớn mã thông báo chứng từ cho tin tặc.
Cuối cùng, tin tặc đã xóa các mã thông báo và trả lại khoản vay nhanh để kiếm lợi nhuận.
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 tích cuộc tấn công vào Hợp đồng LibertiVault trên Chuỗi đa giác
Theo giám sát rủi ro bảo mật Beosin EagleEye, cảnh báo sớm và giám sát nền tảng chặn của công ty kiểm toán bảo mật chuỗi khối Beosin**, hợp đồng LibertiVault trên chuỗi Polygon đã bị tấn công và thiệt hại khoảng 123ETH và 56.234USDT trị giá khoảng 290.000 đô la Mỹ và chuỗi Ethereum 35ETH và 96223USDT trị giá khoảng 160.000 đô la Mỹ, tổng cộng hơn 450.000 đô la Mỹ. **Nhân viên kỹ thuật đã phân tích và phát hiện ra rằng cuộc tấn công này là do lỗ hổng đăng nhập lại trong hợp đồng LibertiVault.
Kẻ tấn công đã vay 5 triệu USDT bằng cách sử dụng khoản vay chớp nhoáng và gọi chức năng gửi tiền của hợp đồng LibertiVault để cầm cố. Logic cầm cố sẽ sử dụng một phần token đã cầm cố để trao đổi, sau đó tính toán số lượng coin được đúc. Số lượng tiền được đúc dựa trên hợp đồng và tiền gửi Việc tính toán dựa trên tỷ lệ giữa số lượng mã thông báo được gửi so với số dư trước khi hợp đồng được gửi.
Hoán đổi hoạt động trao đổi sẽ gọi hợp đồng của hacker, lúc này hacker nhập lại khoản tiền gửi cuộc gọi lần đầu tiên và nhập lại chức năng này lần thứ hai, gửi 2,5 triệu USDT vào hợp đồng.
Sau lần vào lại thứ hai, hợp đồng sẽ đúc xu cho hacker theo tỷ lệ 2,5 triệu USDT so với số dư USDT của hợp đồng trước đó. Sau khi hoàn thành chức năng gửi tiền của lần vào lại đầu tiên, hacker gửi thêm 2,5 triệu USDT vào đó.
Tại thời điểm này, hoạt động trao đổi trong chức năng gửi tiền bên ngoài đã hoàn tất và hợp đồng sẽ đúc tiền theo tỷ lệ 2,5 triệu USDT trên số dư USDT của hợp đồng.
Vấn đề nằm ở điểm thứ 4. Nói một cách logic, phép tính thứ hai của số dư hợp đồng phải là số dư trước đó cộng với số dư 2,5 triệu được nhập lần đầu tiên làm tham số cho phép tính này, nhưng đây là ở dạng nhập lại, số dư hợp đồng đã được lấy ngay từ đầu, vì vậy các tham số không thay đổi và số dư ban đầu vẫn được sử dụng để tính toán, dẫn đến việc tạo ra một số lượng lớn mã thông báo chứng từ cho tin tặc.
Cuối cùng, tin tặc đã xóa các mã thông báo và trả lại khoản vay nhanh để kiếm lợi nhuận.