Cointime

Download App
iOS & Android

BlockSec: สำรวจความเสี่ยงด้านความปลอดภัยของกลไก Hook ใน Uniswap V4

Validated Venture

ฉันเชื่อว่า Uniswap v4 จะเปิดให้ทุกคนใช้งานได้เร็วๆ นี้!

คราวนี้ทีมงาน Uniswap มีเป้าหมายที่ทะเยอทะยานและวางแผนที่จะแนะนำคุณสมบัติใหม่มากมาย [1] รวมถึงการรองรับกลุ่มสภาพคล่องไม่จำกัดจำนวน และค่าธรรมเนียมแบบไดนามิกสำหรับคู่การซื้อขายแต่ละคู่ การออกแบบซิงเกิลตัน การบัญชีฟ้าผ่า Hooks และการสนับสนุนโทเค็น ERC1155 มาตรฐาน. Uniswap v4 ใช้ประโยชน์จากพื้นที่เก็บข้อมูลชั่วคราวที่แนะนำโดย EIP-1153 และคาดว่าจะเปิดตัวหลังจากอัปเกรด Ethereum Cancun

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

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

ในตอนต้นของบทความชุดนี้ บทความนี้จะแนะนำแนวคิดที่เกี่ยวข้องกับกลไก Hook ใน Uniswap v4 และสรุปความเสี่ยงด้านความปลอดภัยของกลไก Hook

1.กลไก Uniswap V4

ก่อนที่เราจะเจาะลึก เราจำเป็นต้องมีความเข้าใจพื้นฐานเกี่ยวกับกลไกของ Uniswap v4 ตามประกาศอย่างเป็นทางการ [1] และเอกสารไวท์เปเปอร์ [2] Hooks สถาปัตยกรรมซิงเกิลตัน และการบัญชี lightning เป็นหน้าที่ที่สำคัญสามประการในการใช้พูลสภาพคล่องแบบกำหนดเอง และบรรลุการกำหนดเส้นทางที่มีประสิทธิภาพข้ามพูลหลายแห่ง

1.1 ตะขอ

Hooks หมายถึงสัญญาที่ทำงานในขั้นตอนต่างๆ ของวงจรชีวิตของแหล่งรวมสภาพคล่อง ทีมงาน Uniswap หวังว่าจะช่วยให้ใครก็ตามสามารถตัดสินใจแลกเปลี่ยนได้โดยการแนะนำ Hooks ด้วยวิธีนี้ จึงเป็นไปได้ที่จะรองรับค่าธรรมเนียมแบบไดนามิก เพิ่มคำสั่งซื้อแบบ on-chain cap หรือกระจายคำสั่งซื้อจำนวนมากผ่านผู้ดูแลสภาพคล่องโดยเฉลี่ยตามเวลา (TWAMM)

ขณะนี้มีการโทรกลับ Hook แปดรายการ แบ่งออกเป็นสี่กลุ่ม (แต่ละกลุ่มมีการโทรกลับคู่หนึ่ง):

  • beforeInitialize/หลังInitialize
  • beforeModifyPosition/หลังแก้ไขPosition
  • ก่อนสลับ/หลังสลับ
  • ก่อนบริจาค/หลังบริจาค

ต่อไปนี้คือขั้นตอนการแลกเปลี่ยน Hooks ที่แนะนำในเอกสารไวท์เปเปอร์ [2]

รูปที่ 1: กระบวนการแลกเปลี่ยน Hook

ทีมงาน Uniswap ได้แนะนำวิธีดำเนินการพร้อมตัวอย่างบางส่วน (เช่น TWAMM Hook[3]) และผู้เข้าร่วมชุมชนก็มีส่วนสนับสนุนด้วยเช่นกัน เอกสารอย่างเป็นทางการ[4] ยังลิงก์ไปยังที่เก็บ Awesome Uniswap v4 Hooks[5] ซึ่งรวบรวมตัวอย่าง Hook เพิ่มเติม

1.2 ซิงเกิลตัน การบัญชีฟ้าผ่า และกลไกการล็อค

ทีมงาน Uniswap ได้แนะนำวิธีดำเนินการพร้อมตัวอย่างบางส่วน (เช่น TWAMM Hook[3]) และผู้เข้าร่วมชุมชนก็มีส่วนร่วมด้วยเช่นกัน เอกสารอย่างเป็นทางการ[4] ยังลิงก์ไปยังที่เก็บ Awesome Uniswap v4 Hooks[5] ซึ่งรวบรวมตัวอย่าง Hook เพิ่มเติม

