An toàn DeFi: Hướng dẫn phòng ngừa Khoản vay nhanh, thao túng giá cả và tấn công tái nhập

robot
Đang tạo bản tóm tắt

Tài chính phi tập trung các lỗ hổng bảo mật thường gặp và biện pháp phòng ngừa

Gần đây, một chuyên gia an ninh đã chia sẻ một khóa học an toàn DeFi cho các thành viên trong cộng đồng. Chuyên gia đã điểm lại các sự kiện an ninh lớn mà ngành Web3 đã trải qua trong hơn một năm qua, và thảo luận sâu về nguyên nhân của những sự kiện này cũng như cách để tránh chúng, tóm tắt các lỗ hổng an ninh phổ biến trong hợp đồng thông minh và các biện pháp phòng ngừa, đồng thời đưa ra một số lời khuyên an ninh cho các nhà dự án và người dùng thông thường.

Các loại lỗ hổng DeFi thường gặp bao gồm vay chớp nhoáng, thao túng giá, vấn đề quyền hạn của hàm, gọi ngoại bộ tùy ý, vấn đề hàm fallback, lỗ hổng logic kinh doanh, rò rỉ khóa riêng và tấn công tái nhập. Bài viết này sẽ tập trung vào ba loại: vay chớp nhoáng, thao túng giá và tấn công tái nhập.

Cobo Tài chính phi tập trung an toàn (phần 2): Lỗ hổng bảo mật thường gặp trong Tài chính phi tập trung và biện pháp phòng ngừa

Vay tiền nhanh

Vay chớp nhoáng là một sự đổi mới trong Tài chính phi tập trung, nhưng cũng thường bị tin tặc lợi dụng. Kẻ tấn công thường vay mượn một lượng lớn tiền thông qua vay chớp nhoáng, thao túng giá cả hoặc tấn công vào logic kinh doanh. Các nhà phát triển cần xem xét xem chức năng hợp đồng có thể bị bất thường do số tiền khổng lồ hay không, hoặc bị lợi dụng để tương tác với nhiều hàm trong một giao dịch nhằm nhận phần thưởng không chính đáng.

Nhiều dự án Tài chính phi tập trung (DeFi) có vẻ như mang lại lợi suất cao, nhưng thực tế trình độ của các bên dự án lại không đồng đều. Một số dự án có thể mua mã nguồn, ngay cả khi mã nguồn không có lỗ hổng, thì về mặt logic vẫn có thể tồn tại vấn đề. Chẳng hạn, một số dự án sẽ phát thưởng theo số lượng token mà người nắm giữ có vào thời gian cố định, nhưng lại bị kẻ tấn công lợi dụng vay chớp nhoáng để mua một lượng lớn token, dẫn đến phần lớn phần thưởng chảy vào tay kẻ tấn công.

Kiểm soát giá

Vấn đề thao túng giá cả liên quan chặt chẽ đến vay nhanh, chủ yếu do một số tham số trong việc tính toán giá có thể bị người dùng kiểm soát. Có hai loại vấn đề phổ biến:

  1. Sử dụng dữ liệu bên thứ ba khi tính giá, nhưng cách sử dụng không đúng hoặc thiếu kiểm tra, dẫn đến giá cả bị thao túng ác ý.
  2. Sử dụng số lượng token của một số địa chỉ làm biến số tính toán, trong khi số dư token của các địa chỉ này có thể được tăng hoặc giảm tạm thời.

Tấn công tái nhập

Một trong những rủi ro chính khi gọi hợp đồng bên ngoài là chúng có thể chiếm quyền kiểm soát luồng điều khiển và thực hiện các thay đổi không mong đợi đối với dữ liệu. Một ví dụ điển hình về tấn công tái nhập là trong hàm rút tiền, số dư của người dùng chỉ được đặt thành 0 vào cuối hàm, dẫn đến việc gọi nhiều lần vẫn có thể rút tiền thành công.

