Tiêu đề gốc: "Các giao thức DeFi tiếp tục bị hack do cùng một bài toán cơ bản"
Tác giả gốc: Osato Avan-Nomayo, DLNews
Bản tổng hợp gốc: Luccy, BlockBeats
blockquote>Ghi chú của biên tập viên:BlockBeats Tin tức, vào ngày 11 tháng 11, giao thức stablecoin Raft đã bị tấn công, với thiệt hại lên tới khoảng 3,3 triệu USD. Kẻ tấn công đã đúc ra stablecoin R và sau đó bán nó để làm cạn kiệt tính thanh khoản của nhà tạo lập thị trường tự động, đồng thời rút tài sản thế chấp khỏi Raft. Vào ngày 17 tháng 11, Raft tuyên bố rằng cuộc tấn công sẽ diễn ra Người dùng bị ảnh hưởng phải bồi thường 3,96 triệu DAI.Phóng viên DeFi có trụ sở tại Nigeria của DLNews Osato Avan-Nomayo đã phân tích rằng vụ trộm Raft Finance cho thấy các nhà xây dựng DeFi đang phải đối mặt với một thách thức toán học hóc búa. Với sự xuất hiện thường xuyên của các lỗ hổng trong phương pháp gần đúng, tin tặc tận dụng cơ hội để đánh cắp tiền từ giao thức. Bất chấp nhiều cuộc kiểm tra, các lỗ hổng tương tự đã ảnh hưởng đến các giao thức DeFi như Balancer và Onyx.Osato xem xét các lỗi làm tròn và mất độ chính xác có thể xảy ra trong môi trường DeFi nơi thực hiện các phép tính toán học phức tạp. Thử thách toán học này làm dấy lên mối lo ngại về tính bảo mật của DeFi, đặc biệt nếu các phương pháp gần đúng không được bảo vệ khỏi các lỗ hổng.
Các nhà xây dựng DeFi phải đối mặt với một câu hỏi hóc búa về toán học - nếu các phương pháp gần đúng mà họ sử dụng trong hợp đồng thông minh không bảo vệ khỏi các lỗ hổng bảo mật, thì tin tặc có thể đánh cắp tiền từ giao thức của họ.
Tuần trước, tin tặc đã đánh cắp 3,6 triệu USD từ giao thức Raft Finance của stablecoin. Tin tặc đã sử dụng các khoản vay flash để thực hiện một cuộc tấn công khai thác lỗ hổng mất độ chính xác trong hợp đồng thông minh Raft. Loại lỗ hổng này xảy ra do lỗi làm tròn khi các con số gần đúng, cho phép tin tặc lấy thêm mã thông báo chia sẻ.
Mặc dù Raft đã trải qua nhiều cuộc kiểm toán bởi các công ty như Trail of Bits và Hats Finance, nhưng lỗ hổng này vẫn chưa được vá.
Vụ hack Raft Finance chỉ là vụ mới nhất trong một loạt vụ trộm DeFi, trong đó những kẻ tấn công nhắm vào các lỗ hổng mất dữ liệu chính xác. Các giao thức DeFi như Balancer và Onyx cũng là đối tượng của các cuộc tấn công như vậy. Thật vậy, giống như Onyx, các phiên bản phân nhánh của giao thức cho vay DeFi Hợp chất cũng bị phát hiện có lỗi làm tròn mã, lỗi này đã bị khai thác, như trường hợp của Hundred Finance và Midas Capital.
Xấp xỉ hoặc làm tròn là sử dụng một số gần giống nhưng không hoàn toàn giống với giá trị thực của số ban đầu, điều này có thể dẫn đến lỗi làm tròn và mất độ chính xác, đặc biệt là trong các giao thức DeFi phức tạp thực hiện nhiều phép tính toán học.
“Tôi thực sự nghĩ DeFi phải đối mặt với những thách thức toán học với việc làm tròn số nguyên,” nhà phát triển hợp đồng thông minh và nhà nghiên cứu bảo mật Tyler Weber nói với DL News.
Đây không phải là vấn đề khi số lỗi do phương pháp gần đúng gây ra là nhỏ, nhưng khi các lỗi tiếp tục tích lũy ở mức đủ lớn, tin tặc sẽ hành động như thể họ đã làm vô số lần. Các giá trị lỗi này bị khai thác như đã thực hiện trong cuộc tấn công.
“Hành vi rất năng động và sáng tạo của một số ứng dụng DeFi có thể cho phép kẻ tấn công khuếch đại tổn thất về độ chính xác ở một mức độ đáng kể,” công ty kiểm toán tiền điện tử ẩn danh Trust Security cho biết. nói với DL News.
“Sự kết hợp giữa cơ chế cho vay nhanh và AMM có tính thanh khoản cao cho phép tin tặc khai thác vấn đề ‘mất giá trị’ về mặt lý thuyết trên quy mô lớn,” Trust cho biết thêm.
Khó phát hiện
Trong mật mã, lỗi làm tròn và mất độ chính xác là phổ biến, và có một số lý do đằng sau việc này.
Nguyên nhân chính là logic tính toán hỗ trợ mã hóa không tương thích với điểm số.
"EVM giống hầu hết mọi kiến trúc điện toán khác ở chỗ nó không hỗ trợ tính toán ở dạng phân số nên có sự mất đi độ chính xác nhất định", Trust nói .
Đồng thời, các mã thông báo có các chữ số thập phân khác nhau. Ví dụ: USDC có sáu chữ số thập phân, trong khi DAI có 18. Trong nhóm giao dịch thực hiện trao đổi giữa hai mã thông báo, một số dạng chia tỷ lệ chính xác phải được thiết kế để tính số vị trí thập phân khác nhau. Chia tỷ lệ chính xác bao gồm việc điều chỉnh số điểm thập phân của nội dung thứ cấp để khớp với số điểm thập phân của nội dung chính.
Ngoài ra, giống như các bài toán số học khác, lỗi làm tròn là cực kỳ khó để người kiểm tra hợp đồng thông minh phát hiện. Trên thực tế, những lỗ hổng này thường bị bỏ qua trong quá trình kiểm tra, dẫn đến các giao thức thậm chí được kiểm tra kỹ lưỡng vẫn trở thành nạn nhân của tin tặc khai thác lỗ hổng này.
"Một sự thay đổi văn hóa"
Vụ hack Raft Finance làm dấy lên lo ngại về mức độ nghiêm trọng xử lý lỗi làm tròn.
"Tôi nghĩ vấn đề không phải là chúng tôi bị giới hạn bởi số nguyên của EVM mà là cách các nhà phát triển và kiểm toán viên xử lý các lỗ hổng loại lỗi làm tròn", Webb giải thích .
Webb kêu gọi "thay đổi văn hóa" và hy vọng rằng các nhà xây dựng và kiểm tra viên DeFi sẽ xử lý các lỗi làm tròn giống như cách họ xử lý các lỗ hổng trong cuộc gọi đệ quy.
Kiểm toán viên hợp đồng thông minh Joe Dakwa nói với DL News rằng thử nghiệm đơn vị mạnh mẽ và thử nghiệm fuzz phải trở thành phương pháp thực hành tiêu chuẩn tốt nhất. Thử nghiệm Fuzz là một loại thử nghiệm có thể được thực hiện trên hợp đồng thông minh trong đó dữ liệu ngẫu nhiên được đưa vào mã để xem có vấn đề gì phát sinh hay không.
Thử nghiệm bất biến, tương tự như thử nghiệm fuzz, cũng nên được thêm vào tổ hợp thử nghiệm, các chuyên gia bảo mật cho biết.
「Liên kết gốc‖
Chào mừng bạn tham gia cộng đồng chính thức của BlockBeats:
Nhóm Telegram đăng ký: https://t.me/theblockbeats
Nhóm Telegram thảo luận: https://t.me/BlockBeats_App
Tài khoản Twitter chính thức: https://twitter.com/BlockBeatsAsia