การตรวจสอบสัญญาอัจฉริยะของ DAO ช่วยเสริมความปลอดภัยได้อย่างไร PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

การตรวจสอบสัญญาอัจฉริยะของ DAO ช่วยเสริมความปลอดภัยได้อย่างไร

อ่านเวลา: 6 นาที

การสร้าง DAO นั้นมีลักษณะเฉพาะสำหรับ web3 ซึ่งใช้ประโยชน์จากความสามารถของบล็อกเชนในการควบคุมโปรโตคอลโดยไม่เกี่ยวข้องกับหน่วยงานส่วนกลาง  

DAO ให้ความสำคัญกับสองด้านคือการเข้ารหัสและการจัดเก็บแบบกระจาย สิ่งนี้ทำให้พวกเขามีความสามารถในการทำงานตามการตัดสินใจร่วมกันของสมาชิกในชุมชน

เช่นเดียวกับโปรโตคอล Web3 ข้อกังวลด้านความปลอดภัยจะวนเวียนอยู่กับโปรโตคอล DAO เช่นกัน 

บทความนี้มีจุดมุ่งหมายเพื่อนำเสนอโครงสร้างพื้นฐานที่สนับสนุนของ DAO และแนวทางปฏิบัติในการปรับปรุงความปลอดภัยของสัญญาอัจฉริยะให้ทนต่อการโจมตี   

วัตถุประสงค์ของ อพท

Ethereum ถือเป็นเครดิตในการเป็นบล็อกเชนที่ตั้งโปรแกรมได้เป็นครั้งแรก มีบทบาทอย่างมากในการนำเสนอการกระจายอำนาจที่แท้จริงโดยอนุญาตให้นักพัฒนาเล่นกับโค้ด

ด้วยความเคารพ, DAO สัญญาอัจฉริยะ ได้รับการออกแบบมาเพื่ออุปถัมภ์ ธรรมาภิบาลในสายโซ่

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

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>การกำกับดูแลแบบออนไลน์ที่แสดงให้เห็นถึงข้อเท็จจริงที่ว่าชุมชนดำเนินการบล็อกเชนเพียงอย่างเดียว 

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

เพื่อให้เห็นภาพเป็นตัวอย่าง ให้พิจารณาสัญญาโทเค็น ERC-20 สร้างขึ้นตามมาตรฐาน ERC-20 พร้อมข้อมูล เช่น ที่อยู่สัญญา การจัดหาโทเค็น ชื่อโทเค็น เงื่อนไขการโอนโทเค็น เป็นต้น 

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

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

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

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

ขั้นตอนที่เกี่ยวข้องในการตั้งค่าสัญญาอัจฉริยะของ DAO

กลศาสตร์ของ ธรรมาภิบาลในสายโซ่

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

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>การกำกับดูแลแบบออนไลน์จะดำเนินการผ่านชุดสัญญา ได้แก่ โทเค็น ผู้ว่าราชการ และการล็อคเวลา . มาดูบทบาทของแต่ละคนกันดีกว่า 

Token: โทเค็นจะกำหนดอำนาจการลงคะแนนของสมาชิกชุมชนที่จะเข้าร่วม ธรรมาภิบาลในสายโซ่

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

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>การกำกับดูแลแบบออนไลน์ สัญญาโทเค็นช่วยให้แน่ใจว่ายอดคงเหลือได้รับการตรวจสอบเพื่อรับพลัง และอนุญาตให้ผู้เข้าร่วมแสดงทางเลือกของตนเกี่ยวกับข้อเสนอการกำกับดูแล 

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

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

ไทม์ล็อค: ลักษณะ Timelock เกี่ยวข้องกับการตั้งค่า AcessControl สำหรับบทบาทที่เสนอ บทบาทผู้ดำเนินการ และบทบาทผู้ดูแลระบบ การรวมองค์ประกอบการล็อกเวลาเข้ากับระบบการกำกับดูแลทำให้ผู้เข้าร่วมมีอิสระในการเดินออกไปในกรณีที่ไม่เห็นด้วยกับการตัดสินใจ 

มุมมองระดับสูงเกี่ยวกับความหวาดกลัวด้านความปลอดภัยสำหรับ DAO 

การพึ่งพาสัญญาอัจฉริยะของ DAO ทำให้พวกเขาต้องรับผิดชอบต่อการลงคะแนนเสียงด้านธรรมาภิบาลและการบำรุงรักษาคลัง และแต่ละองค์ประกอบเหล่านี้มีข้อกังวลด้านความปลอดภัยของตัวเอง มาผ่อนคลายกันด้านล่าง 

ข้อกังวลด้านความปลอดภัยในสัญญาอัจฉริยะ

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

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

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>การโทรแบบเรียกซ้ำ 

สัญญาถือครอง 12.7M Ether ซึ่งแฮ็กเกอร์ขโมย 3.6M ETH โดยใช้ช่องโหว่ในสัญญา

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

นอกจากนี้ การเข้ารหัสของสัญญาอัจฉริยะควรมีความโปร่งใสอย่างสมบูรณ์ เพื่อให้แน่ใจว่าฟีเจอร์จะไม่กลายเป็นจุดบกพร่องในภายหลัง 

ความกังวลด้านความปลอดภัยในการกำกับดูแล

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