1.2 ซิงเกิลตัน การบัญชีฟ้าผ่า และกลไกการล็อค

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

ในเวอร์ชันก่อนหน้าของโปรโตคอล Uniswap การดำเนินการต่างๆ เช่น การแลกเปลี่ยนหรือเพิ่มสภาพคล่องเกี่ยวข้องกับการถ่ายโอนโทเค็นโดยตรง เวอร์ชัน v4 แตกต่างตรงที่จะมีการแนะนำบัญชี lightning และกลไกการล็อค

👇🏻 กลไกการล็อคทำงานดังนี้:

  1. สัญญาล็อคเกอร์ขอล็อค PoolManager
  2. PoolManager เพิ่มที่อยู่ของสัญญาล็อกเกอร์ลงในคิว lockData และเรียกการโทรกลับ lockAcquired
  3. สัญญาล็อกเกอร์ดำเนินการตรรกะในการเรียกกลับ ในระหว่างการดำเนินการ การโต้ตอบของสัญญาล็อกเกอร์กับพูลอาจส่งผลให้มีการเพิ่มสกุลเงินที่ไม่เป็นศูนย์ อย่างไรก็ตาม เมื่อสิ้นสุดการดำเนินการ เดลต้าทั้งหมดจะต้องกลายเป็นศูนย์ นอกจากนี้ หากคิว lockData ไม่ว่างเปล่า เฉพาะสัญญาล็อกเกอร์สุดท้ายเท่านั้นที่สามารถดำเนินการได้
  4. PoolManager ตรวจสอบสถานะของคิว lockData และการเพิ่มสกุลเงิน หลังจากการตรวจสอบ PoolManager จะลบสัญญาล็อคเกอร์

โดยสรุป กลไกการล็อคป้องกันการเข้าถึงพร้อมกันและทำให้มั่นใจได้ว่าธุรกรรมทั้งหมดสามารถล้างได้ สัญญาล็อกเกอร์ใช้สำหรับการล็อกตามลำดับ จากนั้นดำเนินธุรกรรมผ่านการเรียกกลับ lockAcquired Hook callback ที่เกี่ยวข้องจะถูกทริกเกอร์ก่อนและหลังการดำเนินการพูลแต่ละครั้ง สุดท้าย PoolManager จะตรวจสอบสถานะ

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

เนื่องจากกลไกการล็อค บัญชีความเป็นเจ้าของภายนอก (EOA) ไม่สามารถโต้ตอบกับ PoolManager ได้โดยตรง ปฏิสัมพันธ์ใดๆ จะต้องเกิดขึ้นผ่านสัญญาแทน สัญญานี้ทำหน้าที่เป็นตู้เก็บของกลาง และจำเป็นต้องขอล็อคก่อนดำเนินการใดๆ ของพูล

👇🏻 มีสองสถานการณ์การโต้ตอบสัญญาหลัก:

  • สัญญาล็อคเกอร์บางอย่างมาจากฐานรหัสอย่างเป็นทางการหรือถูกปรับใช้โดยผู้ใช้ ในกรณีนี้ เราสามารถนึกถึงการโต้ตอบที่ส่งผ่านเราเตอร์ได้
  • สัญญาล็อคเกอร์และ Hook บางอย่างรวมอยู่ในสัญญาเดียวกันหรือควบคุมโดยหน่วยงานบุคคลที่สาม ในกรณีนี้ เราสามารถนึกถึงการโต้ตอบที่เกิดขึ้นผ่าน Hooks ได้ ในกรณีนี้ Hook ต่างก็มีบทบาทเป็นสัญญาล็อคเกอร์และรับผิดชอบในการจัดการการโทรกลับ

2. รูปแบบภัยคุกคาม

ก่อนที่จะหารือเกี่ยวกับปัญหาด้านความปลอดภัยที่เกี่ยวข้อง เราจำเป็นต้องระบุโมเดลภัยคุกคามก่อน เราพิจารณาสองสถานการณ์ต่อไปนี้เป็นหลัก:

  • โมเดลภัยคุกคาม 1: ตัวตะขอเองก็ไม่เป็นอันตราย แต่ก็มีช่องโหว่อยู่
  • รูปแบบภัยคุกคาม II: Hooks เป็นอันตรายโดยธรรมชาติ

