บทวิเคราะห์เหตุการณ์ Manual Mint $KUSD และ Synthetic Assets บนแพลตฟอร์ม Dopple Finance

Inspex
3 min readJan 24, 2022

--

https://docs.dopple.finance/twindex/synthetic-assets-tassets/meta-liquidity

ภาพรวมของเหตุการณ์

เมื่อวันที่ 15 มกราคม 2565 ทาง Inspex ได้รับการติดต่อมาจากผู้ใช้แพลตฟอร์ม Dopple Finance จำนวนมากให้ตรวจสอบธุรกรรมที่อาจจะเป็นธุรกรรมที่ไม่พึงประสงค์ของแพลตฟอร์ม Dopple Finance ในช่วงก่อนเหตุการณ์ที่ราคาของ $DOPX ลดลงอย่างรุนแรง

ทางเราได้ทำการตรวจสอบ contract ของ $KUSD และพบธุรกรรมที่น่าสนใจจากกระเป๋าของผู้พัฒนาระบบที่มีความผิดปกติซึ่งพบว่าเป็นการสร้าง Meta Liquidity โดยไม่มีสินทรัพย์ค้ำประกันทำให้ผู้ใช้งานรายอื่นที่ทำการสร้างสภาพคล่องให้กับแพลตฟอร์มได้รับค่าธรรมเนียมจากการวางสภาพคล่องที่ควรจะเป็นผลประโยชน์ที่ผู้ใช้แพลตฟอร์มควรได้รับในปริมาณที่น้อยลง นอกจากนั้นยังมี $KUSD บางส่วนถูกโอนไปที่กระเป๋าอื่นเพื่อทำการ redeem และ buyback $KUSD จากแพลตฟอร์ม Twindex AMM และมีบางส่วนถูก redeem เป็น $USDC และโอนต่อไปที่ Binance

สรุปเส้นทางการทำธุรกรรมเป็นแผนภาพดังนี้:

สามารถตรวจรายละเอียดธุรกรรมทั้งหมดได้ใน spreadsheet ด้านล่างนี้:

https://docs.google.com/spreadsheets/d/1gmHbhgL9gTghg6xIrB5CoY9--SbldYY8qO_uhDjgO9k

และสามารถสรุปเหตุการณ์ที่เกิดขึ้นได้ดังนี้:

การ Manual Mint $KUSD โดยผู้พัฒนา

กระบวนการนี้เริ่มขึ้นเมื่อวันที่ 22 ธันวาคม 2564 โดยมีการใช้ กระเป๋าของผู้พัฒนา(Dopple Finance Deployer) ในการให้สิทธิ์ mint กับตนเอง ทำให้สามารถ mint $KUSD ได้อย่างอิสระ

ด้วยสิทธิ์ดังกล่าว ผู้พัฒนาได้ทำการ mint 1.6 ล้าน $KUSD เข้ากระเป๋าตนเองโดยที่ไม่มีสินทรัพย์ค้ำประกันซึ่งโดยปกติแล้วจะต้องใช้ $USDC และ $DOPX ในการค้ำประกันเพื่อ mint $KUSD

การวางสภาพคล่องของคู่ Synthetic Asset

หลังจากที่มีการ mint $KUSD ทางผู้พัฒนาได้ทำการ mint synthetic asset อีก 16 ชนิดออกมาในลักษณะเดียวกัน ซึ่งแต่ละชนิดนั้นคิดเป็นมูลค่ากว่า 100,000 $KUSD โดย asset ดังกล่าวถูกนำมาใช้สร้างสภาพคล่องบนแพลตฟอร์ม Twindex AMM ร่วมกับ $KUSD ในรูปแบบของ Meta Liquidity

หลังจากนั้น LP token ที่ได้จากการสร้างสภาพคล่องถูกนำไป burn ด้วยการส่งไปที่ null address

ดังนั้น $KUSD จำนวน 1,563,011.74 ถูกใช้เพื่อสร้าง Meta Liquidity จาก $KUSD ที่ถูก mint มาทั้งหมด 1,600,000

การสร้างสภาพคล่องโดยไม่มีสินทรัพย์ค้ำประกันในลักษณะนี้ส่งผลให้ผู้สร้างสภาพคล่องรายอื่นได้รับค่าธรรมเนียมจากการสร้างสภาพคล่องน้อยลง

การ redeem และ buyback $KUSD ซ้ำ ๆ

ในวันที่ 24 ธันวาคม 2564 $KUSD จำนวน 10,000 ได้ถูกโอนจากกระเป๋าผู้พัฒนาไปยัง กระเป๋า treasury โดยแบ่งเป็น 2 ธุรกรรม ธุรกรรมละ 5,000 $KUSD

