หมายเหตุบรรณาธิการ: บทความนี้มาจากข่าวลูกโซ่ ChainNews (ID: chainnewscom)เขียนโดย LeftOfCenter เผยแพร่โดยได้รับอนุญาต
หมายเหตุบรรณาธิการ: บทความนี้มาจาก
ข่าวลูกโซ่ ChainNews (ID: chainnewscom)
ข่าวลูกโซ่ ChainNews (ID: chainnewscom)
เขียนโดย LeftOfCenter เผยแพร่โดยได้รับอนุญาต
ผู้เขียนรู้สึกขอบคุณเป็นพิเศษต่อ Yu Xian ผู้ก่อตั้ง SlowMist Technology สำหรับความช่วยเหลือในบทความนี้
เป็นวันหยุดสุดสัปดาห์ที่กระสับกระส่ายสำหรับนักลงทุน DeFi สินทรัพย์มูลค่าเกือบ 25 ล้านดอลลาร์ในสัญญาเงินกู้ DeFi แพลตฟอร์ม Lendf.Me ที่รู้จักกันดีถูกแฮ็กเกอร์ปล้น แต่ใช้เวลาเพียงหนึ่งชั่วโมง
ประมาณ 09.00 น. ของวันอาทิตย์ที่ 19 เมษายน ตามเวลาปักกิ่ง Xu Yong จาก DeBank จับภาพหน้าจอในกลุ่ม WeChat เพื่อระบุว่าอัตราการใช้เงินบนแพลตฟอร์ม Lendf.Me นั้นผิดปกติ ในเวลานั้น สินทรัพย์ให้ยืมเกือบทั้งหมดบนแพลตฟอร์มมีอัตราการให้ยืมที่สูงมาก อัตราการใช้ สินทรัพย์จำนวนมากสูงถึง 99% และอัตราการใช้ imBTC อยู่ที่ 100% ข้อมูลจาก DeFi Pulse ยังแสดงให้เห็นว่าสินทรัพย์ที่ถูกล็อกบนแพลตฟอร์ม Lendf.Me ลดลงอย่างรวดเร็ว
WETH: 55159.02134,
WBTC: 9.01152,
CHAI: 77930.93433,
HBTC: 320.27714,
HUSD: 432162.90569,
BUSD: 480787.88767,
PAX: 587014.60367,
TUSD: 459794.38763,
USDC: 698916.40348,
USDT: 7180525.08156,
USDx: 510868.16067,
imBTC: 291.3471
ในไม่ช้า Tokenlon ได้ออกประกาศประกาศระงับธุรกรรม imBTC
ทีม Lendf.Me ยืนยันในภายหลังว่าเวลา 8:45 น. ตามเวลาปักกิ่ง มีการแฮ็กที่ความสูงบล็อก 9899681 ทีมงานระบุว่าเว็บไซต์ปิดตัวลงและเริ่มการสอบสวนแล้ว ทีมเทคนิคพบปัญหาและแนะนำให้ผู้ใช้ทุกคนบนหน้าเว็บหยุดฝากทรัพย์สินไว้ในสัญญายืม
จนถึงตอนนี้ แฮ็กเกอร์ได้ล้างเนื้อหาพื้นที่เก็บข้อมูลของผู้ใช้ทั้งหมดบนแพลตฟอร์ม Lendf.Me ข้อมูลออนไลน์แสดงให้เห็นว่าหลังจากการโจมตี มูลค่า USD ของสินทรัพย์ที่ถูกล็อคของ Lendf ลดลงทันที 100% เป็น 6 USD ในขณะที่มูลค่ารวมที่ถูกล็อคก่อนหน้านี้เกิน 24.9 ล้าน USD การสังเกตในห่วงโซ่พบว่าผู้โจมตียังคงแลกเปลี่ยนสินทรัพย์ที่ถูกขโมยเป็น ETH และโทเค็นอื่นๆ ผ่านแพลตฟอร์ม DEX เช่น 1inch.exchange, ParaSwap และ Tokenlon
ตามสถิติที่ออกโดยบริษัทรักษาความปลอดภัยบล็อกเชน SlowMist Technology ในเวลานั้น การสูญเสียสะสมของ Lendf.Me ที่ถูกโจมตีอยู่ที่ประมาณ 24,696,616 ดอลลาร์สหรัฐ สกุลเงินและจำนวนเงินที่ถูกขโมยมีดังนี้:
ในตอนนี้ เราสามารถนึกถึง bzx ได้ง่ายๆ ซึ่งมีการโจมตีด้วยเงินกู้แบบแฟลชเมื่อไม่นานนี้ นอกจากนี้ การโจมตีดังกล่าวยังเกิดขึ้นในวันเสาร์ของเดือนมกราคม และขโมยเงินไป 900,000 ดอลลาร์สหรัฐในการโจมตี 2 ครั้ง ในเวลานั้น ผู้ที่ชื่นชอบ DeFi หลายคนตระหนักได้ทันทีว่า DeFi ที่เฟื่องฟูนั้นไม่ปลอดภัยอย่างที่คิด
ในคืนวันอาทิตย์ สิ่งต่าง ๆ เปลี่ยนไปอย่างมากเมื่อแฮ็กเกอร์เริ่มคืนทรัพย์สินบางส่วนให้กับ Lendf.Me
การกระทำนี้ได้รับการยืนยันในแถลงการณ์อย่างเป็นทางการที่ออกโดยทีมในภายหลัง Yang Mindao ผู้ก่อตั้ง dForce ผู้ริเริ่มแพลตฟอร์ม Lendf.Me กล่าวในบทความที่เผยแพร่ในภายหลังว่า "แฮ็กเกอร์พยายามติดต่อเรา และเราตั้งใจที่จะพูดคุยกับพวกเขา" บัญชีผู้ดูแลระบบของแพลตฟอร์ม Lendf.Me ตอบสนองต่อผู้โจมตีผ่านบันทึกช่วยจำ Yang Mindao กล่าวว่าเขากำลังร่วมมือกับการแลกเปลี่ยนและหน่วยงานบังคับใช้กฎหมายเพื่อติดตามแฮ็กเกอร์และพยายามอย่างดีที่สุดเพื่อช่วยเหลือเงินที่ถูกขโมย
ในขณะเดียวกัน ผู้ที่ตกเป็นเหยื่อของแพลตฟอร์ม Lendf.Me จำนวนมากได้ฝากข้อความถึงแฮ็กเกอร์ผ่านการโอน โดยขอให้อีกฝ่ายคืนเงินที่หามาอย่างยากลำบาก จนถึงขณะนี้ การโจรกรรมของแฮ็กเกอร์ได้พัฒนาเป็นเหตุการณ์กลุ่มใหญ่
ทีมงานยังประกาศมาตรการติดตามผลหลายอย่างเพื่อแก้ไขเหตุการณ์ ได้แก่: 1. ติดต่อบริษัทรักษาความปลอดภัยชั้นนำเพื่อดำเนินการประเมินความปลอดภัยของ Lendf.Me ที่ครอบคลุมมากขึ้น 2. ทำงานร่วมกับพันธมิตรเพื่อพัฒนาโซลูชันและใช้ประโยชน์จากการปรับโครงสร้างระบบใหม่ เราถูกโจมตี เราจะไม่พ่ายแพ้" 3. เรากำลังทำงานร่วมกับการแลกเปลี่ยนรายใหญ่ ผู้ค้า OTC และหน่วยงานบังคับใช้กฎหมายเพื่อตรวจสอบสถานการณ์ ยึดเงินที่ถูกขโมย และติดตามแฮกเกอร์
ณ ตอนนี้ การสืบสวนและสกัดกั้นเงินที่ถูกขโมยนั้นยังดำเนินอยู่
ชื่อเรื่องรองEtherscanกู้คืนกระบวนการโจมตี
สถานการณ์ที่ทราบในปัจจุบันคือผู้โจมตีใช้ประโยชน์จาก "คุณลักษณะ" ของมาตรฐาน ERC-777 ที่นำมาใช้โดย imBTC เพื่อดำเนินการ "การโจมตีซ้ำ" (reentrancy attack) ส่งผลให้สินทรัพย์ที่มีมูลค่าตลาดประมาณ 25 ล้านดอลลาร์สหรัฐถูก ถูกขโมยจากสัญญา Lendf.Me นำออกไป
SlowMist ได้กู้คืนรายละเอียดของการโจมตีนี้โดยละเอียด: ที่อยู่ของผู้โจมตีที่โจมตี Lendf.Me คือ 0xa9bf70a420d364e923c74448d9d817d3f2a77822 และคราวนี้ผู้โจมตีดำเนินการโดยใช้สัญญา 0x538359785a8d5ab1a741a0ba94f26a800759d 91ง.
โดยการดู
หนึ่งในธุรกรรมล่าสุดที่พบ:
ผู้โจมตีฝากเงิน 0.00021593 imBTC เป็นครั้งแรก แต่ประสบความสำเร็จในการถอน 0.00043188 imBTC จาก Lendf.Me กล่าวคือจำนวนเงินที่ถอนออกไปนั้นเกือบสองเท่าของจำนวนเงินที่ฝาก
แล้วผู้โจมตีได้รับยอดเงินเป็นสองเท่าจากธุรกรรมระยะสั้นได้อย่างไร จากนั้น SlowMist ทำการวิเคราะห์เชิงลึกของทุกการกระทำในการทำธุรกรรม:
ผู้โจมตีทำการเรียกสองครั้งไปยังฟังก์ชัน supply() บน Lendf.Me แต่การเรียกใช้ทั้งสองนี้เป็นอิสระต่อกัน ไม่ได้เรียกฟังก์ชัน supply() อีกครั้งในฟังก์ชัน supply() ก่อนหน้า
ทันทีหลังจากนั้น ระหว่างการเรียกใช้ฟังก์ชัน supply() ครั้งที่สอง ผู้โจมตีจะเริ่มการเรียกฟังก์ชันการถอน () ของ Lendf.Me ในสัญญาของเขาเอง และถอนออกในที่สุด
การเรียกถอน () ของผู้โจมตีเกิดขึ้นในฟังก์ชัน TransferFrom นั่นคือเมื่อ Lendf.Me เรียกฟังก์ชัน hook ของผู้ใช้ tokensToSend() ผ่านการโอนจาก เห็นได้ชัดว่าผู้โจมตีได้ป้อนสัญญา Lendf.Me อีกครั้งผ่านฟังก์ชัน supply() ทำให้เกิดการโจมตีซ้ำ
หากรายละเอียดทางเทคนิคข้างต้นไม่ง่ายนักที่ Xiaobai จะเข้าใจ คุณสามารถใช้การเปรียบเทียบต่อไปนี้เพื่อทำความเข้าใจว่าการโจมตีแบบย้อนกลับคืออะไร:
Teller B สอบถามเกี่ยวกับจำนวนเงินในบัญชีของ A และบันทึกจำนวนเงินลงใน "บัญชีชั่วคราวที่จะถอนออก" อย่างไรก็ตาม ก่อนที่พนักงาน B จะถอนเงินจาก "บัญชีชั่วคราวที่จะถอนออก" และอัปเดตจำนวนเงินในบัญชีของ A และรีเซ็ต "บัญชีชั่วคราวที่จะถอนออก" ของ A นั้น A ได้หายตัวไปแล้ว
A มาถึงอีกสาขาหนึ่งด้วยความเร็วแสง และบอกพนักงาน C ของสาขานั้นว่าเขาต้องการถอนเงิน และพนักงาน C ดำเนินการแทนพนักงานคนก่อน B อีกครั้ง: สอบถามเกี่ยวกับจำนวนเงินในบัญชีของ A และบันทึก จำนวนเงินอีกครั้งไปที่บัญชี "การถอนชั่วคราวที่รอการถอน" ถอนเงินจาก "บัญชีชั่วคราวที่จะถอน" และอัปเดตจำนวนเงินในบัญชีของ A และรีเซ็ต "บัญชีชั่วคราวที่จะถอน" ของ A
ในท้ายที่สุด สิ่งนี้ทำให้ A ต้องถอนเงินจำนวนสองเท่าของเขาเอง และต่อไปเรื่อย ๆ จนกว่าเงินในธนาคารจะหมดไป
ในกรณีของการแฮ็ก Lendf.Me นั้น A ตรงกับแฮ็กเกอร์ และธนาคารคือ Lendf.Me
ชื่อเรื่องรอง
ภัยพิบัติมาจากไหน?
นี่เป็นเหตุการณ์การแฮ็กที่สำคัญในฟิลด์ DeFi ซึ่งก่อให้เกิดการอภิปรายอย่างกว้างขวางในอุตสาหกรรม ขอบเขตไม่ได้ จำกัด อยู่ที่จำนวนที่ถูกแฮ็กและตัวโครงการเท่านั้น แต่ยังเกี่ยวข้องกับความสำคัญของการรักษาความปลอดภัย ความหมายของการเงินแบบเปิด ความครอบคลุม ของชุมชนและแม้แต่ความเข้าใจผิดและอคติในชุมชนบล็อกเชนตะวันตก
ประการแรก 25 ล้านดอลลาร์ไม่ใช่การสูญเสียเล็กน้อย แต่อาจเป็นการประหยัดทั้งหมดของผู้ใช้ทั่วไปบนแพลตฟอร์ม สำหรับนักสำรวจกลุ่มแรกๆ ในแวดวง DeFi ความสงสัยเกี่ยวกับแพลตฟอร์มแบบรวมศูนย์ทำให้พวกเขาหันมายอมรับการเงินแบบเปิด ครั้งนี้ ราคาที่หนักอึ้งนี้ถือเป็นการระเบิดครั้งใหญ่อย่างไม่ต้องสงสัยซึ่งทำให้พวกเขามั่นใจใน DeFi
สำหรับฝั่งโครงการ นี่อาจหมายถึงการเริ่มต้นใหม่ทั้งหมดอีกครั้ง ในฐานะหนึ่งในผู้นำใน DeFi Lendf.Me เป็นโครงการบล็อกเชนระดับดาวที่ริเริ่มจากจีนและเป็นดาวรุ่งที่มีศักยภาพ เพิ่งเปิดตัวได้เพียงครึ่งปีในเดือนกันยายน 2019 และมีส่วนในตลาดสินเชื่อทางการเงินแบบเปิด และได้พัฒนาเป็นข้อตกลงการให้ยืม Stablecoin ในสกุลเงิน Fiat ที่ใหญ่ที่สุดแล้ว ก่อนการโจมตี บริษัทมีทรัพย์สินเกือบ 30 ล้านดอลลาร์ และสินเชื่อคงค้างอีกเกือบ 10 ล้านดอลลาร์ เมื่อไม่กี่วันที่ผ่านมา Lendf.Me ได้รับการลงทุนเชิงกลยุทธ์มูลค่า 1.5 ล้านดอลลาร์สหรัฐจาก Multicoin Capital, Huobi Capital และ CMB International
Yang Mindao ผู้ก่อตั้ง dForce ยังระบุในแถลงการณ์ว่าเขาประสบความสูญเสียทางการเงินอย่างร้ายแรงเป็นการส่วนตัวจากการโจมตีด้วยการแฮ็คครั้งนี้
ที่แย่ไปกว่านั้น นอกจากผู้ที่ตกเป็นเหยื่อโดยตรงแล้ว ความเสียหายทางอ้อมที่เกิดจากเหตุการณ์นี้อาจยิ่งใหญ่กว่านั้น ในเดือนกุมภาพันธ์ของปีนี้ DeFi เพิ่งเปิดตัวเหตุการณ์สำคัญ (สินทรัพย์ที่ถูกล็อคเกิน 1 พันล้านดอลลาร์สหรัฐ) และในฐานะกรณีการใช้งานจริงที่สำคัญของ Ethereum สิ่งนี้อาจสูญเสียความเชื่อมั่นใน Ethereum และแม้แต่เครือข่ายสาธารณะทั้งหมด
ในการตอบสนองต่อการโจมตีนี้ สมาชิกชุมชนบางคนเชื่อว่าแพลตฟอร์มมีความรับผิดชอบที่หลีกเลี่ยงไม่ได้ Lendf.Me เองในฐานะผู้ดำเนินการ ไม่ได้ตรวจสอบความปลอดภัยของสัญญาในด้านอินเทอร์เฟซอย่างเพียงพอ ซึ่งนำไปสู่อุบัติเหตุ ในเรื่องนี้ ทีมงานระบุว่าได้ติดต่อบริษัทรักษาความปลอดภัยชั้นนำเพื่อดำเนินการประเมินความปลอดภัยของ Lendf.Me ที่ครอบคลุมมากขึ้น และคาดว่าทีมงานจะเสริมความแข็งแกร่งในด้านนี้ในอนาคต
ยังมีอีกเสียงหนึ่งที่เชื่อว่า Tokenlon ซึ่งเป็นผู้ออกสินทรัพย์ของ imBTC นั้นต้องรับผิดชอบ หลังจากเหตุการณ์ Uniswap ปิดการโอนสัญญาของ imBTC เมื่อคืนก่อน มันก็เปิดฟังก์ชันการโอนสัญญาของ imBTC อีกครั้ง ทำให้แฮ็กเกอร์มีเครื่องฉวยโอกาส
อย่างไรก็ตาม ข้อมูลที่เปิดเผยโดย Tokenlon ระบุว่าก่อนที่ฟังก์ชันการถ่ายโอนของ imBTC จะเริ่มต้นใหม่ในเวลา 17:00 น. ของวันที่ 18 เมษายน ได้สื่อสารกับ Lendf.Me และแพลตฟอร์มความร่วมมือ imBTC อื่นๆ และได้รับการยืนยันจาก Lendf.Me และแพลตฟอร์มความร่วมมืออื่นๆ ว่าความปลอดภัย ไม่มีการประเมินความเสี่ยง หลังจากเกิดปัญหา ฟังก์ชันการถ่ายโอนจะเริ่มต้นใหม่
imBTC เป็นโทเค็น ERC-777 (เข้ากันได้กับ ERC-20) ที่ยึดที่ 1:1 ด้วย BTC ออกและควบคุมโดย Tokenlon imBTC ใช้ข้อกำหนดมาตรฐานโทเค็น ERC-777
ด้วยเหตุผลด้านความปลอดภัย นักลงทุนจำนวนมากได้เริ่มตรวจสอบว่าแพลตฟอร์มใดเกี่ยวข้องกับโทเค็นมาตรฐาน ERC-777 และมาตรฐาน ERC-777 ได้เปลี่ยนสีมาระยะหนึ่งแล้ว
นอกจากนี้ยังมีคนที่บ่นเกี่ยวกับมาตรฐานโปรโตคอลโดยคิดว่าโปรโตคอลนั้นใช้ได้ แต่นักพัฒนาไม่ได้คำนึงถึงปัญหาความเข้ากันได้เมื่อใช้งาน
ตัวอย่างเช่น นักพัฒนาบางคนเชื่อว่า ERC20 คือ ERC777 เช่นเดียวกับที่ Bitcoin คือ Ethereum แม้ว่า ERC20 จะปลอดภัยกว่า แต่ฟังก์ชันก็มีข้อจำกัด
มาตรฐาน ERC20 ซึ่งถือกำเนิดขึ้นในปี 2015 มีฟังก์ชันที่เรียบง่าย ดังนั้นจึงเป็นที่นิยมมากเช่นกัน แต่สำหรับระบบที่พยายามสร้าง "เงินที่ตั้งโปรแกรมได้" มาตรฐานโทเค็น ERC 20 นั้นมีข้อจำกัดอย่างมาก และข้อจำกัดของมันได้นำไปสู่ปัญหาประสบการณ์ของผู้ใช้ Ethereum มากมาย
มาตรฐาน ERC 777 ถือได้ว่าเป็นเวอร์ชันอัปเกรดของมาตรฐาน ERC 20 ในฐานะที่เป็นมาตรฐานโทเค็นใหม่ เข้ากันได้กับ ERC20 แบบย้อนหลังและเพิ่มฟังก์ชันใหม่ๆ ฟังก์ชันเหล่านี้ประกอบด้วยฟิลด์ข้อมูล ตัวดำเนินการ และกระเป๋าสตางค์สัญญา คุณลักษณะต่างๆ เช่น ปฏิเสธโทเค็นที่ไม่ต้องการ
แต่ปัญหาที่ใหญ่ที่สุดที่ ERC 777 สามารถแก้ไขได้คือการเพิ่ม "hook" เพื่อให้ฟังก์ชันการชำระเงินสำหรับโทเค็นอื่นที่ไม่ใช่โทเค็น Ethereum ทำให้ธุรกรรมการแปลง Dai เป็น ETH ใน Uniswap เสร็จสิ้นในขั้นตอนเดียว
สำหรับนักเรียนที่ไม่คุ้นเคยกับมาตรฐานโทเค็น ERC20 นี่คือการทำให้เป็นที่นิยมทางวิทยาศาสตร์อย่างง่าย: เนื่องจากโทเค็นมาตรฐาน ERC20 ไม่มี "ฟังก์ชันการชำระเงิน" จึงจำเป็นต้องมีธุรกรรมหลายรายการเมื่อทำธุรกรรมโทเค็น ตัวอย่างเช่น หากคุณใช้ Uniswap เพื่อ แปลง ETH เป็น Dai โดยพื้นฐานแล้วคุณสามารถรับ Dai ได้โดยการส่ง ETH แต่ถ้าคุณแปลง Dai เป็น ETH คุณต้องทำธุรกรรมเพื่ออนุมัติ Dai ก่อนจึงจะสามารถแลกเปลี่ยนเป็น ETH ได้
สาเหตุของปัญหานี้คือมาตรฐาน ERC20 ไม่มี "ฟังก์ชันการชำระเงิน" ซึ่งอนุญาตให้สัญญาดำเนินการโค้ดเมื่อได้รับ ETH แต่ไม่สามารถเรียกใช้โค้ดเมื่อได้รับโทเค็นอื่นที่ไม่ใช่ ETH ERC 777 แก้ปัญหานี้ด้วยการเพิ่ม "hook" ทำให้ธุรกรรมการแปลง Dai เป็น ETH เสร็จสิ้นในขั้นตอนเดียว
อย่างไรก็ตาม การโจมตีแบบ reentrancy ไม่ใช่เรื่องใหม่ "เหตุการณ์ DAO" ที่นำไปสู่การแตกแยกของ Ethereum ในปี 2560 เกิดจากการโจมตีของผู้กลับเข้ามาใหม่ สำหรับนักพัฒนา สิ่งใหม่คือ การโจมตี re-entry อาจส่งผลกระทบต่อโทเค็นอื่นที่ไม่ใช่ ETH ก่อนหน้านี้ นักพัฒนาอาจเข้าใจว่า: การถ่ายโอน ETH มีความเสี่ยงที่จะถูกโจมตีซ้ำ แต่การถ่ายโอนโทเค็นอื่น ๆ เสี่ยงต่อการถูกโจมตีซ้ำ . ปลอดภัย.
เหตุการณ์นี้ยังก่อให้เกิดภาพสะท้อนต่อระบบนิเวศ DeFi ทั้งหมด
DeFi หรือที่รู้จักกันในนามของสกุลเงิน Lego มีลักษณะของการประกอบเข้าด้วยกันและการทำงานร่วมกัน ซึ่งทำให้เรามีความเป็นไปได้มากมายนับไม่ถ้วน แต่อีกด้านหนึ่งของเหรียญก็เป็นปัญหาใหญ่ที่สุดของ DeFi เช่นกัน ในฐานะที่เป็นระบบที่ซับซ้อน ความเสี่ยงของ DeFi จะเพิ่มขึ้นอย่างไม่สิ้นสุด และความปลอดภัยของระบบขึ้นอยู่กับท่อนไม้ที่สั้นที่สุด ระบบจะถูกลากลงมา นี่คือหลักการลำกล้องแบบคลาสสิก
ด้วยเหตุนี้ หนึ่งในคำแนะนำเชิงป้องกันที่ได้รับจากทีมรักษาความปลอดภัย SlowMist คือ: "เมื่อเชื่อมต่อสัญญาหลายฉบับ จำเป็นต้องตรวจสอบความปลอดภัยของรหัสและความปลอดภัยทางธุรกิจของสัญญาหลายฝ่าย และพิจารณาการผสมผสานของสถานการณ์ทางธุรกิจต่างๆ อย่างครบถ้วน คำถามเพื่อความปลอดภัย."
ชื่อเรื่องรอง
คิดใหม่
นักสำรวจในยุคแรกๆ ที่เปลี่ยนจากแพลตฟอร์มแบบรวมศูนย์มาเป็น DeFi เนื่องจากกังวลเกี่ยวกับความเสี่ยงด้านความปลอดภัย จู่ๆ ก็ค้นพบว่าปัญหาด้านความปลอดภัยของการกระจายอำนาจดูเหมือนจะยิ่งใหญ่กว่านั้น
โดยเฉพาะอย่างยิ่งในปีที่ผ่านมามีอุบัติเหตุเกิดขึ้นมากมายในสนาม DeFi
ในเดือนมิถุนายน 2019 Synthetix ถูกโจมตีโดยเครื่อง Oracle และสูญเสียโทเค็นสังเคราะห์กว่า 37 ล้าน sETH
ในเดือนมกราคมของปีนี้ bZx ถูกโจมตีสองครั้งและสูญเสียไป 900,000 ดอลลาร์สหรัฐ
ในเดือนมีนาคมของปีนี้ Zap smart contract ที่จัดทำโดยโครงการ DeFi star ใหม่ iearn.finance ไม่ได้ตรวจสอบการเลื่อนหลุดซึ่งนำไปสู่ธุรกรรมที่ผิดปกติบนแพลตฟอร์มการซื้อขายสกุลเงินที่เสถียร Curve หลังจากนั้น ผู้แพ้แทบจะไม่ได้รับความสูญเสียจากมนุษย์ การเข้าแทรกแซง แต่ Andre Cronje ผู้ก่อตั้งกล่าวว่าเขาไม่สามารถแบกรับแรงกดดันจากสังคมได้และจะปล่อยให้โครงการดำเนินการเอง
เหตุการณ์หงส์ดำที่เกิดขึ้นเมื่อวันที่ 12 มีนาคม ทำให้ผู้ชำระบัญชีบางรายชนะการประมูลขั้นตอนการชำระบัญชีหลักประกัน Ethereum ด้วยราคาประมูล 0 ส่งผลให้ MakerDAO มีหนี้คงค้างเกือบ 5 ล้านดอลลาร์ภายใต้หลักประกัน ส่งผลให้มีการจำนองหลายครั้ง หลักประกันทั้งหมดสูญหายระหว่าง การขายออกของตลาด
วันก่อนการแฮ็ก Lendf.Me แฮ็กเกอร์ใช้ประโยชน์จากปัญหาความเข้ากันได้ ERC777 ของ Uniswap เพื่อขโมย imBTC มูลค่ากว่า $300,000
เห็นได้ชัดว่าเหตุการณ์ที่เกิดขึ้นกับ Lendf.Me นี้ไม่ใช่ครั้งแรกและจะไม่ใช่ครั้งสุดท้าย
เหตุการณ์การแฮ็กได้ส่งสัญญาณเตือนไปทั่วทั้งอุตสาหกรรม ทำให้โครงการต่างๆ ต้องเริ่มตรวจสอบช่องโหว่ด้านความปลอดภัยของตนเอง
หนึ่งวันหลังจากเหตุการณ์ Lendf.Me Curve ซึ่งเป็นแพลตฟอร์มการซื้อขาย Stablecoin แบบกระจายอำนาจที่ใช้ Bonding Curve สำหรับการทำตลาด ประกาศว่าสัญญากองทุนรวม sUSD มีช่องโหว่ โดยกล่าวว่า "ช่องโหว่ทั้งหมดได้รับการแก้ไขแล้ว กองทุนมีความปลอดภัย และ ไม่มีความสูญเสียเกิดขึ้น" Curve ขอให้ผู้ใช้ถอนเงินและรอสัญญาใหม่ที่จะใช้งาน การเปลี่ยนแปลงสัญญาใหม่จะได้รับการตรวจสอบ
จนถึงตอนนี้ แพลตฟอร์มที่สอดคล้องกับมาตรฐาน ERC-777 ได้เริ่มดำเนินการแล้ว PoolTogether แพลตฟอร์ม Ethereum ประกาศว่าได้ถอดโทเค็นมาตรฐาน ERC-777 plDai ซึ่งก่อนหน้านี้เคยเป็นกองทุนขนาดเล็กสำหรับนักพัฒนาบุคคลที่สามซึ่งเกี่ยวข้องกับเพียง 480 plDai อย่างไรก็ตาม Yu Xian ผู้ก่อตั้ง SlowMist กล่าวว่า "การลบ plDai ไม่ใช่วิธีแก้ปัญหาที่สมบูรณ์ โค้ดของพวกเขาเองยังเข้ากันได้กับ ERC-777 ดังนั้นโค้ดของพวกเขาจึงจำเป็นต้องได้รับการเสริมความแข็งแกร่ง"
PeckShield ทีมรักษาความปลอดภัยบล็อกเชนอีกทีมหนึ่งได้เสนอวิธีแก้ปัญหาที่มีประสิทธิภาพ โดยแนะนำให้นักพัฒนานำวิธีการ "ตรวจสอบผลกระทบ-ปฏิสัมพันธ์" มาใช้เพื่อป้องกันการโจมตีย้อนกลับดังกล่าว ตัวอย่างเช่น ใน supply() ของ Lendf.Me ถ้ายอดโทเค็นได้รับการอัพเดตก่อน ก็จะเรียกว่า doTransferIn() สิ่งนี้จะทำให้การโจมตีไม่สามารถรีเซ็ตยอดคงเหลือหลังจากถอนออก ()
นี่เป็นโอกาสที่ดีในการสรุปและไตร่ตรอง ทำให้โครงการและผู้ใช้เองเริ่มตรวจสอบความสำคัญของความปลอดภัยได้ ในระยะยาวจะเป็นประโยชน์ต่อการพัฒนาอุตสาหกรรมทั้งหมด
สำหรับโปรเจกต์ปาร์ตี้ สิ่งที่สำคัญที่สุดในอนาคตคือการป้องกันไม่ให้เวลาผ่านไป และ "วิธีเพิ่มความปลอดภัยให้กับกองทุนแพลตฟอร์ม" / ด้วยเหตุนี้ SlowMist จึงได้นำเสนอคำแนะนำในการป้องกัน:
เพิ่มกลไกการล็อคให้กับวิธีการดำเนินธุรกิจที่สำคัญ เช่น: ReentrancyGuard ของ OpenZeppelin;
เมื่อพัฒนาสัญญา ให้ใช้รูปแบบการเขียนของการเปลี่ยนแปลงตัวแปรของสัญญานี้ก่อน แล้วจึงทำการเรียกภายนอก
ก่อนที่โครงการจะออนไลน์ ทีมรักษาความปลอดภัยบุคคลที่สามที่ยอดเยี่ยมจะได้รับเชิญให้ดำเนินการตรวจสอบความปลอดภัยอย่างครอบคลุมเพื่อค้นหาปัญหาด้านความปลอดภัยที่อาจเกิดขึ้นให้ได้มากที่สุด
เมื่อมีการเชื่อมต่อหลายสัญญา จำเป็นต้องตรวจสอบความปลอดภัยของรหัสและความปลอดภัยทางธุรกิจของสัญญาหลายฝ่าย และพิจารณาประเด็นด้านความปลอดภัยอย่างเต็มที่ภายใต้การรวมกันของสถานการณ์ทางธุรกิจต่างๆ
สัญญาควรตั้งสวิตช์หยุดให้มากที่สุดเพื่อที่เมื่อเกิดเหตุการณ์ "หงส์ดำ" จะสามารถตรวจจับได้ทันเวลาและหยุดการสูญเสีย
การรักษาความปลอดภัยเป็นแบบไดนามิก และแต่ละฝ่ายในโครงการจำเป็นต้องจับภาพข่าวกรองภัยคุกคามที่อาจเกี่ยวข้องกับโครงการของตนเองอย่างทันท่วงที และตรวจสอบความเสี่ยงด้านความปลอดภัยที่อาจเกิดขึ้นโดยทันที
ในระดับผู้ใช้ การโจมตีแต่ละครั้งจะลดความเชื่อมั่นของผู้ใช้ใน DeFi ลง 2-3 จุด หากไม่มีมาตรการล่วงหน้า ผู้ใช้จะสูญเสียความเชื่อมั่นใน DeFi สำหรับ DeFi ความมั่นใจเป็นสิ่งสำคัญมาก หากไม่มีความมั่นใจ DeFi ก็ไร้อนาคต
อ้างถึง:
การแลกเปลี่ยนแบบรวมศูนย์ขนาดใหญ่ยังคงมีมาตรการแก้ไขในกรณีของการสูญเสียสินทรัพย์ สถาบันแบบรวมศูนย์ที่มีเงินทุนดีโดยทั่วไปจะชดเชยผู้ใช้สำหรับการสูญเสียและตั้งค่ากลุ่มประกัน วิธีการแก้ไขสำหรับการกระจายอำนาจทางการเงินควรดำเนินการอย่างไร? การประกันแบบกระจายศูนย์หรือผลสรุปร่วมกัน? หากไม่มีการรับรองจากสถาบันส่วนกลาง ก็เป็นการแสวงหากลไกที่มีประสิทธิภาพสำหรับการปกครองที่ดินสาธารณะ
