content-image
ARTICLES | 07 June 2021

Multiple Ways to Attack MetaMask

author-image

Incognito Lab

MetaMask เป็น Crypto Wallet ประเภทหนึ่ง จัดเป็น hot wallet ในลักษณะของ software ไว้เชื่อมต่อกับ BlockChain Network โดยสิ่งสำคัญที่สุดของ MetaMask ก็คือ mnemonic phrase หรือ seed phrase ซึ่งหากเราทำหายไปหรือถูก Hacker ขโมยไปได้ก็เกมโอเวอร์ บทความนี้เขียนขึ้นเพื่อให้ผู้อ่านทุกท่านได้เห็นแนวความคิดและเทคนิคของ attacker ว่าถ้าจะโจมตี MetaMask จะมีวิธีไหนกันบ้าง

  1. Vault Access ผ่าน browser extension
    ในที่นี้ลองทดสอบกับ chrome ให้เปิด console จากนั้นให้ดึงค่า vault data ออกมา ด้วย
chrome.storage.local.get(‘data’, result => {var vault = result.data.KeyringController.vaultconsole.log(vault)})
ดึงข้อมูล Vault ผ่าน DevTools

ดึงข้อมูล Vault ผ่าน DevTools

จากนั้นให้ copy output ทั้งหมดไป decrypt ด้วย MetaMask Vault Decryptor ดังรูป
*วิธีการนี้ต้องใช้ password

  1. Vault Access ผ่าน local file

ไปยัง path ของ MetaMask โดยเครื่องที่ใช้ในการทดสอบอยู่ที่ C:\Users\[username]\AppData\Local\Google\Chrome\User Data\Default\Local Extension Settings\nkbihfbeogaeaoehlefnkodbefgpgknn จากนั้นให้ไปที่ file .ldb (Microsoft Access Lock Information File)

images

images

ให้เปิด file .ldb ให้ได้ โดยอาจจะใช้ HxD หา text string คำว่า “Keyring” ก็จะพบชุดข้อมูลของ Vault data ที่เราจะต้องไป decrypt ต่อ
*วิธีการนี้ต้องใช้ password

image

image

  1. โจมตีด้วย Man-in-the-browser
    MitB attack จะทำการ intercept input/output ทุกอย่างบน browser ทำให้ attacker สามารถเปลี่ยนแปลงการแสดงผล หรือดักจับข้อมูลทุกอย่างบน browser ได้ หาก attacker เอามาใช้ดัก password หรือ seed phrase ก็ย่อมทำได้ซึ่งวิธีการนี้เป็นที่นิยมใช้โจมตี application พวก Internet Banking มาเกินกว่า 10 ปีแล้ว
    https://www.fireeye.com/blog/threat-research/2010/02/man-in-the-browser.html
  2. โจมตีด้วย malware
    การใช้ malware สามารถพลิกแพลงได้หลากหลาย เช่นใช้ keylogger ดักจับการกด keystroke logging เพื่อขโมย password เอาไป decrypt ข้อมูล vault ต่อหรือจะทำ memory scraping attack ที่จะ dump ข้อมูลใน memory โดยได้ลองทดสอบ idea การโจมตีดังกล่าวในรายการ Incognito Mode Ep1 นาทีที่ 15
ใช้ processhacker dump ข้อมูล string จาก memory ของ chrome process

ใช้ processhacker dump ข้อมูล string จาก memory ของ chrome process

สำหรับ memory scraping attack ไม่ใช่ท่าใหม่แต่อย่างใด attacker ชอบนำมาใช้กับการโจมตีระบบ PoS อยู่แล้ว สามารถดูรายละเอียดเพิ่มเติมได้จาก https://www.wired.com/wp-content/uploads/2014/09/wp-pos-ram-scraper-malware.pdf

  1. ทำ extension ปลอม หลอกล่อให้คนติดตั้ง https://ciphertrace.com/alert-malicious-crypto-browser-extension-masked-metamask/
  2. โจมตีด้วย phishing หลอกล่อขโมย password หรือ private key

แล้วจะป้องกันอย่างไร

ให้ระมัดระวังการโจมตีที่กล่าวถึง และใช้งาน MetaMask จากเครื่องของเราเท่านั้นอย่าไปซี้ซั้วใช้งานที่เครื่องที่เราไม่ได้เป็นเจ้าของ สำหรับวิธีการที่น่าจะเป็นทางเลือกที่ดีที่สุดในตอนนี้ก็คือหันไปใช้ hardware wallet แทน

logologo

INCOGNITO LAB CO., LTD.

38 Soi Petchakasem 30, Petchakasem Road, Pak Khlong Phasi Charoen, Phasi Charoen, Bangkok 10160

©2025 Incognito Lab Co., Ltd. All rights reserved

Terms & Conditions Privacy Policy