📌 คำตอบสั้น: ทุกครั้งที่กดกระเป๋าเชื่อมต่อกับ dApp ผ่าน WalletConnect หรือปุ่ม “Connect Wallet” คือการเปิด Session ที่อยู่ค้างได้นานกว่าที่คิด ถ้าไม่กดปลดเอง บาง dApp ยังส่งคำขอเซ็นธุรกรรมมาได้อยู่เบื้องหลัง และงานวิจัยปี 2026 ยังพบว่ากระเป๋าหลายตัว “ปลด” ไม่จริงอย่างที่ผู้ใช้เข้าใจ บทความนี้พาเช็กและล้าง Session ที่ค้างอยู่ทุกช่องทาง ทั้ง MetaMask, Trust Wallet, Phantom และ OKX Wallet (ข้อมูล ณ 25 ต.ค. 2569)
📑 สารบัญ
- การเชื่อมต่อ dApp/WalletConnect คืออะไร ต่างจาก Token Approval ตรงไหน
- ตัวเลขและงานวิจัยที่ทำให้ต้องเช็กตั้งแต่วันนี้
- ตาราง: ปลดการเชื่อมต่อ vs เพิกถอน Token Approval
- เตรียมตัวก่อนเริ่ม
- ขั้นตอนจริงบน MetaMask
- ขั้นตอนจริงบน Trust Wallet (WalletConnect)
- ขั้นตอนจริงบน Phantom (Solana)
- ขั้นตอนจริงบน OKX Wallet
- กับดักที่คนพลาดบ่อย
- เช็กลิสต์ก่อนปิดเครื่อง
- คำถามที่พบบ่อย
การเชื่อมต่อ dApp/WalletConnect คืออะไร ต่างจาก Token Approval ตรงไหน
ทุกครั้งที่กด “Connect Wallet” บนเว็บ DeFi, NFT Marketplace หรือเกมบล็อกเชน ไม่ว่าจะสแกน QR code ผ่าน WalletConnect หรือกดเชื่อมตรงผ่านส่วนขยายในเบราว์เซอร์ สิ่งที่เกิดขึ้นคือการเปิด “Session” ระหว่างกระเป๋ากับเว็บนั้น — คนละเรื่องกับ Token Approval ที่เป็นการอนุญาตให้สัญญาดึงเหรียญไปใช้ได้
MetaMask และ Phantom เตือนตรงกันในหน้า Official Support ว่า การ Disconnect dApp จะหยุดไม่ให้เว็บนั้นเห็นที่อยู่กระเป๋า ยอดเงิน ประวัติธุรกรรม และขอทำธุรกรรมใหม่ได้ แต่ จะไม่ถอน Token Approval ที่เคยให้ไว้ — แปลว่าแม้กดตัดการเชื่อมต่อแล้ว สัญญาที่เคยขอสิทธิ์ไว้ก่อนหน้ายังสามารถดึงเหรียญที่อนุมัติไว้ออกไปได้ถ้าสัญญานั้นเป็นของอันตรายหรือถูกแฮกทีหลัง
ส่วน WalletConnect (โปรโตคอลตัวกลางที่กระเป๋ากว่า 700 แอปใช้เชื่อมกับ dApp กว่า 70,000 แห่ง) ออกแบบให้ Session หมดอายุอัตโนมัติได้เองสูงสุด 7 วันถ้าไม่มีการต่ออายุ แต่ตราบใดที่ยังไม่หมดอายุหรือยังไม่กดปลดเอง เว็บฝั่งนั้นสามารถส่งคำขอเซ็นธุรกรรมมาที่กระเป๋าได้ตลอดเวลาแม้ปิดแท็บเว็บไปแล้ว — ผู้ใช้จะเห็นแค่ pop-up ขอเซ็นโผล่มาโดยไม่รู้ตัวว่ามาจาก Session เก่าที่ลืมปลด
ตัวเลขและงานวิจัยที่ทำให้ต้องเช็กตั้งแต่วันนี้
ต้นปี 2026 ทีมวิจัย DistriNet จากมหาวิทยาลัย KU Leuven (เบลเยียม) ตีพิมพ์งานวิจัยชื่อ “The Masks We (Think We) Wear” ซึ่งทดสอบกระเป๋าส่วนขยายเบราว์เซอร์ 85 ตัวที่มีผู้ใช้รวมกันราว 35 ล้านคน พบ 2 ประเด็นที่กระทบผู้ใช้ตรงๆ:
| สิ่งที่พบ | รายละเอียด | จำนวนกระเป๋าที่มีปัญหา |
|---|---|---|
| Disconnect ไม่ตัดจริง | กดปลดการเชื่อมต่อจากฝั่งเว็บ dApp แล้ว แต่สิทธิ์ (permission) ในกระเป๋ายังค้างทำงานอยู่ เว็บจดจำผู้ใช้ได้แม้เคลียร์คุกกี้/รีสตาร์ตเบราว์เซอร์แล้ว | 22 จาก 36 กระเป๋าที่รองรับ Ethereum ที่ทดสอบ |
| Hidden iframe ดึงข้อมูลกระเป๋าได้ | สคริปต์ติดตาม (tracker) ที่ฝังอยู่ในเว็บทั่วไป (ไม่ใช่ dApp) สามารถขอข้อมูลกระเป๋าผ่าน iframe ที่มองไม่เห็น เชื่อมโยงพฤติกรรมเล่นเว็บปกติเข้ากับที่อยู่คริปโตได้ | 23 จาก 36 กระเป๋าที่รองรับ Ethereum ที่ทดสอบ |
ทีมวิจัยแจ้งผู้พัฒนากระเป๋าก่อนเผยแพร่ผล — Coinbase Wallet และ Coin98 แก้ไขแล้วตั้งแต่ก่อนตีพิมพ์ Hana Wallet แก้ตามมา ส่วน MetaMask, OKX, Trust Wallet, Rabby Wallet, Binance Wallet และ Bybit Wallet รับเรื่องผ่านโปรแกรม Bug Bounty ของแต่ละเจ้า งานวิจัยนี้ได้รับคัดเลือกเข้า PETS 2026 (Privacy Enhancing Technologies Symposium) ที่แคนาดา
อีกด้านคือสถิติการแฮกระดับโลก TRM Labs รายงานว่าครึ่งปีแรกของ 2026 เกิดเหตุแฮกคริปโตรวม 207 ครั้ง (สูงสุดเป็นประวัติการณ์ในรอบ 6 เดือน) มูลค่าความเสียหายรวม 972 ล้านดอลลาร์ และที่น่าสนใจคือ เหตุการณ์ที่มาจากช่องโหว่ระดับโครงสร้าง/การดำเนินงาน (operational compromise เช่น session, permission, key management ที่หลวม) มีสัดส่วนแค่ราว 15% ของจำนวนเหตุการณ์ทั้งหมด แต่กลับสร้างความเสียหายคิดเป็นสัดส่วนสูงถึงราว 76% ของมูลค่าที่ถูกขโมยไปทั้งหมด
ตัวอย่างจริงที่ตอกย้ำความเสี่ยงของ “โครงสร้างเก่าที่คิดว่าไม่มีใครแตะแล้ว”: มิถุนายน 2026 แฮกเกอร์เจาะสัญญา Aztec Connect และ Aztec 2.0 ซึ่งเป็นโปรโตคอลที่ถูกประกาศเลิกใช้ (deprecated) ไปตั้งแต่ปี 2023 และทีมพัฒนาสละสิทธิ์ควบคุมสัญญาไปแล้วตั้งแต่ปี 2024 จนไม่สามารถหยุดหรือแก้ไขอะไรได้อีก สูญเงินรวมกว่า 4 ล้านดอลลาร์ในสองเหตุการณ์ห่างกันไม่ถึงสัปดาห์ — ตอกย้ำว่า dApp ที่เลิกใช้แล้วหรือการเชื่อมต่อค้างไว้นานโดยไม่มีใครดูแล คือความเสี่ยงที่มองไม่เห็นจนกว่าจะมีคนเจาะ
ตาราง: ปลดการเชื่อมต่อ vs เพิกถอน Token Approval
ก่อนลงมือ ต้องเข้าใจว่าสองเรื่องนี้ทำคนละจุดและต้องทำแยกกัน ไม่ใช่ทำอย่างใดอย่างหนึ่งแล้วจบ
| เรื่อง | Disconnect Session | Revoke Token Approval |
|---|---|---|
| ทำที่ไหน | ฝั่งกระเป๋า (Permissions/Connected Apps) หรือฝั่งเว็บ dApp | ฝั่งกระเป๋า หรือเว็บอย่าง Revoke.cash ที่อ่าน blockchain ตรง |
| ตัดอะไร | ไม่ให้เว็บเห็นที่อยู่กระเป๋า/ส่งคำขอเซ็นใหม่ได้อีก | ไม่ให้สัญญาดึงเหรียญที่เคยอนุมัติไว้ได้อีก |
| ต้องเสียค่าแก๊สไหม | ไม่เสีย (แค่ลบ permission ในกระเป๋า) | เสียค่าแก๊ส (เป็นธุรกรรมบนเชนจริง) |
| ถ้าทำแค่อย่างเดียว | สัญญาอันตรายยังดึงเหรียญที่อนุมัติไว้ได้อยู่ดี | เว็บยังเห็นที่อยู่กระเป๋า/ขอเซ็นใหม่ได้อยู่ดี (แต่ดึงเหรียญไม่ได้ถ้าไม่มี approval) |
เตรียมตัวก่อนเริ่ม
- อัปเดตแอป/ส่วนขยายกระเป๋าเป็นเวอร์ชันล่าสุดก่อนเช็ค (เมนูอาจเปลี่ยนตำแหน่งตามเวอร์ชัน)
- เตรียมเวลาสัก 10-15 นาที เพราะถ้าใช้กระเป๋ามานาน รายชื่อ dApp ที่เคยเชื่อมอาจยาวเกินคาด
- เปิดดูประวัติธุรกรรมคู่กันไปด้วย ถ้าเจอ dApp ที่ไม่คุ้นชื่อเลยให้สงสัยก่อนว่าอาจเป็นร่องรอยฟิชชิ่งเก่า
ขั้นตอนจริงบน MetaMask
อ้างอิงจากหน้า Official Support ของ MetaMask (support.metamask.io) โดยตรง:
เปิดเมนู Permissions
เปิด MetaMask แล้วกดเมนู (☰) มุมบนขวา เลือก “Permissions” จะเห็นรายชื่อ dApp ทุกตัวที่เคยเชื่อมต่อ พร้อมจำนวนบัญชีที่แต่ละเว็บเข้าถึงได้
เลือก dApp ที่จะปลด
กดเข้าไปที่ dApp ตัวที่ต้องการตัดการเชื่อมต่อ จะเห็นรายละเอียดบัญชีที่เชื่อมอยู่
กด Disconnect
กดไอคอน exit มุมบนขวา แล้วกด “Disconnect” เพื่อยืนยัน ถ้าจะใช้เว็บนั้นอีกต้องเชื่อมต่อใหม่ตั้งแต่ต้น
ถ้าต้องการล้างทีเดียวทั้งหมด ในหน้า “Permissions” เลื่อนลงไปกด “Disconnect all” ที่ด้านล่างได้เลย ปลอดภัยกว่าการมากดทีละตัว ถ้านึกไม่ออกว่ามี dApp อะไรค้างอยู่บ้าง
ขั้นตอนจริงบน Trust Wallet (WalletConnect)
Trust Wallet แยกการจัดการ WalletConnect Session ไว้เป็นหมวดเฉพาะ ตามคู่มือ Official ของ Trust Wallet:
เข้า Settings
เปิดแอป Trust Wallet แล้วไปที่เมนู Settings
เลือกหมวด WalletConnect
จะเห็นรายชื่อ Session ที่เชื่อมอยู่ตอนนี้ทั้งหมด แยกจากหมวด Connected Sites ของเบราว์เซอร์ในแอป
ปลดทีละตัวหรือทั้งหมด
เลือก Session ที่จะปลด หรือใช้ตัวเลือกปลดทั้งหมดในหน้าเดียวกันถ้าต้องการล้างให้หมด
ขั้นตอนจริงบน Phantom (Solana)
ฝั่ง Phantom ที่ใช้งานบนเชน Solana เป็นหลัก เรียกเมนูนี้ว่า “Trusted Apps” หรือ “Connected Apps” ขึ้นอยู่กับเวอร์ชัน:
เข้า Settings ในแอป
แตะไอคอนโปรไฟล์หรือไอคอนตั้งค่า เลือกเมนู Settings
เลือก Trusted Apps / Connected Apps
จะเห็นรายชื่อเว็บและแอปทั้งหมดที่เคยอนุญาตให้เชื่อมต่อ
กด Disconnect ทีละตัว หรือ Disconnect from all
เลือกตัวที่จะปลด หรือกดไอคอนจุดสามจุดมุมบนขวาแล้วเลือก “Disconnect from all” เพื่อล้างทั้งหมดในครั้งเดียว
ถ้ากำลังเปิดเว็บอยู่ใน in-app browser ของ Phantom เอง สามารถแตะไอคอนจุดสามจุดข้างช่อง URL แล้วเลือก “Disconnect app” ได้ทันทีโดยไม่ต้องย้อนไปหน้า Settings
ขั้นตอนจริงบน OKX Wallet
OKX Wallet (ทั้งแบบส่วนขยายเบราว์เซอร์และแอป) รวมหมวดนี้ไว้ในเมนู Settings โดยตรง:
เปิดไอคอนกลางมุมบนขวา
เปิดส่วนขยาย OKX Wallet แล้วกดไอคอนตรงกลางมุมบนขวา
ไปที่ Settings → DApps connection
จะเห็นรายชื่อ dApp ทั้งหมดที่เชื่อมต่อผ่านกระเป๋าอยู่ในขณะนี้
กด Disconnect all
ตัดสิทธิ์ dApp ทั้งหมดในคลิกเดียว ไม่กระทบยอดเงินหรือประวัติธุรกรรมเก่า แค่หยุดไม่ให้ขอเซ็นธุรกรรมใหม่ได้อีก
กับดักที่คนพลาดบ่อย
🚩 1. คิดว่า Disconnect = Revoke Approval
กดปลดการเชื่อมต่อแล้วคิดว่าปลอดภัยแล้ว ทั้งที่สัญญาที่เคยขอสิทธิ์ดึงเหรียญไว้ก่อนหน้ายังทำงานได้อยู่
🚩 2. กด Disconnect แค่ฝั่งเว็บ ไม่เช็กฝั่งกระเป๋า
งานวิจัย KU Leuven พบว่า 22 จาก 36 กระเป๋าที่ทดสอบ ยังเก็บสิทธิ์ไว้จริงแม้ฝั่งเว็บ dApp จะขอให้ลบไปแล้ว
🚩 3. ลืมว่า WalletConnect Session แยกจาก Connected Sites ของเบราว์เซอร์
บางกระเป๋าแยกสองหมวดนี้ออกจากกันชัดเจน (เช่น Trust Wallet) เช็กแค่หมวดเดียวอาจเจอไม่ครบ
🚩 4. ใช้กระเป๋าเดียวทำทุกกิจกรรม รวมเล่นเว็บทั่วไป
งานวิจัยพบว่า 23 จาก 36 กระเป๋า มีช่องให้เว็บทั่วไป (ไม่ใช่ dApp) แอบขอข้อมูลกระเป๋าผ่าน iframe ที่มองไม่เห็นได้ ถ้าเว็บนั้นรู้ชื่อ/อีเมลจริงของคุณด้วย อาจเชื่อมโยงตัวตนจริงเข้ากับประวัติธุรกรรมบนเชนได้
🚩 5. เชื่อ Session หมดอายุอัตโนมัติแล้วไม่ต้องทำอะไร
WalletConnect ออกแบบให้หมดอายุได้เองสูงสุด 7 วัน แต่ dApp บางตัวต่ออายุ Session อัตโนมัติถ้ายังมีการใช้งานต่อเนื่อง ทำให้ไม่หมดอายุจริงตามที่คาด
🚩 6. สแกน QR Code จากเว็บปลอมโดยไม่เช็ก URL
เว็บฟิชชิ่งปลอมหน้า dApp จริงแล้วให้สแกน WalletConnect QR เหมือนเดิมทุกอย่าง ต่างกันแค่ domain ที่มองข้ามได้ง่าย เมื่อเชื่อมแล้ว Session จะอยู่เบื้องหลังและส่งคำขอเซ็นมาเรื่อยๆ
เช็กลิสต์ก่อนปิดเครื่อง
- เปิดเมนู Permissions/Connected Apps/Trusted Apps ในกระเป๋าหลักแล้วเช็กรายชื่อ dApp ทั้งหมด
- ปลด dApp ที่ไม่ได้ใช้งานแล้วหรือจำไม่ได้ว่าเคยเชื่อมเมื่อไหร่
- เช็กหมวด WalletConnect แยกจากหมวด Connected Sites ถ้ากระเป๋านั้นแยกสองหมวด
- เปิดประวัติธุรกรรมคู่กัน ถ้าเจอรายการแปลกให้สงสัยไว้ก่อน
- เช็ก Token Approval แยกอีกรอบ (คนละเมนู คนละการกระทำ)
- ตั้งนัดเช็กซ้ำทุก 1-4 สัปดาห์ หรือทุกครั้งหลังใช้งาน dApp ใหม่ที่ไม่คุ้น
- แยกกระเป๋า/Browser Profile สำหรับกิจกรรมคริปโตออกจากการเล่นเว็บทั่วไปถ้าถือเหรียญมูลค่าสูง
- อัปเดตแอปกระเป๋าเป็นเวอร์ชันล่าสุดเสมอ เผื่อมีแพตช์ด้านความปลอดภัยที่เพิ่งออก
คำถามที่พบบ่อย
1. ปลดการเชื่อมต่อแล้ว เงินในกระเป๋าปลอดภัย 100% ไหม
ไม่ใช่ทั้งหมด การปลดการเชื่อมต่อหยุดไม่ให้เว็บนั้นเห็นที่อยู่กระเป๋าหรือขอเซ็นธุรกรรมใหม่ได้ แต่ไม่ถอน Token Approval ที่เคยให้ไว้ ต้องเช็กและเพิกถอนแยกอีกขั้นตอน
2. ไม่เจอเมนู WalletConnect ในกระเป๋าที่ใช้ ต้องทำยังไง
บางกระเป๋ารวมหมวดนี้ไว้ในชื่อ “Permissions” หรือ “Connected Apps”/”Trusted Apps” แทน ลองหาในเมนู Settings ก่อน ถ้ายังไม่เจอให้เช็กว่าแอปเป็นเวอร์ชันล่าสุดหรือยัง เพราะเมนูนี้มักถูกเพิ่มในอัปเดตหลังๆ
3. เชื่อมกระเป๋ากับ dApp ที่เลิกให้บริการไปแล้ว ต้องปลดไหม
ควรปลด แม้ dApp นั้นเลิกให้บริการแล้วก็ตาม เพราะอย่างเคส Aztec Connect ที่ถูกเจาะในปี 2026 แม้ทีมพัฒนาเลิกดูแลไปนานแล้ว สัญญาเก่าก็ยังอยู่บนเชนและถูกเจาะได้ถ้ามีช่องโหว่หลงเหลือ
4. Session WalletConnect ที่ยังไม่หมดอายุ 7 วัน อันตรายแค่ไหนถ้าไม่ได้ใช้งานต่อ
ขึ้นอยู่กับ dApp ฝั่งนั้นว่าเขียนโค้ดดีแค่ไหน ในทางทฤษฎี dApp สามารถส่งคำขอเซ็นธุรกรรมมาได้ตราบใดที่ Session ยังไม่ปิด ผู้ใช้ที่ระมัดระวังจะไม่กดเซ็นอะไรที่ไม่คาดคิดอยู่แล้ว แต่ปลอดภัยกว่าถ้าปลดเองทันทีที่ใช้งานเสร็จ ไม่ต้องรอให้หมดอายุเอง
5. ปลดการเชื่อมต่อทั้งหมดในคราวเดียว เสี่ยงหลุดจาก dApp ที่ใช้ประจำไหม
ไม่มีความเสี่ยงด้านเงินหรือเหรียญ แค่ต้องกดเชื่อมต่อใหม่ครั้งแรกที่กลับไปใช้ dApp นั้นอีก (เหมือนล็อกอินใหม่) เหรียญ NFT หรือสถานะใดๆ ในสัญญาจะไม่ได้รับผลกระทบจากการ Disconnect เลย





















