แฮชของบทความนี้ (SHA 1): b366289db9b21c3e9b6668c274e4a179be57a463
หมายเลข: ความรู้ด้านความปลอดภัยของ Chainsource No.008
เศรษฐกิจบล็อกเชนมีการเติบโตแบบทวีคูณในช่วงไม่กี่ปีที่ผ่านมา โดยเฉพาะอย่างยิ่งเมื่อระบบนิเวศ DeFi มีมูลค่าสูงสุดที่ 300 พันล้านดอลลาร์ในปี 2565 นับตั้งแต่การพัฒนา Web3 วิธีการโจมตีที่หลากหลายและช่องโหว่ด้านความปลอดภัยเชิงตรรกะได้เกิดขึ้น ตั้งแต่ปี 2560 ค่าสูงสุดที่แยกได้ (MEV) อยู่ในแนวหน้าของวิธีการโจมตีที่ทำให้เกิดการสูญเสียห่วงโซ่ ETH ตลอดทั้งปี ทีมรักษาความปลอดภัยของ Chainsource ได้วิเคราะห์และแยกแยะหลักการพื้นฐานและวิธีการป้องกันของ MEV โดยหวังว่าจะช่วยให้ผู้อ่านปรับปรุงความสามารถในการปกป้องทรัพย์สินของตนเอง
พื้นฐาน MEV
MEV ชื่อเต็มคือ Maximum Extractable Value ในยุค POW ของ Ethereum มันถูกเรียกว่า Miner Extractable Value หลังจากบล็อกเชนจำนวนมากถูกแปลงเป็น POS จึงได้เปลี่ยนชื่อเป็น Maximum Extractable Value เนื่องจากไม่มีผู้สร้างบล็อกอีกต่อไป บทบาทเดียวที่กำหนดลำดับของธุรกรรม (บทบาทปัจจุบันที่มีสิทธิ์ทั้งสองนี้คือผู้ขุดและผู้ตรวจสอบ ก่อนมีเพียงผู้ขุดเท่านั้น)
MEV หมายถึงการวัดผลกำไรที่ผู้เข้าร่วมได้รับ เช่น เครื่องมือตรวจสอบหรือตัวจัดลำดับโดยดำเนินการเลือกธุรกรรม (รวมถึงธุรกรรม การเรียงลำดับธุรกรรม และการจัดลำดับธุรกรรมใหม่) ภายในบล็อกที่พวกเขาสร้างขึ้น
·ผู้ตรวจสอบ: ผู้เข้าร่วมที่รับผิดชอบในการตรวจสอบธุรกรรมและการสร้างบล็อก
·ซีเควนเซอร์: ผู้เข้าร่วมที่รับผิดชอบในการตัดสินใจลำดับของธุรกรรม
·รวมธุรกรรม: เลือกธุรกรรมที่จะรวมไว้ในบล็อก
·ไม่รวมธุรกรรม: เลือกธุรกรรมที่จะไม่รวมในบล็อก
·จัดลำดับธุรกรรมใหม่: กำหนดลำดับของธุรกรรมในบล็อก
ปัจจุบัน แฮกเกอร์ที่ใช้ MEV กำหนดเป้าหมายที่อยู่กระเป๋าสตางค์เป็นหลักซึ่งได้รับคุณสมบัติสแน็ปช็อต airdrop และโทเค็นที่สัญญาไว้กำลังจะถูกปลดล็อค ข้อกำหนดเบื้องต้นสำหรับแฮกเกอร์ในการโจมตีดังกล่าวคือการได้รับรหัสส่วนตัวของกระเป๋าสตางค์ จากนั้นเปิดใช้งานการตรวจสอบก๊าซแบบไดนามิก และรอ การตอบสนองของผู้ใช้ หลังจากที่โทเค็นหรือค่าธรรมเนียมแก๊สมาถึง ธุรกรรมการถอนจะถูกส่งไปในบล็อกเดียวกันหรือบล็อกที่อยู่ติดกัน ซึ่งเป็นธุรกรรมที่ดำเนินการล่วงหน้า เราเรียกหุ่นยนต์ตรวจสอบประเภทนี้ว่าหุ่นยนต์กวาด
วิธีการป้องกัน (ใช้ ETH เป็นตัวอย่าง)
ประการแรก มีสองแนวคิดสำหรับการป้องกันประเภทนี้ เนื่องจากเป็นการแข่งขันกับแฮกเกอร์เพื่อความเร็ว ประการแรกคือการเพิ่มราคาน้ำมันและการสั่งซื้อธุรกรรม Nonce
เนื่องจากค่าธรรมเนียมการทำธุรกรรมของ Ethereum = ก๊าซ (ปริมาณ) * ราคาก๊าซ (ราคาต่อหน่วย) ความจุ Gas Limit ของแต่ละบล็อก Ethereum ได้รับการแก้ไข ดังนั้นราคาก๊าซของใครสูงกว่า ซึ่งธุรกรรมจะถูกบรรจุลงในบล็อก การยืนยันบล็อกแรกใน นอกจากนี้ nonce ใน Ethereum แสดงถึงจำนวนธุรกรรม แนวคิดนี้จะต้องรวมกับความจริงที่ว่า Ethereum นั้นขึ้นอยู่กับบัญชี ดังนั้นแต่ละบัญชีที่แตกต่างกันจะรักษา nonce ของตัวเอง และแต่ละธุรกรรมของแต่ละบัญชีใน Ethereum จะมีลักษณะเฉพาะ nonce ซึ่งไม่เพียงแต่สามารถป้องกันการโจมตีซ้ำได้ (ธุรกรรมเดียวกันถูกประมวลผลหลายครั้ง) แต่ยังช่วยให้เครื่องเสมือน EVM ชี้แจงลำดับของธุรกรรม (เช่น nonce ของธุรกรรมบางอย่างคือ 5 จากนั้นในธุรกรรมนี้ก่อน ธุรกรรมได้รับการประมวลผลแล้ว ธุรกรรมที่มีค่า nonce 4 ในบัญชีจะต้องได้รับการประมวลผล)
แนวคิดที่สองคือการเชื่อมต่อโหนดด้วยความเร็วการยืนยันที่เร็วขึ้นและความสับสนในการทำธุรกรรมที่สูงขึ้น
เมื่อเปลี่ยนโหนดการเชื่อมต่อ คำแนะนำแรกที่นี่คือโหนดเครือข่าย TAICHI เครือข่ายนี้เป็นโซลูชันความปลอดภัยด้านความเป็นส่วนตัวที่ใช้บล็อกเชน เช่น ETH และ Solana โดยการนำชุดของโหนดรีเลย์มาใช้ รับผิดชอบในการรับคำขอธุรกรรมของผู้ใช้และผสมกับธุรกรรมอื่น ๆ เพื่อซ่อนแหล่งที่มาและวัตถุประสงค์ของธุรกรรม
·โหนดรีเลย์: โหนดเหล่านี้เป็นแกนหลักของเครือข่าย TAICHI และมีหน้าที่รับผิดชอบในการรับ การผสม และการส่งต่อธุรกรรม
การผสมธุรกรรม: ด้วยการผสมผสานหลายธุรกรรมเข้าด้วยกัน โหนดรีเลย์สามารถซ่อนแหล่งที่มาและวัตถุประสงค์ของธุรกรรมเดียวได้อย่างมีประสิทธิภาพ
·การป้องกันความเป็นส่วนตัว: วิธีการนี้สามารถป้องกันการวิเคราะห์และติดตามข้อมูลออนไลน์ได้อย่างมีประสิทธิภาพ และปกป้องความเป็นส่วนตัวของผู้ใช้
วิธีการทำงานของ Sweeper คือการตรวจสอบบันทึกธุรกรรมในพูลหน่วยความจำสาธารณะเพื่อให้บรรลุธุรกรรมที่ต้องยึดถือไว้ก่อน แต่โหนด TAICHI ช่วยให้เราสามารถส่งธุรกรรมที่ลงนามไปยังนักขุดได้โดยตรง โดยไม่ต้องออกอากาศผ่านพูลหน่วยความจำสาธารณะ ซึ่งหมายความว่า Sweeper มีความเป็นไปได้สูงในการตรวจสอบ ถ้าไม่เช่นนั้น ก็อาจมีความเป็นไปได้ที่ Front-runing Sweeper (พูลหน่วยความจำสาธารณะหมายถึงการรวบรวมธุรกรรมที่ได้รับการเผยแพร่แล้ว แต่ยังไม่ได้บรรจุลงในบล็อก)
โหนดที่แนะนำที่สองคือ FlashProtect เป็นวิธีการแก้ปัญหา MEV ในระบบ Ethereum ที่จัดทำโดยองค์กร FlashBots หลักการทำงานของมันคือการรวมธุรกรรมของผู้ใช้และส่งโดยตรงไปยังนักขุดผ่าน Flashbots แทนที่จะส่งผ่านพูลหน่วยความจำสาธารณะ เพื่อป้องกันไม่ให้นักขุดและบอทที่เป็นอันตรายค้นพบและใช้ประโยชน์จากธุรกรรมเหล่านี้ใน mempool สาธารณะเพื่อถอนเงินโดยใช้ MEV จึงมีข้อเสียที่ธุรกรรมจะช้ามากเนื่องจากมีการใช้ Flashbots mempool ซึ่งมีตัวตรวจสอบความถูกต้องน้อยกว่า mempool สาธารณะมาก
บทสรุป
โดยทั่วไป วิธีการป้องกันต่างๆ ยังมีจุดมุ่งหมายเพื่อรักษากระบวนการเรียงลำดับของธุรกรรมแบบกระจายอำนาจ และให้แน่ใจว่าสัญญาอัจฉริยะประมวลผลธุรกรรมในลักษณะที่ยุติธรรม แต่วิธีแก้ปัญหาขั้นพื้นฐานที่สุดจะต้องทำการปรับเปลี่ยนจากมุมมองของนักขุดและผู้ตรวจสอบ
Chainyuan Technology เป็นบริษัทที่มุ่งเน้นด้านความปลอดภัยบล็อกเชน งานหลักของเราประกอบด้วยการวิจัยด้านความปลอดภัยบล็อคเชน การวิเคราะห์ข้อมูลออนไลน์ และการช่วยเหลือช่องโหว่ด้านสินทรัพย์และสัญญา และเราประสบความสำเร็จในการกู้คืนสินทรัพย์ดิจิทัลที่ถูกขโมยจำนวนมากสำหรับบุคคลและสถาบัน ในเวลาเดียวกัน เรามุ่งมั่นที่จะจัดทำรายงานการวิเคราะห์ความปลอดภัยของโครงการ การตรวจสอบย้อนกลับแบบออนไลน์ และบริการให้คำปรึกษา/สนับสนุนทางเทคนิคแก่องค์กรอุตสาหกรรม
ขอบคุณสำหรับการอ่าน เราจะมุ่งเน้นและแบ่งปันเนื้อหาความปลอดภัยของบล็อกเชนต่อไป