การวิเคราะห์การโจมตีด้วยเงินกู้แฟลชสี่ครั้งใน BSC Binance Smart Chain
ข้อความ
บทความนี้คัดลอกมาจาก Zhifan Technology และทำซ้ำโดยได้รับอนุญาตในเวลาเพียง 20 วันในเดือนพฤษภาคม 2021 เหตุการณ์การเก็งกำไรจากการโจมตีด้วยสินเชื่อแฟลชสี่ครั้งเกิดขึ้นใน BSC Binance Smart Chain ซึ่งสูญเสียรวมมากกว่า 78 ล้านดอลลาร์สหรัฐ
เทคนิคและหลักการของการโจมตีทั้ง 4 ครั้งมีความคล้ายคลึงกัน Zhifan Technology จะสรุปและเปรียบเทียบหลักการและเทคนิคการโจมตีของเหตุการณ์ทั้ง 4 เหตุการณ์ และหวังว่าฝ่ายโครงการและผู้ใช้จะระมัดระวังมากขึ้น
ก่อนที่จะเริ่มวิเคราะห์เหตุการณ์ด้านความปลอดภัยในเครือข่าย BSC คุณต้องเข้าใจแนวคิดพื้นฐานบางอย่าง เช่น ความหมายของสินเชื่อแฟลช โมเดลกำไรของโครงการ Defi เป็นต้น
สินเชื่อแฟลชคืออะไร
สินเชื่อ Flash คือการกู้ยืมและชำระคืนให้เสร็จสิ้นในการทำธุรกรรมลูกโซ่เดียวโดยไม่มีหลักประกัน เนื่องจากธุรกรรมบนเครือข่ายสามารถรวมการดำเนินการหลายอย่างได้ นักพัฒนาจึงสามารถเพิ่มการดำเนินการบนเครือข่ายอื่นๆ ระหว่างการยืมและการชำระคืน ทำให้การยืมดังกล่าวมีจินตนาการและมีความหมายมากขึ้น ฟังก์ชั่นของสินเชื่อแฟลชคือเพื่อให้แน่ใจว่าผู้ใช้ไม่จำเป็นต้องจำนองเพื่อรับรู้การชำระคืนเงินกู้และหากไม่คืนเงิน การทำธุรกรรมจะถูกกู้คืน นั่นคือการดำเนินการทั้งหมดก่อนหน้านี้จะถูกยกเลิก ดังนั้น เพื่อรับประกันความปลอดภัยของข้อตกลงและเงินทุน
ที่นี่เราใช้ PancakeSwap เป็นตัวอย่าง PancakeSwap เป็นแพลตฟอร์มผู้ดูแลสภาพคล่องอัตโนมัติ (AMM) บน Binance Chain ผู้ใช้สามารถซื้อขายสินทรัพย์ดิจิทัลผ่านแพลตฟอร์มนี้ได้ อย่างไรก็ตาม ไม่เหมือนกับรูปแบบการซื้อขายแบบดั้งเดิมตรงที่วัตถุการซื้อขายของผู้ใช้คือกลุ่มสภาพคล่อง กลุ่มเหล่านี้ถือเงินของผู้ใช้รายอื่น ผู้ใช้ใส่เงินเข้าไปในกลุ่มและรับโทเค็นจากผู้ให้บริการสภาพคล่อง ("LPs") จากนั้นพวกเขาสามารถใช้โทเค็นเหล่านี้เพื่อแลกเปลี่ยนกับส่วนแบ่งของเงินทุนและรับค่าธรรมเนียมการทำธุรกรรมส่วนหนึ่ง กล่าวโดยย่อ ผู้ใช้สามารถแลกเปลี่ยนโทเค็นบนแพลตฟอร์มและรับรางวัลโดยการเพิ่มสภาพคล่อง
ชื่อระดับแรก
1. วัตถุประสงค์ในการวิเคราะห์
แยกแยะสาเหตุของเหตุการณ์
เคล็ดลับความปลอดภัยสำหรับฝ่ายโครงการและผู้ใช้
ชื่อระดับแรก
AutoShark Finance
2. การวิเคราะห์เหตุการณ์
เมื่อวันที่ 25 พฤษภาคม 2021 ตามเวลาปักกิ่ง โปรโตคอล DeFi ของ Binance Chain (BSC) AutoShark Finance ถูกโจมตีโดยสินเชื่อแฟลช
แฮ็กเกอร์สร้างโทเค็น SHARK 100 ล้านรายการและขายพวกมันในปริมาณมากในช่วงเวลาสั้นๆ ทำให้ราคาของ SHARK ตกลงอย่างรวดเร็วจาก 1.2 ดอลลาร์เป็น 0.01 ดอลลาร์ เงินทุนของผู้ใช้ทั้งหมดในกลุ่มกองทุนยังคงปลอดภัย และการโจมตีครั้งนี้ไม่ได้ทำให้ฝ่ายโครงการสูญเสียเงินทุน
แฮ็กเกอร์ใช้ประโยชน์จากช่องโหว่ของฟังก์ชัน getReward ในกลุ่มกลยุทธ์ WBNB/SHARK ในโครงการ (การคำนวณยอดคงเหลือสำหรับการเพิ่มสภาพคล่องผิดพลาด) และด้วยเหตุนี้จึงใช้สัญญา SharkMinter เพื่อทำกำไรจากโทเค็น SHARK จำนวนมาก
ในที่สุดสัญญาก็คำนวณมูลค่าที่สูงมากเมื่อนับการมีส่วนร่วมของแฮ็กเกอร์ ซึ่งทำให้สัญญา SharkMinter สร้างโทเค็น SHARK จำนวนมากสำหรับผู้โจมตี
คำอธิบายภาพ
ภาพหน้าจอของธุรกรรมที่ถูกโจมตีของ AutoShark
ทีม Bogged Finance สูญเสียเงิน 3.62 ล้านดอลลาร์จากการโจมตีเงินกู้ด่วนเมื่อวันที่ 22 พฤษภาคม 2021 ตามเวลาปักกิ่ง Zhifan Technology ติดตามและค้นพบว่าโปรโตคอล DeFi ของ Binance Chain (BSC) Bogged Finance ถูกแฮ็ก。
ประสิทธิภาพเฉพาะคือแฮ็กเกอร์ทำการโจมตีโดยอนุญาโตตุลาการของสินเชื่อแฟลชบนข้อผิดพลาดทางตรรกะของฟังก์ชัน _txBurn ในรหัสสัญญาโทเค็น BOG
ในรหัสสัญญา BOG ควรเรียกเก็บ 5% ของจำนวนการทำธุรกรรมเป็นค่าธรรมเนียมการทำธุรกรรมสำหรับการทำธุรกรรมทั้งหมด ในขณะเดียวกันก็อนุญาตให้โอนด้วยตนเองได้ ในกระบวนการโอนด้วยตนเอง เพียง 1% ของค่าธรรมเนียมการทำธุรกรรมจะ ถูกหักอย่างไรก็ตาม ในการโจมตีครั้งนี้ ผู้โจมตีเพิ่มจำนวนเงินจำนำผ่านสินเชื่อแฟลช จากนั้นใช้อคติการตรวจสอบธุรกรรมของสัญญาสำหรับประเภทการโอนด้วยตนเอง (ที่อยู่การโอนไม่ได้รับการตรวจสอบในฟังก์ชัน _transferFrom) เพื่อเพิ่มและนำสภาพคล่องออกในที่สุดเพื่อดำเนินการโจมตีให้เสร็จสิ้น
คำอธิบายภาพ
ภาพหน้าจอของธุรกรรมที่ถูกโจมตีของ Bogged Finance
PancakeBunny Lightning Attack สูญเสียกว่า 45 ล้านเหรียญ
เมื่อวันที่ 20 พฤษภาคม 2021 ตามเวลาปักกิ่ง Zhifan Technology ติดตามและพบว่าผู้โจมตีใช้ช่องโหว่ของสัญญาเพื่อยืมเงินจำนวนมากจากกลุ่มสภาพคล่องของ PancakeSwap และ ForTube และเพิ่มจำนวน BNB อย่างต่อเนื่องในกลุ่ม BNB-BUNNY ใน สัญญา bunnyMinterV2 มีการสร้างโทเค็น BUNNY ประมาณ 7 ล้านโทเค็น และบางส่วนถูกแลกเปลี่ยนเป็น BNB เพื่อชำระคืนเงินกู้แฟลช และมีผลกำไร 697,000 BUNNY และ 114,000 BNB
คำอธิบายภาพ
ภาพหน้าจอของธุรกรรมที่ถูกโจมตีของ PancakeBunny
Spartan Protocol ถูกโจมตีและสูญเสียเงินประมาณ 30 ล้านดอลลาร์สหรัฐ
เมื่อวันที่ 2 พฤษภาคม 2021 ตามเวลาปักกิ่ง โครงการ DeFi Spartan ถูกโจมตีโดยแฮ็กเกอร์ด้วยเงินกู้ด่วน SpartanSwap ใช้อัลกอริทึม AMM ของ THORCHAINอัลกอริทึมนี้ใช้ค่าธรรมเนียมที่ไวต่อสภาพคล่องแก้ปัญหาสภาพคล่องเริ่มเย็นและปัญหาการลื่นไถล
แต่มีช่องโหว่ในอัลกอริทึมนี้
เมื่อนำสภาพคล่องออก ระบบจะคำนวณจำนวนโทเค็นที่สอดคล้องกันที่ LP ของผู้ใช้จะได้รับตามจำนวนโทเค็นแบบเรียลไทม์ในพูล เนื่องจากช่องโหว่ของอัลกอริทึม (ไม่มีกลไกแก้ไขการเลื่อนหลุดเมื่อนำสภาพคล่องออก) ในเวลานี้ มันจะ เป็นมากกว่าการเพิ่มสภาพคล่องหมายถึงโทเค็นที่มากขึ้น ดังนั้นแฮ็กเกอร์จำเป็นต้องเพิ่มและลบสภาพคล่องซ้ำ ๆ เพื่อรับผลกำไรจากโทเค็นส่วนเกิน
ภาพหน้าจอของ Spartan Protocol Attacked Transaction
ชื่อระดับแรก
3. สรุปวิธีการโจมตีบนเครือข่าย BSC
แฮกเกอร์ระดมทุนผ่านแพลตฟอร์มสินเชื่อแฟลช BSC (PancakeSwap)
จัดทำสัญญาอัตโนมัติสำหรับการแลกเปลี่ยน BNB และโทเค็นแพลตฟอร์ม
ใส่โทเค็นลงในกลุ่มสัญญาของแพลตฟอร์มเพื่อรับรางวัลโทเค็น LP
ส่งคืนกองทุนกู้ยืมแฟลชที่ยืมมา
ถ่ายโอนสินทรัพย์ที่ได้มาอย่างรวดเร็วไปยัง Ethereum ผ่านแพลตฟอร์มสะพานข้ามโซ่ (Nerve)
ขั้นตอนที่ 1: แฮ็กเกอร์ได้รับเงินจำนวนมากจากแพลตฟอร์มการให้ยืม
ขั้นตอนที่ 2: ใช้สัญญาการโจมตีอัตโนมัติเพื่อโจมตีออราเคิลราคาแลกเปลี่ยน
ขั้นตอนที่ 3: รับพื้นที่การเก็งกำไรผ่านความแตกต่างของราคาโทเค็น
ขั้นตอนที่ 5: โอนกำไรข้ามเครือข่ายไปยัง Ethereum เพื่อป้องกันการถูกติดตาม
ชื่อระดับแรก
4. เคล็ดลับความปลอดภัย
จากการวิเคราะห์ข้างต้น เป็นวิธีการทั่วไปสำหรับแฮ็กเกอร์ในการได้รับผลประโยชน์จากช่องโหว่ทางตรรกะของฝ่ายโครงการ ทุกครั้งที่แพลตฟอร์มใหม่ถูกโจมตี ผู้จัดการแพลตฟอร์มรายอื่นควรระมัดระวังมากยิ่งขึ้น และตรวจสอบทันทีว่ารหัสของตนเองมีช่องโหว่ที่เหมือนกันหรือคล้ายคลึงกันหรือไม่ เพื่อปกป้องชื่อเสียงและความปลอดภัยทางการเงินของพวกเขา