ในส่วนต่อไปนี้ เราจะหารือเกี่ยวกับปัญหาด้านความปลอดภัยที่อาจเกิดขึ้นตามโมเดลภัยคุกคามทั้งสองนี้

2.1 ปัญหาด้านความปลอดภัยในรูปแบบภัยคุกคาม I

โมเดลภัยคุกคาม I มุ่งเน้นไปที่ช่องโหว่ที่เกี่ยวข้องกับ Hook รูปแบบภัยคุกคามนี้ถือว่านักพัฒนาและ hooks ของพวกเขาไม่เป็นอันตราย อย่างไรก็ตาม ช่องโหว่ที่ทราบอยู่แล้วในสัญญาอัจฉริยะอาจปรากฏใน Hooks ด้วย ตัวอย่างเช่น หาก Hook ถูกนำมาใช้เป็นสัญญาที่สามารถอัปเกรดได้ ก็อาจประสบปัญหาที่เกี่ยวข้องกับช่องโหว่ UUPSUpgradeable ของ OpenZeppelin

โมเดลภัยคุกคาม I มุ่งเน้นไปที่ช่องโหว่ที่เกี่ยวข้องกับ Hook รูปแบบภัยคุกคามนี้ถือว่านักพัฒนาและ hooks ของพวกเขาไม่เป็นอันตราย อย่างไรก็ตาม ช่องโหว่ที่ทราบอยู่แล้วในสัญญาอัจฉริยะอาจปรากฏใน Hooks ด้วย ตัวอย่างเช่น หาก Hook ถูกนำมาใช้เป็นสัญญาที่สามารถอัปเกรดได้ ก็อาจประสบปัญหาที่เกี่ยวข้องกับช่องโหว่ UUPSUpgradeable ของ OpenZeppelin

เมื่อพิจารณาจากปัจจัยข้างต้น เราเลือกที่จะมุ่งเน้นไปที่ช่องโหว่ที่อาจเกิดขึ้นโดยเฉพาะในเวอร์ชัน v4 ใน Uniswap เวอร์ชัน 4 Hooks คือสัญญาอัจฉริยะที่สามารถดำเนินการตรรกะที่กำหนดเองก่อนหรือหลังการดำเนินการพูลหลัก (รวมถึงการเริ่มต้น การแก้ไขตำแหน่ง การสลับ และการรวบรวม) แม้ว่า Hooks คาดว่าจะใช้อินเทอร์เฟซมาตรฐาน แต่ก็ยังอนุญาตให้รวมตรรกะที่กำหนดเองได้ ดังนั้นการสนทนาของเราจะจำกัดอยู่เพียงตรรกะที่เกี่ยวข้องกับอินเทอร์เฟซ Hook มาตรฐาน จากนั้นเราจะพยายามระบุแหล่งที่มาของช่องโหว่ที่เป็นไปได้ เช่น วิธีที่ Hooks อาจละเมิดฟังก์ชัน Hook มาตรฐานเหล่านี้

👇🏻 โดยเฉพาะเราจะเน้นไปที่ Hooks สองประเภทต่อไปนี้:

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

โปรดทราบว่า hooks ที่อยู่นอกขอบเขตทั้งสองนี้อยู่นอกขอบเขตการสนทนาของเรา

เนื่องจากไม่มีกรณีการใช้งานจริงสำหรับ Hooks ในขณะที่เขียน เราจะได้รับข้อมูลบางส่วนจากพื้นที่เก็บข้อมูล Awesome Uniswap v4 Hooks

หลังจากการศึกษาเชิงลึกเกี่ยวกับพื้นที่เก็บข้อมูล Awesome Uniswap v4 Hooks (คอมมิตแฮช 3a0a444922f26605ec27a41929f3ced924af6075) เราค้นพบช่องโหว่ที่สำคัญหลายประการ ช่องโหว่เหล่านี้ส่วนใหญ่เกิดจากการโต้ตอบความเสี่ยงระหว่าง hooks, PoolManager และบุคคลที่สามภายนอก และสามารถแบ่งออกเป็นสองประเภทหลัก ๆ ได้แก่ ปัญหาการควบคุมการเข้าถึงและปัญหาการตรวจสอบอินพุต โปรดดูตารางด้านล่างสำหรับการค้นพบที่เฉพาะเจาะจง:

