แซงแถวซื้อ NFT ด้วย flash loan และ MEV

Nattawat Songsom
1 min readJul 15, 2023

--

พอดีไปเจอ post NFT attack vector มา เลยอยาก note เก็บไว้หน่อยครับ

โดยสิ่งที่เกิดขึ้นคือ มีคนตั้งขาย NFT ที่ราคา 105 ETH แต่ดันกดผิดเป็นตั้งขายที่ 10 ETH

ของแพงขายถูก แบบนี้ คงมีคนมาแย่งกันซื้อแน่ๆ

แต่ทำยังไงถึงจะได้ซื้อเป็นคนแรกละ ?

ถ้าอยากแซงแถวก็ต้องจ่ายเงินพิเศษให้ miner เพื่อให้ tx โดนขุดเป็นคนแรก

แต่จะเอาเงินที่ไหนไปจ่าย miner ดี ? แค่ราคา NFT ก็ 10 ETH แล้ว

เราสามารถแซงแถวโดยไม่ต้องใช้ทุนได้รึเปล่า ?

คำตอบคือ ได้ โดยใช้ flashLoan และก็มีคนทำจริงๆด้วย

โดย step คร่าวๆที่เกิดขึ้นคือ

  1. คนขายลงราคาผิดจาก 105 ETH เป็น 10 ETH
  2. attacker flashLoan มา 48 ETH ไปซื้อ NFT มา
  3. attacker นำ NFT ไปขายในราคา 68 ETH
  4. attacker โอน 38 ETH ไปยัง F2 mining pool เพื่อติดสินบน miner ให้การซื้อขายครั้งนี้สำเร็จ ไม่โดนคนอื่นแย่ง
  5. จบการ flash loan ด้วยการคืน 48 ETH ที่ยืมมา

สรุปแล้ว attacker ทำกำไรไปได้ 68–38 = 20 ETH โดยไม่ต้องใช้ทุนเลย (ยกเว้นค่าแก๊ส)

Referrence

--

--

No responses yet