Cointime

Download App
iOS & Android

Báo cáo phân tích bảo mật chuỗi: Báo cáo phân tích rủi ro tập trung hợp đồng thông minh iZiFinance

Validated Project

iZiFinance là một giao thức tài chính phi tập trung sử dụng zkSync, một giải pháp mở rộng lớp 2 cho Ethereum. zkSync cho phép giao dịch nhanh và chi phí thấp trên Ethereum trong khi vẫn giữ được tính bảo mật và khả năng kết hợp của mạng lớp 1. Tuy nhiên, tối ưu hóa gas vẫn là một khía cạnh quan trọng khi thực hiện phát triển hợp đồng thông minh trên zkSync, vì nó ảnh hưởng đến hiệu suất và lợi nhuận của giao thức.

Trong phân tích này, chúng tôi sẽ kiểm tra một trong những hợp đồng cốt lõi của iZiFinance, iZiSwapPool.sol và tìm ra một cách đơn giản để giảm mức tiêu thụ gas bằng cách loại bỏ biểu thức dư thừa.

hợp đồng iZiSwapPool

Hợp đồng iZiSwapPool thực hiện logic của nhóm thanh khoản và trao đổi mã thông báo trên iZiFinance. Nó tuân theo giao diện IiZiSwapPool, giao diện này xác định các chức năng và sự kiện của hợp đồng. Một trong những chức năng này là modifyFeeChargePercent, cho phép chủ sở hữu hợp đồng điều chỉnh tỷ lệ phần trăm phí tính trên mỗi nhóm. Tỷ lệ phần trăm thu phí là một tham số xác định việc phân phối phí trao đổi giữa các nhà cung cấp thanh khoản và giao thức. Mã của hàm modifyFeeChargePercent như sau:

Hàm này chấp nhận một tham số thuộc loại uint24 được gọi là newFeeChargePercent, đại diện cho tỷ lệ phần trăm tính phí mới sẽ được đặt. Nó cũng có một số công cụ sửa đổi và câu lệnh yêu cầu để đảm bảo rằng chỉ chủ sở hữu mới có thể gọi hàm và newFeeChargePercent là hợp lệ. Phân tích mã Mã hợp đồng này được viết bằng Solidity, đại diện cho chức năng sửa đổi tỷ lệ phần trăm thu phí. Có vẻ như nó đã được thiết kế theo cách an toàn, có tính đến các hạn chế được áp dụng trước khi sửa đổi thực tế (dòng 534-536).

Tuy nhiên, dòng 535 require(newFeeChargePercent >= 0, "FP0"); thực sự không cần thiết. Điều này là do trong Solidity, kiểu dữ liệu uint (unsigned integer) không được âm. uint24 là một loại số nguyên không dấu nằm trong khoảng từ 0 đến 2^24 - 1.

Do đó, việc kiểm tra xem newFeeChargePercent có lớn hơn hoặc bằng 0 hay không là một phép lặp, bởi vì một số nguyên không dấu không thể nhỏ hơn 0 theo định nghĩa. Do đó, dòng này tạo thành một tautology và có thể được gỡ bỏ một cách an toàn mà không ảnh hưởng đến chức năng của mã hoặc tạo ra bất kỳ lỗ hổng bảo mật nào. Dòng ngay sau nó, require(newFeeChargePercent <= 100, "FP0");, đủ để đảm bảo rằng newFeeChargePercent nằm trong phạm vi dự kiến ​​(0-100).

rủi ro tập trung

Chúng tôi cũng đã xác định một số rủi ro tập trung có thể ảnh hưởng đến tính bảo mật của giao thức và tính bảo mật của tài sản người dùng.

rủi ro tập trung

Chúng tôi cũng đã xác định một số rủi ro tập trung có thể ảnh hưởng đến tính bảo mật của giao thức và tính bảo mật của tài sản người dùng.

Lời khuyên an toàn