โดยรวมแล้ว เราพบโครงการที่เกี่ยวข้อง 22 โครงการ (ไม่รวมโครงการที่ไม่เกี่ยวข้องกับ Uniswap v4) จากโครงการเหล่านี้ เราเชื่อว่า 8 (36%) มีความเสี่ยง จากแปดโครงการที่มีช่องโหว่ มีหกโครงการมีปัญหาในการควบคุมการเข้าถึง และอีกสองโครงการเสี่ยงต่อการโทรภายนอกที่ไม่น่าเชื่อถือ

2.1.1 ปัญหาการควบคุมการเข้าถึง

ในการสนทนาในส่วนนี้ เรามุ่งเน้นไปที่ปัญหาที่อาจเกิดจากฟังก์ชันการโทรกลับในเวอร์ชัน 4 เป็นหลัก รวมถึงการโทรกลับแบบ hook 8 ครั้งและการล็อกการโทรกลับ แน่นอนว่ายังมีสถานการณ์อื่นๆ ที่ต้องตรวจสอบ แต่สถานการณ์เหล่านี้แตกต่างกันไปตามการออกแบบและอยู่นอกเหนือขอบเขตของการสนทนาของเรา

PoolManager ควรเรียกใช้ฟังก์ชันเหล่านี้เท่านั้น และไม่สามารถเรียกใช้โดยที่อยู่อื่น (รวมถึง EOA และสัญญา) ตัวอย่างเช่น ในกรณีที่รางวัลถูกแจกจ่ายด้วยรหัสพูล รางวัลอาจถูกอ้างสิทธิ์อย่างไม่ถูกต้อง หากบัญชีใด ๆ สามารถเรียกใช้ฟังก์ชันที่เกี่ยวข้องได้

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

2.1.2 คำถามยืนยันการป้อนข้อมูล

ใน Uniswap v4 เนื่องจากกลไกการล็อค ผู้ใช้จะต้องได้รับการล็อคผ่านสัญญาก่อนที่จะดำเนินการใดๆ ในกลุ่มกองทุน เพื่อให้แน่ใจว่าสัญญาที่เข้าร่วมในการโต้ตอบในปัจจุบันนั้นเป็นสัญญาล็อคเกอร์ล่าสุด

อย่างไรก็ตาม ยังมีสถานการณ์การโจมตีที่เป็นไปได้ กล่าวคือ การเรียกจากภายนอกที่ไม่น่าเชื่อถือ เนื่องจากการตรวจสอบอินพุตที่ไม่เหมาะสมในการใช้งาน Hook ที่มีช่องโหว่:

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

การโทรภายนอกที่ไม่น่าเชื่อถือเป็นอันตรายอย่างยิ่ง เนื่องจากสามารถนำไปสู่การโจมตีได้หลายประเภท รวมถึงสิ่งที่เราเรียกว่าการโจมตีกลับเข้ามาใหม่

การโทรภายนอกที่ไม่น่าเชื่อถือเป็นอันตรายอย่างยิ่ง เนื่องจากสามารถนำไปสู่การโจมตีได้หลายประเภท รวมถึงสิ่งที่เราเรียกว่าการโจมตีกลับเข้ามาใหม่

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

2.1.3 มาตรการป้องกันภัยคุกคามรูปแบบที่ 1

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

2.2 ปัญหาด้านความปลอดภัยในรูปแบบภัยคุกคาม II

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

เนื่องจากวิธีการเข้าถึง hook จะกำหนดสิทธิ์ที่อาจมอบให้กับ hook เราจึงแบ่ง hooks ออกเป็นสองประเภท:

  • Managed Hooks: Hooks ไม่ใช่จุดเริ่มต้น ผู้ใช้จะต้องโต้ตอบกับ hook ผ่านเราเตอร์ (อาจให้โดย Uniswap)
  • Hooks แบบสแตนด์อโลน: Hooks เป็นจุดเริ่มต้นที่อนุญาตให้ผู้ใช้โต้ตอบกับพวกเขาโดยตรง

รูปที่ 2: ตัวอย่างตะขอที่เป็นอันตราย

2.2.1 ตะขอที่ได้รับการจัดการ