ถัดไปคือข้อเสนอที่ต้องการการทำธุรกรรมแบบหลายสาย หากข้อเสนอไม่ได้รับการตรวจสอบหรือตรวจสอบโดย DAO ผู้โจมตีสามารถใช้ข้อเสนอเพื่อสร้างผลลัพธ์ที่ซับซ้อน 

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

ข้อเสนอที่มีเจตนาร้ายยก ความกังวลด้านความปลอดภัยอย่างจริงจัง เกี่ยวกับการเปลี่ยนแปลงที่ใช้ในโปรโตคอล AAVE และ Compound ได้รับความเดือดร้อนจากการแฮ็กประเภทนี้ในอดีต 

ความกังวลด้านความปลอดภัยในการดำเนินการ

MakerDAO ซึ่งเปิดตัวในเครือข่าย Ethereum ในปี 2017 ทำได้ดี จนกระทั่งเกิดความผิดพลาดของตลาดในปี 2020 เมื่อราคาของ Ether ลดต่ำลงถึง 50% มันเป็นหลักประกันที่สำคัญที่สุดที่ใช้ใน MakerDAO และการพังทลายของราคาทำให้เกิดสภาพคล่องจำนวนมาก

MakerDAO ไม่ได้ออกแบบมาเพื่อจัดการกับการชำระบัญชีครั้งใหญ่ซึ่งส่งผลให้เกิดการสูญเสียทางการเงินมากขึ้น แม้ว่าการเข้ารหัสจะแข็งแกร่งที่นี่ แต่ความผิดพลาดอยู่ที่การดำเนินการตามกลไกการชำระบัญชี 

จากนั้น การดำเนินการของกลไก DAO ก็ถูกเพิ่มเข้าไปในรายการข้อกังวลด้านความปลอดภัยอื่นๆ ที่มีอยู่ 

รายการตรวจสอบสำหรับการตรวจสอบสัญญาอัจฉริยะของ DAO

ความปลอดภัยเป็นส่วนสำคัญใน ธรรมาภิบาลในสายโซ่

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

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>การกำกับดูแลแบบออนไลน์เพื่อปกป้องอำนาจจากการตกไปอยู่ในมือที่ไม่ดี จากมุมมองด้านความปลอดภัย เรามาดูแนวทางในการพัฒนาสัญญา DAO ที่แข็งแกร่งกันดีกว่า

การโทรระดับต่ำ: การเรียกร้องให้ทำสัญญาโดยพลการซึ่งดึงข้อมูลโดยพลการจะต้องได้รับการจัดการอย่างระมัดระวัง 

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

การถือครอง ETH: จากผลการตรวจสอบพบว่ามีหลายกรณีที่ ETH ไม่ได้รับการจัดการอย่างเหมาะสมในสัญญาที่เกี่ยวข้องกับการกำกับดูแล ดังนั้น ขอแนะนำให้ตรวจสอบวิธีการส่ง ETH เมื่อสัญญาการกำกับดูแลกำหนดให้มีการจัดการ ETH

ข้อควรระวังอีกประการหนึ่งที่ควรสังเกตคือขณะใช้ msg.value ที่อนุญาตการโทรเป็นชุด โอกาสที่รูปแบบนี้อาจผิดพลาดได้ 

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

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

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

ตรวจสอบให้แน่ใจว่าคุณให้ความสนใจกับข้อมูลเฉพาะในขณะที่โยกย้ายและอัปเกรดระบบการกำกับดูแล มีกรณีเช่นที่เกิดขึ้นกับ Uniswap การย้ายไปยังผู้ว่าการ Bravo ทำให้เกิดข้อผิดพลาดในสัญญาที่หยุดการตัดสินใจด้านการกำกับดูแลชั่วคราว 

รวมความล่าช้าโดยใช้สัญญาล็อกเวลา: การดำเนินการที่ล่าช้าทำให้ชุมชนสามารถตรวจสอบการเปลี่ยนแปลงโปรโตคอลก่อนที่จะมีผลบังคับใช้ การหน่วงเวลาเหล่านี้สามารถทำได้ผ่านสัญญา Timelock 

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

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

QuillAudits ความโดดเด่นในการตรวจสอบ DAO Smart Contract

ในยุคปัจจุบัน สำหรับระบบที่ทำงานได้ด้วยตัวเองล้วนๆ หลายๆ โครงการกำลังหาวิธีที่จะฝังตัว ธรรมาภิบาลในสายโซ่

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

” data-gt-translate-attributes=”[{“attribute”:”data-cmtooltip”, “format”:”html”}]”>การกำกับดูแลแบบออนไลน์ ดังนั้นสาขานี้มีการพัฒนาอย่างรวดเร็วและเจริญรุ่งเรืองตามความต้องการของชุมชน 

การโจมตียังมีความซับซ้อน ซึ่งทั้งท้าทายและมีค่าใช้จ่ายสูง ดังนั้นจึงจำเป็นต้องตรวจสอบให้แน่ใจว่ากระบวนการต่างๆ นั้นพร้อมทำงานและมีการปฏิบัติตามโค้ดอย่างใกล้ชิด QuillAudits ทำการศึกษาและตรวจสอบรหัสอย่างละเอียดเพื่อขจัดข้อผิดพลาดที่อาจเกิดขึ้นและปกป้องโครงการจากกิจกรรมที่เป็นอันตราย

16 เข้าชม

ประทับเวลา:

เพิ่มเติมจาก ควิลแฮช