โดยที่ $KUSD ข้างต้นถูกนำมา redeem เป็น $USDC เพื่อนำไป buyback $KUSD จาก Twindex AMM โดยการ redeem และ buyback ลักษณะนี้เกิดขึ้นหลายครั้งซึ่งเป็นการถ่ายโอน $USDC จาก $KUSD pool ไปที่ USDC-KUSD pool บน Twindex AMM

https://bscscan.com/token/0x940ff63e82d15fb47371bfe5a4ed7d7d183de1a5?a=0xab3594ce5447441a412355ced7b9626fd8150c6f (Page 3)

จากธุรกรรมดังกล่าว ส่งผลให้ราคาของ $KUSD บน USDC-KUSD pool เพิ่มสูงขึ้น แต่ในขณะเดียวกันปริมาณ $USDC ที่ถูกใช้ในการค้ำประกันโดยผู้ใช้งานแพลตฟอร์มใน $KUSD pool ถูกถ่ายโอนออกไปโดยใช้ $KUSD ที่เกิดจากการ mint โดยที่ไม่มีสินทรัพย์ค้ำประกัน แสดงให้เห็นว่าผู้พัฒนาได้ใช้เงินทุนของผู้ใช้งานในการควบคุมราคา $KUSD

การ redeem $KUSD ที่เหลือและโอนไปที่ Binance

ในวันที่ 27 ธันวาคม 2564 $KUSD จำนวน 27,048.26 ซึ่งส่วนหลักในจำนวนนั้นคงเหลือจากการ mint และสร้าง Meta Liquidity ถูกนำไป redeem โดยผู้พัฒนาและได้ 19,219.50 $USDC กลับมา ซึ่งถูกนำไปรวมกับ $USDC ที่ได้จากช่องทางอื่นรวมเป็นจำนวน 40,048.90 $USDC ทั้งสิ้น ก่อนที่จะถูกโอนไปที่ Binance

การเฟ้อของเหรียญ $DOPX จากการ Redeem

ระหว่างที่ทำการ redeem $KUSD โดยไม่มีสินทรัพย์ค้ำประกันที่กล่าวไปก่อนหน้านี้ นอกจาก $USDC ยังมี $DOPX ที่ถูกผลิตขึ้นมาด้วยและยังคงอยู่ในกระเป๋าของผู้พัฒนา และ กระเป๋า treasury $DOPX ทั้งหมดถูกผลิตขึ้นมาบนกระเป๋าต่อไปนี้:

Dopple Finance Deployer: มีการ redeem แค่ครั้งเดียวเท่านั้น ที่ผลิต $DOPX ขึ้นมาทั้งหมด 7,945,577,379.65 $DOPX

Dopple Treasury: มีการ redeem หลายครั้งที่ผลิต $DOPX ขึ้นมาจากธุรกรรมในแต่ละรอบเป็นจำนวนดังต่อไปนี้:

รวมแล้ว $DOPX ถูกผลิตมาโดยไม่มีต้นทุน (ถ้าไม่นับค่าแก๊ส) เป็นจำนวนทั้งหมด 45,924,129,559.04 $DOPX ผลที่ตามมาทำให้ปริมาณ total supply ของ $DOPX เฟ้อขึ้นอย่างมหาศาล ส่งผลกระทบโดยตรงกับผู้ถือ $DOPX โดยทำให้มูลค่าของ $DOPX ที่ถูกสร้างขึ้นมาอย่างถูกต้องนั้นลดลงอย่างมีนัยสำคัญ แม้ว่า token เหล่านี้จะยังไม่ได้ถูกนำไปขายในตลาดก็ตาม

About Inspex

Inspex คือบริษัทที่เกิดจากการรวมตัวของทีมงานผู้มีประสบการณ์ทางด้าน cybersecurity ในหลากหลายสาขา เพื่อให้บริการต่าง ๆ ที่เกี่ยวข้องกับเทคโนโลยี blockchain และ smart contract โดยมีวัตถุประสงค์หลักเพื่อผลักดันระดับความมั่นคงปลอดภัยของแพลตฟอร์มต่าง ๆ รวมถึงภาพรวมของ blockchain ecosystem ด้วยการบริการที่มีคุณภาพ

สอบถามข้อมูลเพิ่มเติมได้ทาง Twitter, Telegram, contact@inspex.co

--

--

Inspex
Inspex

Written by Inspex

Cybersecurity professional service, specialized in blockchain and smart contract auditing https://twitter.com/InspexCo

No responses yet