ในกรณีนี้ สินทรัพย์เข้ารหัสลับของผู้ใช้ (รวมถึงโทเค็นดั้งเดิมและโทเค็นอื่น ๆ) จะถูกโอนหรืออนุญาตไปยังเราเตอร์ เนื่องจาก PoolManager ทำการตรวจสอบยอดเงิน จึงไม่ใช่เรื่องง่ายที่ hook ที่เป็นอันตรายจะขโมยทรัพย์สินเหล่านี้โดยตรง อย่างไรก็ตาม ยังคงมีพื้นผิวการโจมตีที่อาจเกิดขึ้นได้ ตัวอย่างเช่น กลไกการจัดการค่าใช้จ่ายของเวอร์ชัน 4 อาจถูกจัดการโดยผู้โจมตีผ่าน hooks

2.2.2 ตะขออิสระ

สถานการณ์จะซับซ้อนมากขึ้นเมื่อใช้ Hooks เป็นจุดเริ่มต้น ในกรณีนี้ ตะขอจะได้รับพลังมากขึ้นเนื่องจากผู้ใช้สามารถโต้ตอบกับมันได้โดยตรง ตามทฤษฎีแล้ว hook สามารถทำอะไรก็ได้ที่ต้องการด้วยการโต้ตอบนี้

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

  • ตัวแทนที่สามารถอัพเกรดได้ (สามารถโจมตีได้โดยตรง);
  • ด้วยตรรกะการทำลายตนเอง การโจมตีที่เป็นไปได้ในกรณีที่มีการเรียกร้องให้ร่วมกันทำลายตนเองและสร้าง2

2.2.3 มาตรการป้องกันภัยคุกคามรูปแบบ II

การประเมินว่าฮุคนั้นเป็นอันตรายเป็นสิ่งสำคัญหรือไม่ โดยเฉพาะสำหรับ hooks ที่มีการจัดการ เราควรมุ่งเน้นไปที่พฤติกรรมของการจัดการต้นทุน ในขณะที่สำหรับ hooks อิสระ จุดสนใจหลักคือสามารถอัปเกรดได้หรือไม่

3.บทสรุป

การประเมินว่าฮุคนั้นเป็นอันตรายเป็นสิ่งสำคัญหรือไม่ โดยเฉพาะสำหรับ hooks ที่มีการจัดการ เราควรมุ่งเน้นไปที่พฤติกรรมของการจัดการต้นทุน ในขณะที่สำหรับ hooks อิสระ จุดสนใจหลักคือสามารถอัปเกรดได้หรือไม่

3.บทสรุป

ในบทความนี้ เราจะให้ภาพรวมโดยย่อเกี่ยวกับกลไกหลักที่เกี่ยวข้องกับปัญหาความปลอดภัยของ Hook ของ Uniswap v4 ต่อจากนั้น เราจะเสนอโมเดลภัยคุกคาม 2 รูปแบบและสรุปคร่าวๆ เกี่ยวกับความเสี่ยงด้านความปลอดภัยที่เกี่ยวข้อง

ในบทความต่อๆ ไป เราจะทำการวิเคราะห์เชิงลึกเกี่ยวกับปัญหาด้านความปลอดภัยภายใต้โมเดลภัยคุกคามแต่ละแบบ

ความคิดเห็น

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

