แพลตฟอร์ม OpenSea NFT มีข้อผิดพลาด ทำให้แฮกเกอร์ขโมย Crypto Wallets

นักวิจัยด้านความปลอดภัย พบว่าแฮกเกอร์สามารถทำให้เจ้าของบัญชี OpenSea ไม่มียอดคงเหลือใน Wallets ได้โดยการล่อให้เหยื่อคลิก NFT art ที่เป็นอันตราย

OpenSea เป็นตลาดซื้อขาย, ประมูล non-fungible tokens (NFTs) และสินทรัพย์ดิจิทัลอื่นๆ ที่ใหญ่ที่สุดในโลก ด้วยมูลค่าธุรกรรมถึง 3.4 พันล้านดอลลาร์

ปัญหาเกิดจากที่แพลตฟอร์ม OpenSea สามารถทำให้แฮกเกอร์โจมตีบัญชีผู้ใช้ และขโมยกระเป๋าเงินดิจิตอล (Wallets) ด้วยวิธีการง่ายๆ คือการสร้าง NFT ที่มี payload ที่เป็นอันตราย และรอให้เหยื่อคลิกดู โดยพบผู้ใช้หลายราย แจ้งว่า กระเป๋าเงินดิจิทัล (Wallets) ว่างเปล่า หลังจากได้รับโฆษณาจาก OpenSea ซึ่งเป็นกลยุทธ์ทางการตลาดที่เรียกว่า "airdropping" ที่ใช้เพื่อโปรโมท Asset ใหม่ๆ

นักวิจัยจาก Check Point ได้ตัดสินใจตรวจสอบวิธีการทำงานของแพลตฟอร์มอย่างละเอียด และตรวจหาช่องโหว่ ซึ่งมีสรุปการโจมตีดังนี้:

แฮ็กเกอร์ทำการสร้าง และส่ง NFT ที่เป็นอันตรายให้แก่เหยื่อ
เมื่อเหยื่อเปิดดู NFT ที่เป็นอันตราย จะเรียกป๊อปอัปจากโดเมนการจัดเก็บของ OpenSea และขอเชื่อมต่อกับกระเป๋าเงิน Cryptocurrency ของเหยื่อ
เหยื่อคลิกเพื่อเชื่อมต่อกระเป๋าเงินของตัวเอง และดำเนินการกับ NFT ที่ส่งให้ ซึ่งทำให้แฮ็กเกอร์สามารถเข้าถึงกระเป๋าเงินของเหยื่อได้
แฮ็กเกอร์สามารถรับเงินในกระเป๋าเงินได้โดยเปิดป๊อปอัปเพิ่มเติม ซึ่งส่งมาจากโดเมนการจัดเก็บของ OpenSea โดยเหยื่อมีแนวโน้มที่จะคลิกป๊อปอัปโดยไม่อ่านข้อความที่อธิบายธุรกรรมที่เกิดขึ้น

รายละเอียดการตรวจสอบข้อผิดพลาด

บัญชี OpenSea ต้องมีการเชื่อมต่อกระเป๋าเงิน cryptocurrency ของ third-party นักวิจัยจึงเลือกใช้ MetaMask ที่ได้รับความนิยมมากที่สุด โดยการเชื่อมต่อกับ wallet จะเกิดขึ้นเมื่อมีการดำเนินการใดๆ กับบัญชี รวมถึงการกดถูกใจงานศิลปะ (NFT art) ในระบบ ซึ่งจะทำให้เกิดคำขอลงชื่อเข้าใช้ Wallet

แพลตฟอร์ม OpenSea เปิดให้ทุกคนสามารถขายงานศิลปะดิจิทัล เป็นไฟล์ขนาดใหญ่ได้ถึง 40MB โดยมีนามสกุลดังต่อไปนี้: JPG, PNG, GIF, SVG, MP4, WEBM, MP3, WAV, OGG, GLB, GLTF ทีมนักวิจัย Check Point จึงได้อัปโหลดภาพ SVG ที่มีโค้ด JavaScript ที่เป็นอันตรายไปยังระบบ OpenSea เมื่อคลิกเพื่อเปิดในแท็บใหม่ จะสังเกตเห็นว่าไฟล์ทำงานภายใต้โดเมนย่อย 'storage.