Cointime

Download App
iOS & Android

รายงานการวิเคราะห์ความปลอดภัยของห่วงโซ่: รายงานการวิเคราะห์ความเสี่ยงของ iZiFinance Smart Contract Centralization

Validated Project

iZiFinance เป็นโปรโตคอลการเงินแบบกระจายศูนย์ที่ใช้ zkSync ซึ่งเป็นโซลูชันการปรับขนาดเลเยอร์ 2 สำหรับ Ethereum zkSync เปิดใช้งานธุรกรรมที่รวดเร็วและต้นทุนต่ำบน Ethereum ในขณะที่ยังคงรักษาความปลอดภัยและความสามารถในการรวมของเครือข่ายเลเยอร์ 1 อย่างไรก็ตาม การเพิ่มประสิทธิภาพก๊าซยังคงเป็นส่วนสำคัญเมื่อทำการพัฒนาสัญญาอัจฉริยะบน zkSync เนื่องจากจะส่งผลต่อประสิทธิภาพและความสามารถในการทำกำไรของโปรโตคอล

ในการวิเคราะห์นี้ เราจะตรวจสอบหนึ่งในสัญญาหลักของ iZiFinance ซึ่งก็คือ iZiSwapPool.sol และหาวิธีง่ายๆ ในการลดการใช้ก๊าซโดยกำจัดการแสดงออกที่ซ้ำซ้อน

สัญญา iZiSwapPool

สัญญา iZiSwapPool ใช้ตรรกะของกลุ่มสภาพคล่องและการแลกเปลี่ยนโทเค็นบน iZiFinance เป็นไปตามอินเทอร์เฟซ IiZiSwapPool ซึ่งกำหนดฟังก์ชันและกิจกรรมของสัญญา หนึ่งในฟังก์ชันเหล่านี้คือ modifiedFeeChargePercent ซึ่งช่วยให้เจ้าของสัญญาสามารถปรับเปอร์เซ็นต์การเรียกเก็บค่าธรรมเนียมต่อกลุ่มได้ เปอร์เซ็นต์การเก็บค่าธรรมเนียมเป็นพารามิเตอร์ที่กำหนดการกระจายค่าธรรมเนียมการแลกเปลี่ยนระหว่างผู้ให้บริการสภาพคล่องและโปรโตคอล รหัสของฟังก์ชัน modifiedFeeChargePercent เป็นดังนี้:

ฟังก์ชันนี้ยอมรับพารามิเตอร์ประเภท uint24 ที่เรียกว่า newFeeChargePercent ซึ่งแสดงถึงเปอร์เซ็นต์การเรียกเก็บค่าธรรมเนียมใหม่ที่จะตั้งค่า นอกจากนี้ยังมีตัวแก้ไขบางอย่างและต้องมีคำสั่งเพื่อให้แน่ใจว่าเจ้าของเท่านั้นที่สามารถเรียกใช้ฟังก์ชันได้ และ newFeeChargePercent นั้นถูกต้อง การวิเคราะห์รหัส รหัสสัญญานี้เขียนขึ้นใน Solidity ซึ่งแสดงถึงฟังก์ชันของการปรับเปลี่ยนเปอร์เซ็นต์การเก็บค่าธรรมเนียม ดูเหมือนว่าจะได้รับการออกแบบในลักษณะที่ปลอดภัย โดยคำนึงถึงข้อจำกัดที่ใช้ก่อนการปรับเปลี่ยนจริง (บรรทัดที่ 534-536)

อย่างไรก็ตาม บรรทัด 535 need(newFeeChargePercent >= 0, "FP0"); ไม่จำเป็นจริงๆ นี่เป็นเพราะใน Solidity ชนิดข้อมูล uint (จำนวนเต็มที่ไม่ได้ลงนาม) ไม่สามารถเป็นค่าลบได้ uint24 เป็นประเภทจำนวนเต็มที่ไม่ได้ลงนาม ซึ่งมีตั้งแต่ 0 ถึง 2^24 - 1

