รายละเอียด: วิธีที่แฮ็กเกอร์ขโมย 80k ETH จาก Solana Wormhole bridge PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

รายละเอียด: วิธีที่แฮ็กเกอร์ขโมย 80k ETH จากสะพาน Solana Wormhole

หนึ่งในสิ่งที่เลวร้ายที่สุด แฮ็ก ต่อต้าน Solana blockchain เกิดขึ้นในวันพุธที่แฮ็กเกอร์สามารถโอน 80,000 ether (ETH) มากกว่า 214 ล้านดอลลาร์ในขณะที่เขียน ออกจากระบบ Solana และเข้าสู่ Ethereum blockchain ผ่าน Wormhole bridge ซึ่งเป็นบริการที่ให้ความสามารถในการถ่ายโอน เงินทุนระหว่างบล็อคเชนต่างๆ

อธิบายในทวิต ด้าย โดยโปรไฟล์ Twitter นามแฝง สมาร์ทคอนแทรคแฮกเกอร์สรุปการใช้ประโยชน์โดยโอน 80,000 ETH ออกจากสัญญาอัจฉริยะ Wormhole บน Ethereum ในครั้งเดียว การทำธุกรรม. เมื่อมันปรากฏออกมา นี่เป็นเพียงขั้นตอนสุดท้ายของชุดการแฮ็กที่ทำให้แฮกเกอร์สามารถขโมยเงินได้ 

“แม้ว่าจะเป็นเรื่องที่น่าทึ่ง แต่การทำธุรกรรมนี้เป็นเพียงจุดสิ้นสุดของชุดเหตุการณ์ที่น่าสนใจ ฉันต้องเริ่มทำงานย้อนหลังเพื่อค้นหาว่ามันเป็นไปได้อย่างไร” ทวีตสมาร์ทคอนแทรค

ผู้ปกครองลงนามการถ่ายโอนเท็จ

Wormhole เป็นสะพานที่เรียกว่า a สัญญาสมาร์ทในกรณีนี้ บน Ethereum ซึ่งเป็นวิธีการย้ายสินทรัพย์ crypto ระหว่างบล็อกเชนต่างๆ ตาม smartcontracts จากมุมมองระดับสูง Wormhole มีชุดผู้พิทักษ์ที่เรียกว่าร่วมซึ่งลงนามในการโอนระหว่างบล็อกเชนโดยเฉพาะ

ผู้พิทักษ์ Wormhole ได้ลงนามในการโอน 80,000 ETH นี้ราวกับว่าถูกต้องตามกฎหมาย 100%

“ธุรกรรมที่ดึงออกมา 80,000 ETH แท้จริงแล้วเป็นผู้โจมตีที่โอน 80,000 ETH จาก Solana ไปยัง Ethereum ตอนแรกฉันคิดว่าสัญญาอาจตรวจสอบลายเซ็นในการโอนไม่ถูกต้อง แต่ลายเซ็น [ถูก] ตรวจสอบอย่างสมบูรณ์”

ตาม smartcontracts ความก้าวหน้าครั้งแรกและคำอธิบายบางส่วนมาจากa การทำธุกรรม บน Solana ซึ่งสร้าง 120,000 “Wormhole ETH” อย่างใด ห่ออีเธอร์บน Solana จากที่ไหนเลย เนื่องจากแฮ็กเกอร์สามารถสร้าง Wormhole ETH บน Solana ได้ เขาจึงสามารถถอนกลับเป็น Ethereum ได้อย่างถูกต้อง

“โซลาน่าค่อนข้างแปลก”

การตรวจสอบประวัติการทำธุรกรรมของแฮ็กเกอร์ มีธุรกรรมที่เกิดขึ้นก่อนการขุด 120,000 Wormhole ETH ในเรื่องนี้ การทำธุกรรม, แฮ็กเกอร์มิ้นต์เพียง 0.1 Wormhole ETH ราวกับว่าแฮ็กเกอร์กำลังทดสอบฟังก์ชั่นด้วยจำนวนเล็กน้อย

การตรวจสอบประวัติการทำธุรกรรมของแฮ็กเกอร์เพิ่มเติมพบว่าแฮ็กเกอร์ทำ ฝากเงิน จาก 0.1 ETH จาก Ethereum เป็น โซลานา. แม้ว่าผู้โจมตีจะไม่ได้ทำการฝาก ETH จำนวน 120,000 ETH ในสัญญาอัจฉริยะ Wormhole บน Ethereum แต่ก็มีบางอย่างที่น่าสนใจเกี่ยวกับการฝากเงินนี้

ตามที่ smartcontract อธิบายในทวีตของเขา ธุรกรรมที่สร้าง Wormhole ETH บน Solana นั้นทำให้เกิดสัญญาอัจฉริยะ Wormhole ฟังก์ชัน ที่เรียกว่า "Complete_ห่อ“. หนึ่งในพารามิเตอร์ที่ฟังก์ชันนี้ใช้คือ "ข้อความโอน" โดยทั่วไป a ข่าวสาร ลงนามโดยผู้ปกครองของสะพานที่ระบุว่าโทเค็นใดที่จะทำมิ้นต์และเท่าไหร่

“Solana ค่อนข้างแปลก ดังนั้นพารามิเตอร์เหล่านี้เป็นสัญญาอัจฉริยะจริงๆ แต่สิ่งสำคัญคือการสร้างสัญญา "ข้อความโอน" เหล่านี้ได้อย่างไร นี่คือ การทำธุกรรม ที่สร้างข้อความโอน 0.1 ETH” ทวีต smartcontract