Đối với các hợp đồng khác nhau, phương thức tấn công tái nhập rất đa dạng, có thể liên quan đến nhiều hàm khác nhau hoặc nhiều hợp đồng khác nhau. Khi giải quyết vấn đề tái nhập, cần chú ý đến những điểm sau:

  1. Không chỉ phải ngăn chặn vấn đề tái nhập của một hàm đơn.
  2. Tuân theo mô hình Checks-Effects-Interactions để lập trình
  3. Sử dụng bộ sửa đổi chống gọi lại đã được kiểm tra qua thời gian

Cần lưu ý rằng việc tái tạo bánh xe thường rất nguy hiểm. Trong cộng đồng Web3 đã có nhiều thực tiễn an toàn tốt nhất, việc áp dụng trực tiếp những giải pháp trưởng thành này thì an toàn hơn là tự phát triển.

Đề xuất an toàn

Đề xuất an toàn từ dự án

  1. Tuân thủ các thực hành an ninh tốt nhất trong phát triển hợp đồng
  2. Thực hiện tính năng nâng cấp và tạm dừng hợp đồng
  3. Áp dụng cơ chế khóa thời gian
  4. Tăng cường đầu tư vào an ninh, thiết lập hệ thống an ninh hoàn thiện
  5. Nâng cao nhận thức về an toàn cho tất cả nhân viên
  6. Ngăn chặn hành vi xấu nội bộ, tăng cường quản lý rủi ro trong khi nâng cao hiệu quả
  7. Cẩn thận khi đưa vào các thành phần bên thứ ba, tuân theo nguyên tắc "mặc định không an toàn cho cả upstream và downstream"

Người dùng/LP làm thế nào để xác định hợp đồng thông minh có an toàn hay không

  1. Xác nhận hợp đồng có mã nguồn mở không
  2. Kiểm tra xem Chủ sở hữu có sử dụng cơ chế đa chữ ký phi tập trung hay không
  3. Xem tình hình giao dịch hiện có của hợp đồng
  4. Tìm hiểu xem hợp đồng có phải là hợp đồng đại diện, có thể nâng cấp hay không, và có thời gian khóa hay không.
  5. Xác nhận hợp đồng có được nhiều tổ chức kiểm toán chấp nhận hay không và đánh giá quyền Owner có quá lớn hay không.
  6. Lưu ý loại và độ tin cậy của oracle mà dự án sử dụng.

Trong môi trường Web3, nhận thức về an ninh là vô cùng quan trọng. Người dùng nên suy nghĩ nhiều hơn và nâng cao cảnh giác để tránh các rủi ro an ninh tiềm ẩn. Đặc biệt trong thời điểm thị trường không thuận lợi, cần phải cảnh giác với những hành vi lừa đảo có thể xảy ra.

DEFI2.16%
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 thưởng
  • 7
  • Chia sẻ
Bình luận
0/400
AirdropHunterXMvip
· 4giờ trước
又黑又丑的 Khoản vay nhanh
Xem bản gốcTrả lời0
SelfRuggervip
· 07-31 13:56
Lại đến được chơi cho Suckers phải không, hodl là xong.
Xem bản gốcTrả lời0
FlashLoanKingvip
· 07-31 11:16
Lại gặp Khoản vay nhanh yyds
Xem bản gốcTrả lời0
GovernancePretendervip
· 07-31 11:14
Làm bảo vệ an toàn cũng không chữa được số phận đồ ngốc
Xem bản gốcTrả lời0
LiquidatorFlashvip
· 07-31 11:13
Giá biến động 0.3% thì phải quản lý rủi ro rồi, đừng chờ đến khi có cảnh báo bị thanh lý 99.99%.
Xem bản gốcTrả lời0
MEVHunterBearishvip
· 07-31 11:10
Hướng dẫn hàng ngày để bị lừa
Xem bản gốcTrả lời0
rug_connoisseurvip
· 07-31 11:04
Viết nhiều như vậy vẫn như cũ, không phải bị quét sao?
Xem bản gốcTrả lời0
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)