ดังนั้น การตรวจสอบว่า newFeeChargePercent มากกว่าหรือเท่ากับ 0 นั้นถือเป็นการสรุปซ้ำ เนื่องจากจำนวนเต็มที่ไม่ได้ลงนามต้องไม่น้อยกว่า 0 ตามคำจำกัดความ ดังนั้น บรรทัดนี้ถือเป็นคำซ้ำซากและสามารถลบออกได้อย่างปลอดภัยโดยไม่กระทบต่อการทำงานของโค้ดหรือทำให้เกิดช่องโหว่ด้านความปลอดภัยใดๆ บรรทัดที่ต่อท้าย ต้อง (newFeeChargePercent <= 100, "FP0"); ก็เพียงพอแล้วที่จะทำให้แน่ใจว่า newFeeChargePercent อยู่ในช่วงที่คาดไว้ (0-100)

ความเสี่ยงจากการรวมศูนย์

เรายังระบุความเสี่ยงของการรวมศูนย์ที่อาจส่งผลต่อความปลอดภัยของโปรโตคอลและความปลอดภัยของทรัพย์สินของผู้ใช้

ความเสี่ยงจากการรวมศูนย์

เรายังระบุความเสี่ยงของการรวมศูนย์ที่อาจส่งผลต่อความปลอดภัยของโปรโตคอลและความปลอดภัยของทรัพย์สินของผู้ใช้

คำแนะนำด้านความปลอดภัย

สำหรับทีมโครงการ iZiFinance ต่อไปนี้เป็นเคล็ดลับความปลอดภัย 10 ข้อเพื่อปกป้องสินทรัพย์บนเครือข่ายของผู้ใช้จากความเสี่ยงจากการรวมศูนย์

  1. การล็อกเวลาถูกกำหนดให้กับฟังก์ชันหลัก เช่น setFarm() และ setWrapToken() ซึ่งอนุญาตให้แก้ไขในเวลาที่กำหนดเท่านั้นในอนาคต ทำให้ชุมชนมีเวลาพูดคุยและบรรลุฉันทามติ
  2. ต้องการการอนุมัติหลายลายเซ็นของที่อยู่กระเป๋าเงินหลายแห่งเพื่อเรียกใช้ฟังก์ชัน เช่น enableFeeAmount() และ newPool() ที่ส่งผลต่อค่าธรรมเนียมและรางวัล
  3. ใช้การควบคุมการเข้าถึงตามบทบาทสำหรับฟังก์ชัน เช่น expandObservationQueue() และ CollectFeeCharged() โดยจำกัดเฉพาะบทบาทที่ระบุในการเรียก
  4. เมื่อมีการปรับใช้สัญญา ทำให้พารามิเตอร์หลัก เช่น startBlock, endBlock, rewardPerBlock ไม่เปลี่ยนรูป และไม่อนุญาตให้ทำการเปลี่ยนแปลงในภายหลัง
  5. สร้างโครงสร้างการกำกับดูแลของ DAO ที่ต้องมีข้อเสนอของชุมชนและการลงคะแนนเสียงสำหรับการเรียกไปยังหน้าที่ที่ละเอียดอ่อน
  6. ใช้สถาปัตยกรรมโมดูลาร์เพื่อแยกความรับผิดชอบและหลีกเลี่ยงการรวมศูนย์มากเกินไปของโมดูลใดโมดูลหนึ่ง
  7. สร้างกลไกหยุดฉุกเฉินด้วยการรับรองความถูกต้องหลายลายเซ็น ซึ่งสามารถระงับข้อตกลงได้หากมีสิ่งผิดปกติเกิดขึ้น
  8. ดำเนินการตรวจสอบความปลอดภัยภายนอกเป็นประจำและจัดการกับปัญหาที่พบในเวลาที่เหมาะสมเพื่อลดความเสี่ยงจากการควบคุมจากส่วนกลาง
  9. ในระหว่างการพัฒนา ให้ใช้วิธี fuzzing และวิธีการอื่นๆ เพื่อระบุและกำจัดช่องโหว่ของการควบคุมจากส่วนกลาง
  10. ปฏิบัติตามหลักการของสิทธิ์ขั้นต่ำ และให้สิทธิ์ที่จำเป็นขั้นต่ำแก่บทบาทและบัญชีเท่านั้น