Đối với nhóm dự án iZiFinance, đây là 10 mẹo an toàn để bảo vệ tài sản trên chuỗi của người dùng khỏi rủi ro tập trung.

  1. Khóa thời gian được áp dụng cho các chức năng chính như setFarm() và setWrapToken(), chỉ cho phép sửa đổi tại một thời điểm xác định trong tương lai, giúp cộng đồng có thời gian thảo luận và đạt được sự đồng thuận
  2. Yêu cầu phê duyệt nhiều chữ ký của nhiều địa chỉ ví để gọi các chức năng như enableFeeAmount() và newPool() ảnh hưởng đến phí và phần thưởng
  3. Triển khai kiểm soát truy cập dựa trên vai trò cho các chức năng như expandObservationQueue() và CollectFeeCharged(), hạn chế chỉ gọi các vai trò được chỉ định
  4. Khi hợp đồng được triển khai, hãy đặt các tham số cốt lõi như startBlock, endBlock, bonusPerBlock không thay đổi và các thay đổi tiếp theo không được phép
  5. Thiết lập cấu trúc quản trị DAO yêu cầu cộng đồng đề xuất và bỏ phiếu cho các cuộc gọi đến các chức năng nhạy cảm
  6. Áp dụng kiến ​​trúc mô-đun để phân tách trách nhiệm và tránh tập trung quá mức vào bất kỳ mô-đun đơn lẻ nào
  7. Thiết lập cơ chế dừng khẩn cấp với xác thực đa chữ ký, có thể tạm dừng thỏa thuận nếu xảy ra sự cố
  8. Thường xuyên tiến hành kiểm toán bảo mật bên ngoài và xử lý các vấn đề được phát hiện kịp thời để giảm rủi ro kiểm soát tập trung
  9. Trong quá trình phát triển, sử dụng fuzzing và các phương pháp khác để xác định và loại bỏ các lỗ hổng kiểm soát tập trung
  10. Tuân thủ nguyên tắc đặc quyền tối thiểu và chỉ cấp cho vai trò và tài khoản những quyền tối thiểu cần thiết

Những rủi ro tập trung hóa này xuất phát từ thực tế là chủ sở hữu hợp đồng có thể có quyền kiểm soát quá mức đối với các tham số và chức năng của hợp đồng, điều này có thể cho phép chủ sở hữu thao túng giao thức hoặc gây hại cho người dùng. Chúng tôi cũng hy vọng phân tích này có thể cung cấp một số hiểu biết hữu ích và đề xuất bảo mật để cải thiện hợp đồng thông minh của iZiFinance.

Theo chúng tôi

Twitter: @MetaTrustLabs

Trang web: metatrust.io

Các bình luận

Tất cả bình luận