ใครเป็นคนตรวจสอบหมากฮอส?

สัญญา "ข้อความโอน" นี้สร้างขึ้นโดยเรียก a ฟังก์ชัน ที่เรียกว่า "post_vaa“. สิ่งที่สำคัญที่สุดคือ post_vaa ตรวจสอบว่าข้อความถูกต้องหรือไม่โดยตรวจสอบลายเซ็นจากผู้ปกครอง smartcontracts กล่าวว่าส่วนนั้นดูสมเหตุสมผล แต่นี่เป็นขั้นตอนการตรวจสอบลายเซ็นที่ทำลายทุกอย่าง

ฟังก์ชัน “post_vaa” ไม่ได้ตรวจสอบลายเซ็นจริงๆ ในทางกลับกัน ตามแบบฉบับของ Solana มีสัญญาอัจฉริยะอื่นที่สร้างขึ้นโดยการเรียก "Verify_signatures" ฟังก์ชัน. หนึ่งใน ปัจจัยการผลิต สำหรับฟังก์ชัน "verify_signatures" คือโปรแกรม "ระบบ" ในตัวของ Solana ซึ่งมียูทิลิตี้ต่างๆ ที่สัญญาสามารถใช้ได้

ภายใน "verify_signatures" โปรแกรม Wormhole พยายามตรวจสอบว่าการดำเนินการที่เกิดขึ้นก่อนที่ฟังก์ชันนี้จะถูกทริกเกอร์หรือไม่ นั่นคือ วินาที256k1 ฟังก์ชันการตรวจสอบลายเซ็นถูกดำเนินการ

“ฟังก์ชันการตรวจสอบนี้เป็นเครื่องมือในตัวที่ควรตรวจสอบว่าลายเซ็นที่ให้มานั้นถูกต้อง ดังนั้นการตรวจสอบลายเซ็นจึงได้รับการว่าจ้างจากโปรแกรมนี้ แต่นี่คือที่มาของบั๊ก” ทวีตของ smartcontract

สัญญา Wormhole ใช้ฟังก์ชัน load_instruction_at เพื่อตรวจสอบว่ามีการเรียกใช้ฟังก์ชัน Secp256k1 ก่อน แต่ฟังก์ชัน load_instruction_at ถูกเลิกใช้ค่อนข้างเร็วเนื่องจาก ไม่ได้ตรวจสอบว่ากำลังดำเนินการกับที่อยู่ระบบจริงหรือไม่!

จบเกม

ตาม smartcontracts ผู้โทรควรจะจัดหาเป็น อินพุต ที่อยู่ระบบไปยังโปรแกรมที่กำลังดำเนินการ แต่แฮ็กเกอร์ระบุที่อยู่ระบบอื่น

นี่คือที่อยู่ของระบบที่ใช้เป็นอินพุตสำหรับ “verify_signatures” สำหรับการฝากที่ถูกต้องตามกฎหมายจำนวน 0.1 ETH:

ใส่ที่อยู่ระบบที่ถูกต้อง
ใส่ที่อยู่ระบบที่ถูกต้อง

แต่นี่คือธุรกรรม “verify_signatures” สำหรับการฝากเงินปลอมจำนวน 120k ETH:

อินพุตที่อยู่ระบบ
การป้อนที่อยู่ระบบเท็จ 

นั่นไม่ใช่ที่อยู่ของระบบ!

“การใช้โปรแกรมระบบ “ปลอม” นี้ ผู้โจมตีสามารถโกหกได้อย่างมีประสิทธิภาพว่าโปรแกรมตรวจสอบลายเซ็นถูกดำเนินการ ลายเซ็นไม่ได้รับการตรวจสอบเลย!” ทวีตของ smartcontract

“หลังจากนั้นเกมก็จบลง ผู้โจมตีทำให้ดูเหมือนว่าผู้พิทักษ์ได้ลงนามในเงินฝาก 120k ใน Wormhole บน Solana แม้ว่าพวกเขาจะไม่ได้ทำ ผู้โจมตีทั้งหมดที่ต้องทำในตอนนี้คือทำให้เงิน "เล่น" ของพวกเขาเป็นจริงโดยการถอนเงินกลับคืนสู่ Ethereum และการถอนหนึ่งครั้งของ 80k ETH + 10k ETH ในภายหลัง (ทุกอย่างในบริดจ์บน Ethereum) ทุกอย่างหายไป”

เอเวอร์โดม

จดหมายข่าว CryptoSlate

นำเสนอบทสรุปของเรื่องราวประจำวันที่สำคัญที่สุดในโลกของ crypto, DeFi, NFT และอื่นๆ

ได้รับการ ขอบ ในตลาด cryptoasset

เข้าถึงข้อมูลเชิงลึกและบริบทการเข้ารหัสลับเพิ่มเติมในทุกบทความในฐานะสมาชิกแบบชำระเงินของ ขอบ CryptoSlate.

การวิเคราะห์บนเครือข่าย

ภาพรวมราคา

บริบทเพิ่มเติม

เข้าร่วมตอนนี้ในราคา $ 19 / เดือน สำรวจสิทธิประโยชน์ทั้งหมด

ที่มา: https://cryptoslate.com/breakdown-how-the-hacker-stole-80k-eth-from-the-solana-wormhole-bridge/

ประทับเวลา:

เพิ่มเติมจาก CryptoSlate