ความเสี่ยงจากการรวมศูนย์เหล่านี้เกิดจากข้อเท็จจริงที่ว่าเจ้าของสัญญาอาจควบคุมพารามิเตอร์และฟังก์ชันของสัญญามากเกินไป ซึ่งอาจทำให้เจ้าของสามารถปรับเปลี่ยนโปรโตคอลหรือเป็นอันตรายต่อผู้ใช้ได้ นอกจากนี้ เรายังหวังว่าการวิเคราะห์นี้จะให้ข้อมูลเชิงลึกที่เป็นประโยชน์และคำแนะนำด้านความปลอดภัยสำหรับการปรับปรุงสัญญาอัจฉริยะของ iZiFinance

ตามเรามา

ทวิตเตอร์: @MetaTrustLabs

เว็บไซต์: metatrust.io

ความคิดเห็น

ความคิดเห็นทั้งหมด

Recommended for you

  • ประธานคณะกรรมการด้านการธนาคารของวุฒิสภาสหรัฐฯ: ร่างข้อกำหนดใหม่เกี่ยวกับผลตอบแทนของ Stablecoin อาจจะถูกเปิดเผยเร็วที่สุดในสัปดาห์นี้

    เว็บไซต์ Cointime รายงานว่า วุฒิสมาชิก ทิม สก็อตต์ ประธานคณะกรรมการการธนาคารของวุฒิสภา กล่าวในการประชุมสุดยอดบล็อกเชนที่กรุงวอชิงตัน ดี.ซี. ว่า สมาชิกสภานิติบัญญัติอาจได้เห็นร่างกฎหมายฉบับใหม่ที่มีข้อกำหนดเกี่ยวกับเหรียญ Stablecoin อย่างน้อยที่สุดภายในสัปดาห์นี้ สก็อตต์กล่าวว่า ผลตอบแทนของ Stablecoin เป็นประเด็นที่มีการพูดคุยกันมากที่สุดในร่างกฎหมาย แต่สมาชิกสภานิติบัญญัติยังคงทำงานในส่วนนี้อย่างต่อเนื่อง เขากล่าวว่า “ผมเชื่อว่าผมจะมีข้อเสนอแรกสำหรับการพิจารณาในสัปดาห์นี้ หากเกิดขึ้นภายในสิ้นสัปดาห์ และผมคิดว่ามันจะเกิดขึ้น เราก็จะรู้ว่ากรอบการทำงานกำลังเป็นรูปเป็นร่างหรือไม่ ถ้าเป็นเช่นนั้น ผมคิดว่าเราจะอยู่ในสถานะที่ดีขึ้น” เขายังกล่าวถึงความคืบหน้าว่าเป็นผลมาจากความพยายามของวุฒิสมาชิกพรรคเดโมแครต แองเจลา อัลโซบรูคส์ วุฒิสมาชิกพรรครีพับลิกัน ทอม ทิลลิส และเจ้าหน้าที่ทำเนียบขาว แพทริค วิทท์ ในประเด็นผลตอบแทนของ Stablecoin เขากล่าวว่าประเด็นที่ยังค้างคาอยู่หลายประเด็นก็ได้รับการหารือในการเจรจาตลอดเดือนที่ผ่านมา รวมถึงข้อกังวลของสมาชิกสภาผู้แทนราษฎรเกี่ยวกับประธานาธิบดีโดนัลด์ ทรัมป์และโครงการคริปโตของครอบครัว การขาดการเป็นตัวแทนจากทั้งสองพรรคในหน่วยงานกำกับดูแลที่สำคัญ และกฎระเบียบการตรวจสอบตัวตนลูกค้า (KYC) สก็อตต์ยังกล่าวอีกว่า “ผมคิดว่าเราใกล้จะบรรลุข้อตกลงเกี่ยวกับประเด็นด้านจริยธรรมและองค์ประชุมแล้ว เรารู้ว่านี่เป็นประเด็นสำคัญสำหรับอีกฝ่าย ดังนั้นเราจึงกำลังหารือเรื่องนี้อยู่เช่นกัน ผมคิดว่าเรากำลังมีความคืบหน้าในเรื่องการเสนอชื่อบุคคล ซึ่งเป็นข่าวดี สำหรับ DeFi นั้น เป็นพื้นที่ที่วุฒิสมาชิกมาร์ค วอร์เนอร์ให้ความสำคัญ และการป้องกันการฟอกเงิน (AML) เป็นส่วนสำคัญมาก ดังนั้นผมคิดว่าเรากำลังก้าวหน้าในประเด็นเหล่านี้”

  • สรุปข่าวเช้าวันสำคัญ | เหตุการณ์สำคัญในช่วงข้ามคืนวันที่ 18 มีนาคม

    21:00-7:00 คำสำคัญ: Phantom, Stripe, Autonomous, อิหร่าน 1. อิหร่านอ้างว่าสามารถโจมตีประเทศที่อนุญาตให้สหรัฐฯ และอิสราเอลใช้ดินแดนของตนได้อย่างถูกกฎหมาย 2. คณะกรรมการกำกับสินค้าโภคภัณฑ์ล่วงหน้าของสหรัฐฯ (US CFTC): กระเป๋าเงิน Phantom ไม่จำเป็นต้องลงทะเบียนเป็นโบรกเกอร์ 3. อัยการสูงสุดของรัฐแอริโซนาฟ้องร้องดำเนินคดีอาญาต่อ Kalshi นักการตลาดด้านการทำนายราคา 4. กระทรวงการต่างประเทศสหรัฐฯ สั่งให้สถานทูตทั่วโลกดำเนินการประเมินความปลอดภัย "ทันที" 5. Robinhood Venture Capital ลงทุนประมาณ 35 ล้านดอลลาร์ใน Stripe และ ElevenLabs 6. GSR ลงทุน 57 ล้านดอลลาร์เพื่อซื้อ Autonomous และ Architech เพื่อสร้างแพลตฟอร์มการจัดการกองทุนคริปโต 7. คณะกรรมการกำกับหลักทรัพย์และตลาดหลักทรัพย์ของสหรัฐฯ (US SEC และ CFTC) ออกแนวทางใหม่เกี่ยวกับสกุลเงินดิจิทัล โดยระบุว่าสินทรัพย์ดิจิทัลส่วนใหญ่ไม่ใช่หลักทรัพย์

  • สำนักงานคณะกรรมการกำกับหลักทรัพย์และตลาดหลักทรัพย์ของสหรัฐฯ (SEC) และคณะกรรมการกำกับสินค้าโภคภัณฑ์ล่วงหน้าของสหรัฐฯ (CFTC) ได้ออกความเห็นใหม่เกี่ยวกับสกุลเงินดิจิทัล โดยระบุว่าสินทรัพย์ดิจิทัลส่วนใหญ่ไม่จัดอยู่ในประเภทหลักทรัพย์

    Cointime รายงานเมื่อวันที่ 18 มีนาคมว่า คณะกรรมการกำกับหลักทรัพย์และตลาดหลักทรัพย์ของสหรัฐฯ (SEC) และคณะกรรมการกำกับสินค้าโภคภัณฑ์ล่วงหน้า (CFTC) ได้เผยแพร่เอกสารคำแนะนำความยาว 68 หน้าเกี่ยวกับสกุลเงินดิจิทัล โดยระบุว่าสินทรัพย์ดิจิทัลส่วนใหญ่ไม่ใช่หลักทรัพย์ คำอธิบายใหม่นี้ให้รายละเอียดเกี่ยวกับการจัดประเภทของ Stablecoin สินค้าโภคภัณฑ์ดิจิทัล และโทเค็น "เครื่องมือดิจิทัล" ซึ่งหน่วยงานระบุว่าทั้งหมดนี้ไม่ใช่หลักทรัพย์ นอกจากนี้ยังพยายามอธิบายว่า "สินทรัพย์ดิจิทัลที่ไม่ใช่หลักทรัพย์" สามารถกลายเป็นหลักทรัพย์ได้อย่างไร และชี้แจงว่ากฎหมายหลักทรัพย์ของรัฐบาลกลางมีผลบังคับใช้กับการขุด การวางเดิมพันโปรโตคอล และการแจกเหรียญฟรีอย่างไร นอกจากนี้ SEC ยังอธิบายว่าสินทรัพย์ดิจิทัลที่ไม่ใช่หลักทรัพย์สามารถกลายเป็นหัวข้อของสัญญาการลงทุนได้อย่างไร หน่วยงานระบุในคำอธิบายว่า: "สินทรัพย์ดิจิทัลที่ไม่ใช่หลักทรัพย์จะกลายเป็นหัวข้อของสัญญาการลงทุนเมื่อผู้ออกชักจูงให้นักลงทุนลงทุนในกิจการร่วมกัน และให้คำมั่นหรือรับรองว่าจะดำเนินการจัดการที่จำเป็น และผู้ซื้อมีเหตุผลที่จะคาดหวังผลกำไรจากมัน"

  • Mastercard วางแผนที่จะเข้าซื้อกิจการบริษัทผลิตเหรียญ Stablecoin อย่าง BVNK ด้วยมูลค่าสูงถึง 1.8 พันล้านดอลลาร์สหรัฐ

    Cointime รายงานว่า Mastercard กำลังวางแผนที่จะเข้าซื้อกิจการ BVNK สตาร์ทอัพด้านโครงสร้างพื้นฐาน Stablecoin ด้วยมูลค่าสูงถึง 1.8 พันล้านดอลลาร์สหรัฐฯ ซึ่งรวมถึงค่าตอบแทนเพิ่มเติมอีก 300 ล้านดอลลาร์สหรัฐฯ การเข้าซื้อกิจการครั้งนี้เกิดขึ้นเพียงสี่เดือนหลังจากที่การเจรจาควบรวมกิจการมูลค่าประมาณ 2 พันล้านดอลลาร์สหรัฐฯ ระหว่าง BVNK กับ Coinbase ล้มเหลว ทั้งสองบริษัทได้ยืนยันข้อตกลงดังกล่าวในแถลงการณ์ร่วมที่เผยแพร่เมื่อวันอังคาร

  • ราคา Bitcoin ทะลุ 75,000 ดอลลาร์

    ข้อมูลตลาดแสดงให้เห็นว่า BTC ทะลุระดับ 75,000 ดอลลาร์แล้ว และปัจจุบันซื้อขายอยู่ที่ 75,033.01 ดอลลาร์ เพิ่มขึ้น 2.83% ในช่วง 24 ชั่วโมงที่ผ่านมา ตลาดมีความผันผวนสูง ดังนั้นโปรดบริหารความเสี่ยงของคุณให้เหมาะสม

  • ราคา Bitcoin ทะลุ 71,500 ดอลลาร์

    ข้อมูลตลาดแสดงให้เห็นว่า BTC ทะลุระดับ 71,500 ดอลลาร์ และปัจจุบันซื้อขายอยู่ที่ 71,510.19 ดอลลาร์ โดยเพิ่มขึ้น 1.06% ในช่วง 24 ชั่วโมงที่ผ่านมา ตลาดมีความผันผวนสูง ดังนั้นโปรดบริหารความเสี่ยงของคุณให้เหมาะสม

  • ETH ทะลุ 2100 ดอลลาร์

    ข้อมูลตลาดแสดงให้เห็นว่า ETH ทะลุ 2,100 ดอลลาร์แล้ว และปัจจุบันซื้อขายอยู่ที่ 2,100.58 ดอลลาร์ เพิ่มขึ้น 0.44% ในช่วง 24 ชั่วโมงที่ผ่านมา ตลาดมีความผันผวนสูง โปรดบริหารความเสี่ยงของคุณให้เหมาะสม

  • เมื่อวานนี้ กองทุน ETF Ethereum ในตลาดสปอตของสหรัฐฯ มียอดเงินไหลเข้าสุทธิ 26.7 ล้านดอลลาร์สหรัฐ

    เมื่อวันที่ 14 มีนาคม ข้อมูลที่รวบรวมโดย Farside Investors ระบุว่า กองทุน ETF Ethereum ในตลาดสปอตของสหรัฐฯ มียอดเงินไหลเข้าสุทธิ 26.7 ล้านดอลลาร์สหรัฐ

  • กระทรวงยุติธรรมสหรัฐฯ จะยื่นอุทธรณ์คำตัดสินในคดีพาวเวลล์ ซึ่งอาจทำให้การแต่งตั้งวอร์ชล่าช้าออกไป

    เมื่อวันที่ 14 มีนาคม หลังจากที่ผู้พิพากษาได้ยกเลิกหมายเรียกที่ส่งไปยังธนาคารกลางสหรัฐ (เฟด) อัยการสหรัฐฯ โรเบิร์ต พิโร ได้ให้คำมั่นว่าจะดำเนินการสอบสวนประธานเฟด เจโรม พาวเวลล์ ต่อไป ซึ่งอาจทำให้การแต่งตั้งผู้สืบทอดตำแหน่ง เควิน วอร์ช ซึ่งจะหมดวาระในเดือนพฤษภาคม ล่าช้าออกไป ผู้พิพากษาศาลแขวงสหรัฐ เจมส์ บอสเบิร์ก กล่าวว่า รัฐบาลล้มเหลวในการให้หลักฐานใดๆ เพื่อพิสูจน์ความชอบธรรมของหมายเรียกที่เกี่ยวข้องกับการปรับปรุงสำนักงานใหญ่ของเฟด และความคิดเห็นของพาวเวลล์เกี่ยวกับโครงการดังกล่าว พิโรกล่าวว่า "กระบวนการนี้ถูกขัดขวางโดยพลการโดยผู้พิพากษาหัวรุนแรง กระบวนการควรจะดำเนินไปอย่างราบรื่น แต่พวกเขากลับไม่เป็นเช่นนั้น พวกเขาน่าละอาย" วุฒิสมาชิก ทิลลิส สมาชิกคณะกรรมการการธนาคารของวุฒิสภา เตือนว่าเขาจะขัดขวางการเสนอชื่อประธานเฟดใดๆ ตราบใดที่การสอบสวนของกระทรวงยุติธรรมเกี่ยวกับพาวเวลล์ยังคงดำเนินต่อไป "คำตัดสินนี้ยืนยันว่าการสอบสวนทางอาญาต่อประธานพาวเวลล์นั้นอ่อนแอและไร้มูลความจริงเพียงใด มันเป็นเพียงการโจมตีความเป็นอิสระของเฟดที่ล้มเหลว" ทิลลิสกล่าว "การอุทธรณ์จะยิ่งทำให้การยืนยันตำแหน่งของเควิน วอร์ชในฐานะประธานเฟดคนต่อไปล่าช้าออกไปเท่านั้น"

  • ราคา BTC ร่วงลงต่ำกว่า 72,000 ดอลลาร์

    ข้อมูลตลาดแสดงให้เห็นว่า BTC ร่วงลงต่ำกว่า 72,000 ดอลลาร์ และปัจจุบันซื้อขายอยู่ที่ 71,996.46 ดอลลาร์ การเพิ่มขึ้นในรอบ 24 ชั่วโมงลดลงเหลือ 2.32% ความผันผวนของตลาดสูง โปรดบริหารความเสี่ยงของคุณให้เหมาะสม

ต้องอ่านทุกวัน