Recommended for you

  • CoinTime ngày 2 tháng 6 Tin tức nhanh

    1. Thượng nghị sĩ Hoa Kỳ: Đã mua 3 máy khai thác Bitcoin và bắt đầu khai thác ở Texas 2. Tổng giá trị thị trường của stablecoin là 160,583 tỷ USD và thị phần của USDT đạt 69,59% 3. Coinbase trong hai tháng qua Có dòng tiền chảy ròng là 40.406 BTC, trị giá 2,7 tỷ USD 4. Truyền thông nước ngoài: Trump chấp nhận Bitcoin Lightning Network để trả tiền quyên góp cho chiến dịch 5. Một con cá voi nào đó một lần nữa đã chuyển tổng cộng 149,9 tỷ PEPE từ Binance, trị giá 2,3 triệu USD 6,5 Doanh thu khai thác Bitcoin giảm đáng kể xuống còn 963 triệu USD, giảm 46% 7. Vào tháng 5, doanh số bán NFT trên chuỗi Solana chưa đến 100 triệu USD, mức thấp mới trong sáu tháng qua 8. Một địa chỉ đã mua 19,6 triệu MOTHER với giá 78.700 USD, hiện trị giá khoảng 1,1 triệu USD. Địa chỉ liên kết của Amber Group đã được nạp vào Binance 2,96 triệu TRƯỚC, trị giá 4,26 triệu USD 10. Vào tháng 5, các quỹ ETF Bitcoin giao ngay của Hoa Kỳ đã tăng lượng nắm giữ của họ lên tổng cộng 29.592 BTC

  • CoinTime Ngày 1 tháng 6 Tin tức nhanh

    1. Ủy ban Chứng khoán và Tương lai Hồng Kông cập nhật danh sách các nền tảng giao dịch tài sản ảo và 11 nền tảng được coi là đã được cấp phép

  • Ủy ban Chứng khoán và Tương lai Hồng Kông cập nhật danh sách các nền tảng giao dịch tài sản ảo và 11 nền tảng được cho là đã được cấp phép

    Theo tin tức ngày 1/6, Ủy ban Chứng khoán và Tương lai Hồng Kông đã cập nhật danh sách các nền tảng giao dịch tài sản ảo Theo Quy định chống rửa tiền và tài trợ khủng bố, HKbitEX, PantherTrade, Accumulus, DFXLabs, Bixin.com, xWhale, YAX. , Bullish, Crypto.com, WhaleFin, Tổng cộng có 11 nền tảng của MatrixportHK được coi là đã được cấp phép; chỉ có 6 nền tảng bao gồm BGE, HKVAX, VDX, bitV, HKX và bitcoinworld còn lại trong danh sách ứng dụng nhưng không được coi là được cấp phép. được cấp phép. Ủy ban Chứng khoán và Tương lai Hồng Kông nhắc nhở công chúng rằng tất cả những người đăng ký nền tảng giao dịch tài sản ảo được liệt kê trong danh sách đều chưa được cấp phép và có thể không tuân thủ các yêu cầu của Ủy ban Chứng khoán và Tương lai Hồng Kông gần đây đã nhắc nhở. công khai rằng các giao dịch tài sản ảo hoạt động tại Hồng Kông theo Pháp lệnh chống rửa tiền Thời gian không vi phạm của nền tảng sẽ kết thúc vào ngày 1 tháng Sáu.

  • Nhà nghiên cứu mô hình: Uniswap đã hoãn cuộc bỏ phiếu "Phần thưởng đặt cược và ủy quyền UNI" vì áp lực từ một VC nào đó

    Để đáp lại việc “Uniswap tạm hoãn việc đặt cược UNI và bỏ phiếu khen thưởng phái đoàn dự kiến ​​vào thứ Sáu”, nhà nghiên cứu Dan Robinson của Paradigm đã đăng về các đề xuất thúc đẩy các dự án ‘con cưng’ của riêng họ,” Robinson nói mà không chỉ rõ VC nào. Theo tin tức trước đó, Uniswap Foundation đã hoãn cuộc bỏ phiếu thưởng ủy quyền và đặt cược UNI dự kiến ​​​​vào thứ Sáu vì một bên liên quan đã thảo luận về một số vấn đề mà nền tảng cần chú ý và yêu cầu thẩm định bổ sung để xem xét toàn diện. Do tính bất biến và nhạy cảm của đề xuất. nâng cấp, người ta quyết định hoãn bỏ phiếu.

  • Polyhedra phản hồi Matter Labs: Không thực hiện độc quyền dưới danh nghĩa phát triển cộng đồng, ngành nghề, mong rút đơn đăng ký nhãn hiệu ZK

    Mạng Polyhedra đã đưa ra phản hồi sau về "Vì mục đích phòng thủ": zkSync đã hiển thị ứng dụng nhãn hiệu ZK cho sàn giao dịch và cố gắng chiếm đoạt mã ZK thông qua ứng dụng nhãn hiệu ZK. Điều này không nhằm mục đích phòng thủ; 2. Về "Chúng tôi bày tỏ lòng biết ơn đối với Vitalik Buterin...": Không có bằng chứng nào cho thấy Vitalik đã hỗ trợ Matter Labs trong đơn đăng ký nhãn hiệu. Trên thực tế, các nhà phát minh của ZK, Silvio Micali và Shafi, đã bày tỏ sự phản đối đối với nhãn hiệu ZK 3. Về việc “thành lập một pháp nhân không có chủ sở hữu với mục đích duy nhất là nắm giữ nhãn hiệu 'ZK' và khóa tương tự; Công việc này phải được dẫn dắt bởi một tổ chức hoặc thành viên cộng đồng đáng tin cậy, khách quan và trung lập”: Trong các lĩnh vực khác, chẳng hạn như trí tuệ nhân tạo, mọi người đều có thể gọi nó là AI. Tuy nhiên, không một cá nhân hay công ty nào có thể đăng ký nhãn hiệu AI vì không ai có thể thực sự đại diện hoặc độc quyền về AI. Nếu chúng tôi cho phép một công ty đăng ký nhãn hiệu ZK, điều đó sẽ tạo tiền lệ xấu cho ngành. Rất may, đơn đăng ký của Matter Labs vẫn chưa được phê duyệt. Chúng tôi đang lên tiếng để nâng cao nhận thức trong ngành rằng hành vi này phải được ngăn chặn. Chúng tôi cũng hy vọng rằng Matter Labs sẽ không có hành vi độc quyền và theo đuổi lợi ích ích kỷ của riêng mình dưới danh nghĩa phát triển cộng đồng và ngành. Vui lòng rút đơn đăng ký nhãn hiệu ZK.

  • Tài khoản X chính thức của Frax đã bị xâm phạm, vui lòng không nhấp vào bất kỳ liên kết nào

    Người sáng lập Frax Finance, Sam Kazemian, cho biết trên nền tảng X rằng tài khoản X chính thức của Frax đã bị xâm phạm và người dùng được yêu cầu không nhấp vào bất kỳ liên kết nào.

  • Vị thế mở của các tùy chọn BTC trên toàn bộ mạng là 18,82 tỷ USD và vị thế mở của các tùy chọn ETH là 9,47 tỷ USD.

    Dữ liệu của Coinglass cho thấy giá trị danh nghĩa hiện tại của các vị trí mở trong tùy chọn BTC trên mạng là 18,82 tỷ USD và giá trị danh nghĩa của các vị trí mở trong tùy chọn ETH là 9,47 tỷ USD.

  • Giá trị nắm giữ tiền điện tử tại địa chỉ của Trump đã vượt quá 13,6 triệu USD, tăng hơn 3,3 triệu USD trong tuần này

    Dữ liệu của Arkham cho thấy giá trị tài sản tiền điện tử do cựu Tổng thống Mỹ Donald Trump nắm giữ đã tăng hơn 3,3 triệu đô la Mỹ trong tuần này và hiện là 13.658.441,37 đô la Mỹ, chủ yếu bao gồm: -579.290 TRUMP, trị giá 9,48 triệu đô la Mỹ; , trị giá 1,76 triệu USD; -374,939 WETH, trị giá 1,42 triệu USD.

  • Đồng xu Meme có chủ đề Trump TRUMP vượt mức 16,3 đô la để đạt mức cao mới, với giá trị thị trường vượt quá 736 triệu đô la

    Dữ liệu thị trường của CoinGecko cho thấy loại tiền meme có chủ đề Trump MAGA (TRUMP) đã vượt qua mức 16,3 USD, tiếp tục đạt mức cao mới; hiện nó đang giao dịch ở mức 16,36 USD, với mức tăng 21,2% trong 24 giờ. Ngoài ra, vốn hóa thị trường hiện tại của TRUMP vượt quá 736 triệu USD.

  • Franklin Templeton Giám đốc Tài sản Kỹ thuật số: Kiên quyết hợp tác với SEC, thái độ của họ đang thay đổi

    Roger Bayston, người đứng đầu bộ phận tài sản kỹ thuật số tại Franklin Templeton, cho biết thật công bằng khi các nhà đổi mới tài chính đang chơi trò chơi lâu dài với SEC. Bayston cho biết tại hội nghị Consensus 2024: “SEC, giống như nhiều cơ quan quản lý, có xu hướng dựa vào các tiền lệ pháp lý. Những tiền lệ đó thường được đưa ra tại tòa án, vì vậy đó chỉ là một quá trình mà chúng tôi tham gia”. về "cổng thông tin" của SEC Ông bày tỏ nghi ngờ về chính sách "mở cửa", nhưng Bayston tin rằng hành động của cơ quan này là để bảo vệ nền kinh tế và không phải là không thể vượt qua: "Nếu chúng ta không có kỷ luật, sự kiên trì và hợp tác với các cơ quan quản lý toàn cầu , chúng tôi sẽ không thể tồn tại được 76 năm trong ngành đáng tin cậy này.” Bayston lưu ý rằng mọi thứ đang thay đổi tại SEC so với năm ngoái. Ông nói: “Chúng tôi luôn có mối liên hệ tốt với SEC… và chúng tôi rất vui mừng về sự thay đổi thái độ của họ”.