Recommended for you

  • XEX เปิดตัวสัญญาไม่จำกัดระยะเวลา Slerf/USDT อย่างเป็นทางการในเวลา 19:00 น. ของวันที่ 22 พฤศจิกายน (UTC+8)

    ตามข่าวเมื่อวันที่ 22 พฤศจิกายน XEX ได้เปิดตัวสัญญาถาวรของ Slerf/USDT อย่างเป็นทางการในเวลา 19:00 น. ของวันที่ 22 พฤศจิกายน (UTC+8)

  • Galaxy CEO: สมาชิกคณะรัฐมนตรีของ Trump โดยทั่วไปจะถือ Bitcoin และเป็นผู้สนับสนุนสินทรัพย์ดิจิทัล

    ตามข่าวเมื่อวันที่ 22 พฤศจิกายน Michael Novogratz ซีอีโอของ Galaxy Digital กล่าวเมื่อเร็ว ๆ นี้ว่าฝ่ายบริหารของ Trump ได้นำมาซึ่ง "การเปลี่ยนกระบวนทัศน์" ในการควบคุมสกุลเงินดิจิทัล เขาชี้ให้เห็นว่าสมาชิกคณะรัฐมนตรีของทรัมป์เกือบทั้งหมดถือ Bitcoin และเป็นผู้สนับสนุนสินทรัพย์ดิจิทัล โดยทั่วไปพวกเขาสนับสนุนนวัตกรรม สินทรัพย์ดิจิทัล และการพัฒนา Bitcoin

  • ที่มา: a16z คาดว่าจะได้ที่นั่งในคณะกรรมการที่ปรึกษาด้านสกุลเงินดิจิทัลของ Trump

    ตามข่าวเมื่อวันที่ 22 พฤศจิกายน ผู้บริหารอุตสาหกรรมสินทรัพย์ดิจิทัลหลายรายระบุว่า บริษัทเข้ารหัสหลายแห่ง เช่น Ripple, Kraken และ Circle กำลังแย่งชิงที่นั่งในคณะกรรมการที่ปรึกษาด้านสกุลเงินดิจิทัล ซึ่งให้สัญญาโดยประธานาธิบดีทรัมป์ที่จะจัดตั้งขึ้น โดยพยายามที่จะมีอิทธิพลต่อนโยบายที่วางแผนไว้ของสหรัฐฯ การปฏิรูปมีคำพูด แหล่งข่าวกล่าวว่า a16z ซึ่งเป็นบริษัทร่วมทุนยักษ์ใหญ่อย่าง Andreessen Horowitz คาดว่าจะได้ที่นั่งในเรื่องนี้

  • BTC ทะลุ $98,500

    สถานการณ์ตลาดแสดงให้เห็นว่า BTC เกิน US$98,500 และตอนนี้ซื้อขายที่ US$98,501.24 โดยเพิ่มขึ้น 0.84% ​​ใน 24 ชั่วโมง ตลาดมีความผันผวนอย่างมาก ดังนั้นโปรดควบคุมความเสี่ยง

  • สหราชอาณาจักรวางแผนที่จะร่างกรอบการกำกับดูแลสำหรับอุตสาหกรรมสกุลเงินดิจิทัลในต้นปีหน้า

    นายทิวลิป ซิดดิก รัฐมนตรีกระทรวงเศรษฐกิจของอังกฤษกล่าวในการประชุมว่าสหราชอาณาจักรวางแผนที่จะพัฒนากรอบการกำกับดูแลสำหรับอุตสาหกรรมสกุลเงินดิจิทัลในต้นปีหน้า กฎดังกล่าวจะนำไปใช้กับเหรียญ stablecoin และบริการด้านตราสารทุน และจะยุติความไม่แน่นอนของอุตสาหกรรมเป็นเวลาหลายเดือน จากข้อมูลของ Bloomberg ข่าวนี้เป็นข่าวดีสำหรับตลาดสกุลเงินดิจิทัล

  • กรรมาธิการ CFTC เรียกร้องให้มีการปฏิรูปนโยบาย Cryptocurrency แบบเร่งรัด

    Summer Mersinger กรรมาธิการการซื้อขายสินค้าโภคภัณฑ์ล่วงหน้าของสหรัฐฯ (CFTC) กล่าวสุนทรพจน์ในการประชุมสุดยอด Blockchain ในอเมริกาเหนือ โดยเรียกร้องให้มีการพัฒนานโยบายมาตรฐานของสกุลเงินดิจิทัลผ่านการแจ้งอย่างเป็นทางการและกระบวนการแสดงความคิดเห็น Mersinger กล่าวว่ามีปัญหากับแนวทาง "การกำกับดูแลแบบบังคับใช้" ในปัจจุบันของผู้กำกับดูแลในอุตสาหกรรมสกุลเงินดิจิทัล โดยเฉพาะอย่างยิ่งกรณีของ Uniswap Labs เธอเน้นย้ำว่า CFTC เป็น “หน่วยงานกำกับดูแลในอุดมคติสำหรับตลาดสปอตสกุลเงินดิจิทัล” เนื่องจากความสามารถในการดำเนินการเปลี่ยนแปลงทางกฎหมายที่สำคัญได้อย่างรวดเร็ว โดยไม่กระทบต่อตลาด Mersinger ตั้งข้อสังเกตว่าในขณะที่หน่วยงาน cryptocurrency รวมถึง DeFi ทางการเงินแบบกระจายอำนาจ มักจะถูกแบ่งออกเป็นหมวดหมู่ที่มีอยู่ และจำเป็นต้องปฏิบัติตามกฎหมายเดียวกัน ขณะนี้ยังไม่มีเส้นทางอย่างเป็นทางการในการลงทะเบียน เธอแนะนำว่าอุตสาหกรรม cryptocurrency ควรเริ่มเข้าถึงทันทีที่ผู้นำรัฐบาลใหม่มุ่งมั่นที่จะอำนวยความสะดวกในการเจรจาตั้งแต่เนิ่นๆ เป็นที่น่าสังเกตว่าข้อตกลงล่าสุดของ CFTC กับ Uniswap นั้นค่อนข้างเล็ก ซึ่งสะท้อนถึงการเปลี่ยนแปลงเล็กน้อยในทัศนคติด้านกฎระเบียบ

  • Binance เสริมความแข็งแกร่งให้กับแผนกการปฏิบัติตามกฎระเบียบ โดยวางแผนที่จะมีพนักงานปฏิบัติตามกฎระเบียบเต็มเวลา 645 คนภายในสิ้นปีนี้

    Binance ซึ่งเป็นบริษัทแลกเปลี่ยนสกุลเงินดิจิทัลที่ใหญ่ที่สุดในโลก คาดว่าจะเพิ่มพนักงานปฏิบัติตามกฎระเบียบเต็มเวลาเป็น 645 คนภายในสิ้นปีนี้ ซึ่งเพิ่มขึ้น 34% จากเดือนพฤศจิกายนปีที่แล้ว ในขณะที่ยังคงขยายแผนกปฏิบัติตามกฎระเบียบอย่างรวดเร็ว รวมถึงผู้รับเหมาด้วย ตลาดแลกเปลี่ยนสกุลเงินดิจิทัลมีพนักงานที่มุ่งเน้นการปฏิบัติตามกฎระเบียบมากกว่า 1,000 คน ตามแถลงการณ์ของ Binance เมื่อวันศุกร์ การมุ่งเน้นที่เข้มแข็งของ Binance ในการปฏิบัติตามกฎระเบียบนั้นค่อนข้างใหม่ โดยเมื่อปีที่แล้วบริษัทแลกเปลี่ยนตกลงที่จะจ่ายค่าปรับจำนวนมากถึง 4.3 พันล้านดอลลาร์สำหรับการละเมิดพระราชบัญญัติความลับของธนาคาร (BSA) และจงใจหลีกเลี่ยงการคว่ำบาตรระหว่างประเทศ

  • SOL ขึ้นสู่จุดสูงสุดใหม่ "King of Meme Chain" จะกลายเป็นจุดที่สามของ ETF ได้หรือไม่

    จำนวนที่อยู่กระเป๋าเงิน Solana ที่ใช้งานเพิ่มขึ้นจาก 1 ล้านในเดือนพฤษภาคมเป็น 8.8 ล้านในปัจจุบัน

  • MicroStrategy เพิ่มขึ้น 6% ก่อนที่หุ้นสหรัฐจะเปิด

    MicroStrategy เพิ่มขึ้น 6% ก่อนตลาดหุ้นสหรัฐฯ เปิด แต่ปิดตัวลงมากกว่า 16% เมื่อวานนี้

  • Bitcoin ใกล้ถึงระดับ 100,000 ดอลลาร์ ADA แตะระดับสูงสุดนับตั้งแต่เดือนพฤษภาคม 2022

    ADA ของ Cardano ขึ้นถึงระดับสูงสุดนับตั้งแต่เดือนพฤษภาคม 2022 กิจกรรมออนไลน์แสดงให้เห็นว่าเทรดเดอร์รายใหญ่มีส่วนร่วมในการขึ้นราคา UnmuteBitcoin ทำลายสถิติใหม่ที่ 98,000 ดอลลาร์ ขณะที่ MicroStrategy พุ่งสูงขึ้น และ Trump มองว่าเป็น "รัฐมนตรีคริปโต" เนื่องจาก Bitcoin (BTC) ใกล้ถึงระดับ 100,000 ดอลลาร์เป็นครั้งแรก เงินทุนจึงหันไปหาสกุลเงินดิจิทัลทางเลือก ทำให้เกิดความปั่นป่วนในตลาดสกุลเงินดิจิทัล