21 พ.ค. 2021 เวลา 16:59 • คริปโทเคอร์เรนซี
สรุปจาก Crypto Wallet + Account Security รู้ไว้ก่อนโดน Hack
======================
สรุปสั้น
======================
-“ไม่ว่ายังไงก็โดนแฮ็กได้ ถ้าโจรต้องการจริงๆ” ดังนั้น จึงไม่ควรเก็บเป็นเงินก้อนไว้ที่จุดใดจุดหนึ่ง จะทำให้ไม่เสียหายทั้งหมดในครั้งเดียว
2
- ควรรู้จัก MFA Multi-factor Authentication การใช้ปัจจัยตั้งแต่ 2 อย่างขึ้นไปในการยืนยันตัวตน
2
- ส่วนใหญ่จะรู้จักกันเพียง 2FA แต่เพื่อความปลอดภัยที่ดี ควรมีอย่างน้อย 3FA ได้แก่ What you know (password, pin) What you have (Smartphone, YubiKey, Hardware Wallet) และ Who you are (รูปหน้า ลายนิ้วมือ หรือม่านตา)
1
- หากมีครบ 3 ปัจจัยนี้แล้ว โอกาสที่จะโดนแฮ็กนั้น แทบจะไม่มีเลย
*1. What you know
- Password ที่แข็งแรงควรเดาได้ยาก อย่างการนำประโยคภาษาไทยมาพิมพ์เป็นภาษาอังกฤษ “ผมชอบกินข้าวไข่เจียว” เป็น “z,=v[dbo-hk;w-jg0up;” และควรใช้ Password ที่ไม่เหมือนกันเลยในแต่ละที่ จึงควรใช้ Password Manager เป็นตัวช่วย แล้วจำแค่ Password เดียวที่ใช้กับ Password Manager คุณควรเป็นคนเดียวที่รู้ Password
1
*2 What you have
- การใช้ Google Authenticator ที่อยู่บนมือถือของเรา
1
*3. Who you are
- การสแกนลายนิ้วมือ หรือสแกนม่านตา หรือหน้าของเรา ในการเข้าใช้งานมือถือหรือคอมพิวเตอร์
1
- แม้จะมีถึง 3FA แต่ข้อผิดพลาดส่วนใหญ่ มักจะมีการเข้าเว็บที่ไม่ปลอดภัยหรือดาวน์โหลดแอปที่ผิดกฎหมาย
- ซึ่งเว็บหรือแอปเถื่อนเหล่านี้ มักจะแอบดูข้อมูลการใช้งานบนหน้าจอของเรา ทำให้เข้าถึง Password หรือ Google Authenticator ของเราได้ ทำให้ระดับความปลอดภัยหายไปทันที และเงินถูกขโมยไปได้
- จึงไม่ควรใช้งานเว็บหรือแอปที่ไม่น่าเชื่อถือหรือไม่ปลอดภัย
- และหากต้องการเพิ่มความปลอดภัยสูงขึ้นไปอีก ควรใช้เครื่องเดียวและอีเมลเดียวในการเทรด ซึ่งการใช้งานเครื่องนี้ก็ต้องทำให้มี MFA เช่นกัน เช่น สแกนนิ้วก่อนเข้าใช้งานเครื่อง มี Password ที่แข็งแรงในการเข้าใช้งาน และใช้ YubiKey
- ทั้งนี้ระดับความปลอดภัย ขึ้นกับการยอมรับความเสี่ยงและความกังวลของแต่ละคน
3
- ห้ามใช้ Wi-fi สาธารณะ ป้องกันการถูกหลอกดึงข้อมูลจากการใช้งาน Wi-fi ปลอม
- ควรเปลี่ยน Password เป็นระยะๆ ทุก 6-12 เดือน
- สำหรับการเก็บ Seed Word ควรจดเก็บไว้แบบมีการเข้ารหัส เพื่อให้เกิด MFA ไม่ควรจดเป็นคำตรงๆ
- การจดลงไปตรงๆ จะเป็นแค่ 1FA คือ What you have เพียงโจรได้กระดาษหรือเห็นรูปของกระดาษก็ขโมยได้ทันที
- ใช้ BIP39 ตารางคำศัพท์ที่ทุก Blockchain ใช้ แปลงคำให้เป็นตัวเลข เช่น angry เป็นเลข 72 แล้วสร้างลำดับการคำนวณตามที่ต้องการ โดยแทรกข้อมูลส่วนตัวเข้าไปด้วย เช่น 72 + ปีเกิดของพ่อ - ปีเกิดของแม่ + ปีเกิดของเรา
- โจรจะขโมยได้ ต้องเห็นข้อมูลบนกระดาษ รู้ว่าเราคือใคร และรู้ว่าลำดับการคำนวณย้อนกลับทำอย่างไร
- วิธีนี้ทำให้การเข้ารหัส Seed Word กลายเป็น 3FA ทันที
- ข้อดีอีกอย่าง คือ คนในครอบครัวรู้ข้อมูลส่วนตัวของเรา เราสามารถเขียนพินัยกรรม อธิบายวิธีเข้าถึงข้อความและวิธีแก้รหัส เพื่อนำเงินออกมา กรณีที่เราเป็นอะไรไป
- และเมื่อ Seed Word ที่เราจดแบบเข้ารหัสแล้ว มีความปลอดภัย MFA เราก็สามารถเก็บบนออนไลน์ได้เช่นกัน
- สำหรับ Hardware Wallet ต้องระวังการหายหรือถูกขโมย เพราะมีงานวิจัยว่า สามารถแฮ็กได้
- หากทำหาย ต้องโอนเงินไป Wallet ใหม่ให้เร็วที่สุด จึงควรมีสำรองอีกเครื่อง
- และระวังโดนเว็บหรือแอปปลอมหลอกถาม Seed Word
- จำไว้ว่า ห้ามกรอก Seed Word บนคอม บนเว็บ หรือแอปใดๆ ทั้งสิ้น
1
- สำหรับ Hardware Wallet ที่เดียวที่จะใส่ Private Key ก็คือ ใส่บน Hardware Wallet เท่านั้น
- สำหรับ Software Wallet ห้ามกรอก Seed Word บนคอม บนเว็บ หรือแอปใดๆ ทั้งสิ้น
- นอกจากการ Backup เท่านั้น
- ซึ่งหากทำการ Backup ต้องตัดการเชื่อมต่อ Online ทั้งหมด
- แล้วตรวจสอบว่าไม่มีสิ่งปกติ เช่น แสดงเลข address ผิดปกติ
- จึงค่อยเชื่อมต่ออินเทอร์เน็ตอีกครั้งได้ ป้องกันการส่งข้อมูล หากเราใช้แอปหรือเว็บปลอมโดยไม่รู้ตัว
- นอกจากนี้ยังมีเรื่องความปลอดภัยของตัวผู้ใช้งานเองด้วย
- อย่าให้ใครเห็นหรือรับรู้ว่าเรามี Cryptocurrency
- เช่น การถือ Hardware Wallet ให้คนอื่นเห็น เพราะอาจโดนคุกคามและขู่ทำร้าย เพื่อขโมยเงินของเราได้
- รวมถึงการโพส address บน Social Media อาจโดน Social Engineering + Phishing ได้
- โจรจะไปหาข้อมูลการทำธุรกรรมและเงินที่มีจาก address ได้ แล้วสร้างเว็บหรือแอปปลอมที่เราใช้งานบ่อยๆ ให้เราเข้าไปใช้งานโดยไม่รู้ตัว จึงควรใช้เป็น address ใหม่และไม่ใช้ชื่อจริงนามสกุลจริง
- ย้ำอีกครั้ง “ไม่ว่ายังไงก็โดนแฮ็กได้ ถ้าโจรต้องการจริงๆ“ ต้องทำให้โจรลำบากที่สุดที่จะขโมย โดยการไม่เก็บเงินก้อนไว้ที่เดียวและใช้ MFA
======================
Speaker: อาจารย์ ดร. ธันวา อาภรณ์ทิพย์ BLOCK - PSU Blockchain Research Team (Twitter ID: @TanwaArpornthip)
======================
======================
สรุปฉบับเต็ม
======================
- เราจะมาพูดถึงวิธีการรักษาความปลอดภัยให้กับกระเป๋าเงินของเรา ไม่ว่าจะเป็นบัญชีใน Centralized Exchange อย่าง Binance, Bitkub หรือ Satang ก็ตาม รวมถึงกระเป๋าเก็บเหรียญบนบล็อกเชนที่เป็น Software Wallet อย่าง Metamask, Trust Wallet และ Hardware Wallet อย่าง Ledger หรือ Trezor
- ก่อนอื่นเลย สิ่งที่ทุกคนต้องระลึกไว้เสมอก็คือ “ไม่ว่ายังไงก็โดนแฮ็กได้ ถ้าโจรต้องการจริงๆ “
- แล้วเราควรจะทำอย่างไรดี
*1. ขั้นตอนแรก
- ให้ใช้วิธีเดียวกับสมัยคุณปู่คุณย่า ที่ท่านเก็บเงินไว้ตามที่ต่างๆ เช่น หลังตู้เสื้อผ้า หลังตู้เย็น ไว้ใต้เตียง หรือแม้กระทั่งการฝังดิน
- นั่นก็คือ การกระจายความเสี่ยง ไม่เก็บเป็นเงินก้อนไว้ที่จุดเดียวกัน เมื่อเกิดการขโมยหรือโดนแฮ็กก็จะเสียหายเพียงบางส่วน ไม่หายไปทั้งหมด
*2. ขั้นตอนที่สอง
- รู้จักกับ MFA Multi-factor Authentication การใช้ปัจจัยตั้งแต่ 2 อย่างขึ้นไปในการตรวจสอบและยืนยันตัวตน
- ที่รู้จักกันเป็นส่วนใหญ่ก็คือ 2FA 2 Factor Authentication การตรวจสอบยืนยันตัวตนด้วย 2 ปัจจัย ซึ่งเป็นเพียงส่วนย่อยของ MFA
- แต่เพื่อความปลอดภัยที่ดี ควรมีอย่างน้อย 3 ปัจจัยในการยืนยันตัวตน ได้แก่
- What you know บางสิ่งบางอย่างที่คุณรู้คนเดียวเท่านั้น เช่น Password หรือ Pin code
- What you have อะไรสักอย่างหนึ่งที่คุณมี เช่น Smartphone, YubiKey, Google 2FA Authenticator, Authy, Ledger, Trezor หรือ Hardware Wallet อื่นๆ
- Who you are คุณเป็นใคร เช่น Biometric ต่างๆ รูปหน้า หรือ ลายนิ้วมือ
- หากมีครบ 3 ปัจจัยนี้แล้ว โอกาสที่จะโดนแฮ็กนั้น แทบจะไม่มีเลย
1
กรณีตัวอย่าง จาก Google
- เมื่อก่อนพนักงานของ Google จะโดนแฮ็กบ่อยครั้งมาก ทาง Google จึงแจก YubiKey ให้กับพนักงาน แล้วสอนพนักงานทุกคนว่าใช้งานอย่างไร หลังจากนั้นพนักงานก็ไม่โดนแฮ็กอีกเลย
- นั่นเป็นเพราะ เมื่อพนักงานจะล็อกอินเข้าทำงาน จะต้องใช้อย่างน้อย 2FA ซึ่งก็คือ ใช้ YubiKey เป็น 1 ปัจจัย ( What you have) และ pin code เป็นอีก 1 ปัจจัย (What you know)
======================
1. สำหรับ Centralized Exchange
======================
- บัญชีที่อยู่ใน Exchange แลกเปลี่ยนเงินแบบมีตัวกลาง เช่น Binance, FTX, Bitkub หรือ Satang Pro
- เราสามารถสร้างความปลอดภัยได้ง่ายกว่า Software Wallet หรือ Hardware Wallet เพราะเราจะไม่ต้องไปยุ่งกับ Private Key
- ซึ่งวิธีรักษาความปลอดภัยที่ง่ายที่สุด ก็คือ Password ที่ดี
2
ปัจจัยที่ 1 What you know หรือ Password
- ไม่ควรจะเป็นอะไรที่เดาได้ง่าย เช่น ชื่อของเราตามด้วยตัวเลข 111 หรือ ตัวเลขเรียงกันอย่าง 1234567890
- แล้วทำอย่างไรให้ Password ของเรานั้นมีความแข็งแรงและเดาได้ยาก
- สำหรับคนสองภาษาแบบคนไทยนั้น สามารถทำได้ง่ายๆ โดยการนำประโยคภาษาไทยมาพิมพ์เป็นภาษาอังกฤษ
เช่น “ผมชอบกินไข่เจียว” เมื่อกดเปลี่ยนเป็นภาษาอังกฤษ แล้วพิมพ์ ก็จะได้เป็น “z,=v[dbow-jg0up;”
- จะเห็นว่าข้อความที่ได้ออกมานั้น เดายากมาก ต่อให้เป็นคนไทยด้วยกันมาเดา ก็จะไม่รู้ว่าพิมพ์มาจากคำว่าอะไร ซึ่งวิธีนี้เป็นวิธีที่ง่ายที่สุดสำหรับคนที่พูดได้สองภาษา
- แต่ปัญหาถัดมาของคนส่วนใหญ่ก็คือ แค่ Password เดียวก็จำยากแล้ว งั้นใช้ Password เดียวกันให้หมดทุกที่เลยแล้วกัน ดังนั้นเมื่อบัญชีที่ใดถูกเจาะข้อมูลแล้ว คุณก็จะโดนแฮ็กทุกอย่างเลย
- จึงควรใช้ Password ที่ไม่เหมือนกันเลยในแต่ละที่ โดยเฉพาะบัญชีที่เกี่ยวกับการเงินและการเทรด
กรณีตัวอย่าง
- เมื่อวานมีคน tweet ว่า บัญชีของเค้าบน FTX โดนแฮ็ก ทั้งๆ ที่บัญชีนั้นมี 2FA อยู่แล้ว แต่บัญชีที่โดนแฮ็กจริงๆแล้ว ไม่ใช่บัญชีที่ FTX โดยตรง เป็นการโดนแฮ็กที่ Gmail ของเค้าก่อน
- เพราะบัญชีบน Gmail นั้น เป็นเพียง 1FA เท่านั้น คือ มีเพียงการใส่ Password ก็สามารถเข้าใช้งานได้และตัว Password เอง ก็ไม่แข็งแรง ไม่ปลอดภัยมากเพียงพอ นอกจากนั้นยังเป็น Password เดียวกันกับบัญชี FTX อีกด้วย
- เมื่อโจรสามารถแฮ็ก Gmail ได้แล้ว ก็เข้าไปใน FTX แล้วไปกด Reset Password ใน FTX ทาง FTX จึงแจ้งว่า คุณต้องกรอก 2FA Authenticator ก่อน
- โจรจึงตอบว่า ไม่มี 2FA แล้ว ทาง FTX จึงขอรูปถ่ายยืนยันตัวตน ซึ่งโจรก็ไปค้นหารูปจากใน Gmail ของเหยื่อและใช้รูปในนั้นส่งไปยืนยันตัวตน ทาง FTX จึงปลดล็อก 2FA ให้
- เหตุการณ์นี้ทำให้เหยื่อสูญเสียเงินไปราว 1 ล้านดอลลาร์สหรัฐ
- What you know จึงควรจะเป็นคุณคนเดียวเท่านั้นที่รู้ Password
- แล้วถ้าใช้ Password ต่างกันในแต่ละบัญชี เราจะต้องจำกันลำบากมาก
- ดังนั้น ควรใช้ Password Manager เข้ามาช่วยในการจัดการ Password ทั้งหมด ซึ่งจะเป็นยี่ห้อไหนก็ได้ ตัวอย่างเช่น Lastpass.com หรือ Bitwarden.com
1
- ทำให้เกิดข้อสงสัยว่า Password Manager เหล่านี้ ก็รู้ Password ของเราหมด
- แต่ไม่ต้องกังวล เพราะระบบเหล่านี้ถูกออกแบบมาให้ผู้ให้บริการเห็นได้แค่ Password ที่ถูกเข้ารหัสแล้วเท่านั้น (Encrypted) แต่ส่วนนี้จะไม่ขอลงลึกในรายละเอียด
- เอาเป็นว่า เราจำแค่เพียง Password เดียว เพื่อเข้าใช้ Password Manager
- และผู้ให้บริการเหล่านี้ออกแบบมาเพื่อใช้ร่วมกับการรักษาความปลอดภัยในระดับสูง จึงไม่ได้รองรับแค่เพียง 2FA แต่รองรับได้ MFA นั่นคือ เราอยากใส่กี่ปัจจัยก็ได้ 5FA หรือ 8FA ก็ได้ หรือจะใส่เป็น Password 3 ชั้น ก็สามารถทำได้เช่นกัน
- สรุปสั้นๆ สำหรับปัจจัยที่ 1 คือ ต้องมี Password ที่ดี
ปัจจัยที่ 2 What you have
- การที่เราใช้ Google Authenticator หรือ Authy เป็นการเพิ่มปัจจัยที่ 2 ในการยืนยันตัวตน
- ทำให้เกิดเป็น 2FA โจรจึงต้องรู้ Password และมีมือถือของเราที่มี Google Authenticator จึงจะแฮ็กได้
- จากเคสตัวอย่างที่แม้ว่า บัญชี FTX จะมี 2FA แต่ Gmail ไม่มี 2 FA
- จะสังเกตได้ว่า บัญชีที่เราใช้งานต่างๆ นั้น มีความเชื่อมโยงกันเหมือนห่วงโซ่ และโจรจะพยายามโจมตีจุดที่อ่อนแอที่สุด และใช้ประโยชน์จากจุดนั้นเข้าถึงจุดอื่นๆ
- ดังนั้น การเทรดคริปโต จึงควรใช้อีเมลที่มี 2FA เป็นอย่างน้อย
ปัจจัยที่ 3 Who you are
- Biometric ต่างๆ เช่น ลายนิ้วมือ ม่านตา และหน้าของเรา ในการเข้าใช้งาน Smartphone เครื่องคอมพิวเตอร์ หรือ Application ต่างๆ
- ถึงตอนนี้ก็จะมีอย่างน้อย 3 ปัจจัยที่จะป้องกันไม่ให้โจรมาขโมยหรือแฮ็กได้
- หาก Smartphone หายหรือถูกขโมยไป (สูญเสีย What you have) โจรก็จะต้องมีลายนิ้วมือหรือรูปหน้าที่สแกนให้ผ่าน (Who you are) และหากต้องเข้าใช้งานแอปหรือบัญชีต่างๆ ก็ต้องใช้ Password หรือ Pin (What you know) จึงจะสามารถเข้าใช้งานได้
อย่าทำให้ MFA เหลือแค่ 1FA
- ถึงแม้จะมี MFA แล้ว หากมีการใช้งานอย่างผิดวิธี ก็อาจทำให้เกิดความผิดพลาดได้ เช่น การโหลดแอปเถื่อนหรือเข้าเว็บเถื่อน ที่ไม่มีความน่าเชื่อถือ หรืออย่างไฟล์ apk ที่ขออนุญาตในการอ่านข้อมูลบนหน้าจอของเราตลอดเวลา
- นั่นทำให้เจ้าของแอปหรือเว็บนั้นๆ สามารถเห็น Google Authenticator (What you have) และไม่ต้องพยายามเข้าถึงมือถือของเราผ่านการสแกนนิ้ว (Who you are) จึงผ่าน 2FA ของเราได้ เหลือแค่การคาดเดา Password (What you know) เพียงปัจจัยเดียวเท่านั้น
- การเข้าเว็บต่างๆ หรือดาวน์โหลดอะไรก็ตาม จึงต้องระมัดระวังอย่างมาก
- ซึ่งใครที่ต้องการป้องกันระดับสูงสุด ก็ควรใช้มือถือคนละเครื่องไปเลย เป็นเครื่องที่ใช้งานสำหรับโดยเฉพาะ หรือใช้วิธี 2FA อีกลักษณะหนึ่งที่ไม่ได้ผูกติดกับมือถือ จะทำให้ปลอดภัยมากถ้าเป็นเครื่องมือที่ทำงานแบบ Offline แบบเดียวกับที่ Google แจก YubiKey ให้พนักงานใช้ ซึ่งมีหน้าที่อย่างเดียวคือ เป็น 2FA ไม่สามารถเชื่อมต่ออินเทอร์เน็ตได้ และเวอร์ชั่นใหม่จะมีการสแกนนิ้วด้วย ก็จะครบ 3 ปัจจัย
- สำหรับคนที่ปกติแล้ว ไม่ได้เข้าเว็บแปลกๆ หรือโหลดแอปอะไรมาก ก็จะไม่ต้องกังวลในเรื่องนี้
ใช้เครื่องเดียวในการเทรด
- หากต้องการเพิ่มความปลอดภัยขึ้นไปอีกขั้น
- แนะนำให้ใช้เครื่องที่เทรดเป็นเครื่องเดิมๆ และอุปกรณ์ที่ใช้ในการล็อกอินเข้าไป ต้องมี MFA คือ มี Password มี YubiKey และมีการสแกนลายนิ้วมือ
- สำหรับอีเมลก็เป็นอีเมลที่ใช้สำหรับเทรดและใช้กับเครื่องนี้เท่านั้น ไม่ล็อกอินที่อื่น
- ดังนั้น ถ้าโจรจะเข้าเครื่องนี้ได้ ก็ต้องใช้ MFA เข้าไปเท่านั้น
- แต่ทั้งนี้ เรื่องความปลอดภัย ไม่ได้เป็น 0 หรือ 1 คือ มีกับไม่มี เท่านั้น แต่เป็นช่วงหรือระดับ (Spectrum) ขึ้นกับการยอมรับความเสี่ยงและความกังวลของแต่ละคน
- ตัวอย่างเช่น หากไปทำงานที่ร้านกาแฟ แล้วต้องการไปเข้าห้องน้ำ
- แบบที่หนึ่ง คือ เอาคอมวางไว้เฉยๆ แล้วไปเข้าห้องน้ำเลย โอกาสที่คอมหาย จะเยอะมาก
- แบบที่สอง สลักชื่อไว้ที่คอม โอกาสหายก็จะลดลง
- แบบที่สาม พาเพื่อนไปด้วย ฝากเพื่อนช่วยเฝ้า แต่เพื่อนก็ไม่ได้ใส่ใจเท่ากับตัวเราเอง
- แบบที่สี่ กอดคอมเข้าห้องน้ำไปด้วยเลย
- จะเห็นว่า ความปลอดภัยแบ่งเป็นหลายระดับ ดังนั้นจึงควรเลือกความปลอดภัยที่เหมาะกับความเสี่ยงที่ตนเองรับได้
ห้ามใช้ Wi-Fi สาธารณะ
- หากต้องการเทรดนอกสถานที่ ควรใช้ Hotspot ของเราเท่านั้น
- ในที่สาธารณะจะมีการแฮ็กที่เรียกว่า Man in the middle attack
- โจรสามารถตั้งชื่อ Wi-Fi ชื่อเดียวกับร้านที่เราเข้าไปใช้บริการได้ และเมื่อเราเชื่อมต่อ โจรก็จะเห็นข้อมูลทุกอย่างที่ผ่านช่องทางออนไลน์
- จากนั้นก็จะขึ้นกับความปลอดภัยของเว็บที่เราเข้าใช้งานด้วย ว่ามี Https (รูปกุญแจล็อก) หรือไม่ ซึ่งถ้าโจรพยายามจริงๆ ก็สามารถปลอมได้ และโจรก็จะสามารถรู้ข้อมูลทั้งหมดของเรา username password ที่เราเข้าใช้ทางออนไลน์ต่างๆ
การเปลี่ยน Password เป็นระยะๆ
- ก็เป็นอีกวิธีที่ดีในการป้องกัน
- ซึ่งบางคนก็จะมีการจดใส่กระดาษไว้ มีข้อควรระวังคือ หากโจรเข้าถึงกระดาษของเราก็จะทำให้รู้ Password ของเราได้ กลายเป็นการรวม ปัจจัย What you know กับ What you have เข้าด้วยกัน
1
- ดังนั้น วิธีการเก็บกระดาษใบนั้นก็เป็นเรื่องสำคัญ หากทำผิดวิธีก็จะทำให้ระดับความปลอดภัยของเราลดลงก็เป็นได้ ซึ่งจะอธิบายต่อไปในหัวข้อของการเก็บ Seed Word หรือ Private Key
- สรุปการรักษาความปลอดภัยบัญชีใน Centralized Exchange คือ
*1. ใช้ Password Manager
*2. ใช้ 2FA Authenticator ถ้าเป็นไปได้ก็ควรเป็น 2FA ที่อยู่บน YubiKey
*3. มือถือหรือคอมที่ใช้ควรมีการสแกนลายนิ้วมือหรือสแกนม่านตา
*4. อย่าลงแอปมั่ว อย่าเข้าเว็บเถื่อน
======================
2. Software Wallet
======================
- ตัวอย่างการจด Password บนกระดาษนั้น หากเก็บผิดวิธีก็สามารถทำให้เหลือเป็น 1FA ได้เช่นกัน
1
- การเก็บ Seed Word ก็เช่นกัน เราจะรู้ได้อย่างไรว่า คนที่อยู่ในที่พักหรืออาคารเดียวกับเราจะไม่สามารถเข้าถึงกระดาษใบนั้นของเรา
- มีกรณีตัวอย่างที่คนโดนแฮ็ก Trezor
- เหยื่อรายนี้จดไว้ 2 ใบ ใบหนึ่งไว้ที่บ้าน อีกใบหนึ่งไว้ที่ธนาคาร เพราะต้องการให้คนในครอบครัวสามารถไปเอาออกมาได้
- จะเห็นได้ว่า ใบที่ไว้ที่บ้านนั้น มีปัจจัยครบ 3FA คือ หากเข้าหมู่บ้านหรือคอนโด ยามจะเห็นว่า เค้าคือใคร เป็นปัจจัยที่หนึ่ง มีกระดาษอยู่ที่บ้านเป็น What he has เป็นปัจจัยที่สอง และตัวเค้าเองต้องรู้ว่าบ้านอยู่ที่ไหนเป็นปัจจัยที่สาม What he knows
- แต่ที่ธนาคารนั้น กระดาษจด Seed ลงบนกระดาษเป็นคำตรงๆ 24 คำที่ไม่ได้เข้ารหัส ทำให้เหลือเพียง 1FA คือ What he has โจรที่ไปเห็นกระดาษของเหยื่อ ก็สามารถขโมยเงินออกไปได้
- ดังนั้น การเก็บกระดาษหรือข้อมูลที่จด Seed Words นั้น ก็ต้องทำให้เป็น MFA
- คำแนะนำจากหลายๆ สื่อรวมถึงผู้ผลิต Wallet เอง แนะนำว่า อย่าเก็บบนช่องทาง Online และอย่าถ่ายรูปลง Google Drive ให้จดใส่กระดาษเท่านั้น
- แต่จากตัวอย่างข้างต้นก็จะเห็นได้ว่า การจดใส่กระดาษเฉยๆ นั้น ไม่ได้ทำให้เกิดเป็น MFA และยังเป็นการลดเหลือเพียง 1FA อีกด้วย
- สิ่งที่ควรทำเพิ่มจึงเป็นการเข้ารหัส Seed Word ของเรา
- วิธีแรก คือ การ Shift ตัวอักษร
- เลื่อนตัวอักษรไปเป็นจำนวนตัวอักษรถัดๆ ไปในระยะที่เท่าๆ กัน เช่น A เป็น V, B เป็น W, C เป็น X, D เป็น Y แบบนี้เป็นต้น
- วิธีการนี้ จะทำให้เกิดเป็น 2FA ทันที เพราะ Seed Word ที่เข้ารหัสแล้ว ก็จะเป็น What I have ส่วนวิธีการเข้ารหัสเป็น What I know
- ถ้าโจรได้ Seed ที่เข้ารหัสไป แต่ไม่รู้วิธีการถอดรหัส ก็จะไม่สามารถขโมยเงินออกไปได้ แต่ยังเป็นวิธีเข้ารหัสที่ง่ายเกินไป
1
- แนะนำให้ใช้ BIP39 ตารางเปลี่ยนคำศัพท์เป็นตัวเลข ซึ่งเป็นมาตรฐานที่ใช้กับทุกบล็อกเชน (https://github.com/.../bips/blob/master/bip-0039/english.txt)
- เมื่อเป็นตัวเลขแล้ว เราจะสามารถเข้ารหัสได้ง่ายขึ้น นำไปดัดแปลงอย่างไรก็ได้ เช่น คำว่า angry เป็นคำที่ 72 ในตารางของ BIP39 เราก็นำมา +10 แล้ว x3 ก็จะได้เป็น 246 แล้วทำแบบนี้กับแต่ละคำ
- โจรจะแก้รหัสยากมาก เพราะต้องรู้ว่า เราใช้ลำดับการคำนวณอย่างไร หรือจะใช้เป็นข้อมูลส่วนตัว เช่น ปีเกิดของพ่อ + ปีเกิดของแม่ - ปีเกิดของเรา ก็สามารถทำได้
- ทีนี้โจรต้องรู้อะไรบ้าง
*1. เห็นข้อมูลบนกระดาษใบนี้
*2. ต้องรู้ว่าเราคือใคร
*3. ต้องรู้ว่าลำดับการคำนวณทำยังไง กลายเป็น 3FA ทันที
- ดังนั้น แม้เราจะเก็บตัวเลขที่เข้ารหัสแล้วนี้ บนช่องทางออนไลน์ โอกาสที่โจรจะเข้าถึง Seed Word จริงๆ ของเราก็ทำได้ยากมาก
- ซึ่งหากใช้ข้อมูลส่วนตัวมาประกอบ จะทำให้เกิดข้อดีอีกอย่างด้วย ถ้าเราเป็นอะไรขึ้นมา ครอบครัวจะนำเงินออกมาอย่างไร
- เราก็เขียนในพินัยกรรมว่า ให้หารูปถ่ายกระดาษแผ่นนี้ใน Google Drive ของเรา แล้วคำนวณตามขั้นตอนที่เราสร้างไว้
- ซึ่งถ้าวิเคราะห์จาก 3FA พ่อแม่รู้อยู่แล้วว่าเราคือใคร จึงรู้ว่า เค้าเกิดปีอะไร เราเกิดปีอะไร (Who you are) แต่จะยังไม่รู้ว่า รูปหรือกระดาษแผ่นนี้อยู่ที่ไหน จะรู้เมื่อมีการเปิดเผยพินัยกรรม (What you have) และไม่รู้ว่า คำนวณอย่างไร (What you know)
- จึงเป็นการเปิดเผยข้อมูลบางส่วน เพื่อให้คนในครอบครัวเท่านั้น ที่สามารถนำเงินออกไปได้ เมื่อเกิดอะไรขึ้นกับเรา
- สรุปว่า Seed Word สามารถเก็บในกระดาษก็ได้ หรือเก็บในออนไลน์ก็ได้ แต่ต้องเพิ่มให้เป็น MFA ด้วยการใช้ BIP39
- ซึ่งตรงนี้ เป็นวิธีการที่ยังไม่มีคนกล่าวถึงเท่าไหร่ จึงเป็นทริกที่อยากแนะนำให้ทุกคนไปใช้
- อีกวิธีที่ช่วยในการเก็บ Seed Word ได้ คือ Schamir’s Secret Sharing ชื่ออาจดูหรูหรา แต่หลักการง่ายๆ คือ การเก็บข้อมูลแบบแยกส่วน แยกสถานที่เก็บ เช่น มี 24 คำ แยก 12 คำไว้แผ่นที่ 1 เอาไปให้พ่อ และอีก 12 คำ ไว้แผ่นที่ 2 เอาไปให้พี่
- จะเป็นการกระจายความเสี่ยง และทำให้มี 3FA เพราะต้องรู้ว่า เราเป็นใคร และรู้ว่า บ้านพ่อกับบ้านพี่อยู่ที่ไหน และถ้าขโมยได้ไปแค่ฝั่งใดฝั่งหนึ่งก็ทำอะไรไม่ได้
Q1: เป็นไปได้หรือไม่ ที่ Seed Word จะบังเอิญตรงกัน
- สามารถเป็นไปได้ในทางทฤษฎี แต่โอกาสที่จะเกิดขึ้นเทียบเท่ากับการถูกล็อตเตอรี่รางวัลที่หนึ่ง 8 ครั้งและต้องถูกติดกันครบ 8 งวด โอกาสจึงน้อยมากๆๆๆๆๆ ซึ่งคอมพิวเตอร์ทั่วไป ไม่น่าจะเร็วพอที่จะสร้างกระเป๋าไปเรื่อยๆ จนบังเอิญเจอแบบนั้นได้
Q2: ทำไมลองสุ่มกรอก Seed Word เล่นๆ เอง บางครั้งก็ไม่สามารถสร้างกระเป๋าขึ้นมาได้
- เป็นเพราะบางกระเป๋าใช้ 12 คำ บางกระเป๋าใช้ 24 คำ และมีตัวเช็คยอดรวมเพิ่มเข้าไปนอกเหนือจาก BIP39 ด้วย
ซึ่งคล้ายกับวิธีของบัตรเครดิต จะสังเกตได้ว่า เวลาเราพิมพ์ตัวเลขผิดไป 1 ตัว ระบบก็รู้ว่า นี่ไม่ใช่เลขบัตรเครดิตจริงๆ
Q3: ถ้าเราจดไว้เพียงบางคำ แล้วบางคำใช้ความจำอย่างเดียวได้หรือไม่
- ก็จะเป็นวิธีที่เพิ่มปัจจัย What I know ได้ แต่ถ้าเราจำไม่ได้ ก็จะซวยได้เหมือนกัน
- เคยมีข่าว ที่ผู้อพยพจากประเทศหนึ่งไปยังอเมริกา แล้วกลัวว่าจะโดนยึดเงิน ก็เลยจำ Seed Word 24 คำ แล้วนอนท่องทุกวัน พอเข้าประเทศได้ ก็ค่อยไปกรอกตามที่ตัวเองจำได้ แล้วนำเงินออกมา
======================
3. Hardware Wallet
======================
- หลักการไม่ต่างกับ Software Wallet คือ จด Seed Word ใส่กระดาษก็ได้หรือไว้ในออนไลน์ก็ได้ แต่ต้องมี MFA และใช้ BIP39
- แต่พอเป็น Hardware จะมีช่องทางโจมตีได้อีกวิธีก็คือ หายหรือถูกขโมย
- ในวงการคอมพิวเตอร์จะบอกว่า “คนที่สามารถเข้าถึงอุปกรณ์นั้นๆ ทางกายภาพได้ ถือเป็นเจ้าของเครื่อง”
- ถ้าคนใดคนหนึ่งสามารถขโมยของที่จับต้องได้ เช่น คอมพิวเตอร์หรือ Hardware Wallet ของเรา ก็ให้รอเวลาที่จะโดนแฮ็กได้เลย เพราะถ้าเค้าต้องการจริงๆ ยังไงก็โดนแฮ็กได้
- ไม่ว่าจะเป็น Trezor KeepKey Ledger มีงานวิจัยมาทั้งหมดแล้วว่า สามารถแฮ็กได้ แต่อาจจะยาก
- การเก็บอุปกรณ์ที่จับต้องได้ของเราจึงเป็นเรื่องจำเป็น
- ถ้า Hardware Wallet หาย ให้โอนเงินออกจาก Wallet เก่า ไป Wallet ใหม่ ให้เร็วที่สุด
- ซึ่งจะเป็นปัญหากับคนที่มี Hardware Wallet แค่เครื่องเดียว จึงควรมี Hardware Wallet สำรองอีกเครื่อง ถ้าหาย จะได้โอนมาเครื่องสำรองได้ทันที
- สิ่งที่โจรต้องการจริงๆ คือ Seed Word เพราะไม่ต้องมี Hardware Wallet ของเราก็ได้
- ปัญหาหลายๆ กรณีที่ผ่านมาของ Hardware Wallet ส่วนใหญ่คือ โดนเว็บปลอมหรือแอปปลอมหลอกให้ใส่ Seed Word ตอนเชื่อมต่อ Hardware Wallet
- จำไว้ว่า การใส่ Seed Word หรือ Private Key อีกครั้ง ห้ามใส่บนคอมและบนเว็บหรือแอปใดๆ ทั้งสิ้น
- ไม่มีเหตุการณ์หรือการทำธุรกรรมใดเลยที่ถาม Private Key หรือ Seed Word
- นอกจากตอนที่เราต้องการ Backup Wallet เช่น มี Metamask ที่คอม แต่อยากให้มีที่ Laptop ด้วย หรือมี Ledger หลักอยู่แล้ว อยากสร้าง Ledger Backup
- สำหรับ Hardware Wallet ที่เดียวที่จะใส่ Private Key ก็คือ ใส่บน Hardware Wallet เท่านั้น
- สำหรับ Software Wallet ต้องระวังการดาวน์โหลด Software Wallet ปลอม เช่น Metamask ปลอม มักจะมาจากการดาวน์โหลดจากเว็บเถื่อน ให้ดาวน์โหลดจาก Google Chrome Store เท่านั้น
- อย่างเช่น Defi ชื่อ AAVE ก็เคยมีคนตั้งใจสร้างชื่อเว็บคล้ายๆ กัน เป็น AARVE แล้วพอคนเข้าไปก็ถาม Private Key ทันที หรือเดือนที่แล้ว Pancakeswap โดนโจมตีหน้าเว็บ (UI) โจรก็หลอกถาม Private Key ตรงๆ จากหน้าเว็บเลย
- ในการเข้าใช้ Wallet ควรใช้ Password ที่ดีพอเช่นกัน อาจใช้ Password Manager ช่วยก็ได้ (What you know)
- ถ้าอยากปลอดภัยมากขึ้น ก็อย่าลง Metamask ไว้หลายเครื่อง ถ้าจะเทรดให้ใช้เครื่องประจำเท่านั้น (What you have)
- และใช้การป้องกันของอุปกรณ์เป็นตัวช่วยในการเข้าถึง เช่น อุปกรณ์นั้นๆ มีสแกนลายนิ้วมือก่อน จึงจะใช้งานได้ (Who you are) ก็จะทำให้เป็น 3FA
อย่าให้ใครเห็นหรือรับรู้ว่าเรามี Cryptocurrency
- นอกจากนี้ยังมีเรื่องความปลอดภัยของตัวผู้ใช้งานเองด้วย
- กรณีตัวอย่าง เคยเกิดขึ้นที่พัทยา มีคนนำ Ledger ไปใช้ในที่สาธารณะ แล้วโจรเห็น แอบติดตามไปที่บ้านแล้วเอาปืนจี้หัว ให้บอก Password
- จะเห็นได้ว่า MFA จึงพังหมดเลย ถ้าไม่ได้ป้องกันความปลอดภัยของตัวเราเอง
- อย่าแสดงให้คนอื่นเห็นว่าเรามีคริปโต อย่าไปบอกใครว่ามี Hardware Wallet และอย่าบอกใครว่า เก็บที่ไหน หรือใช้ตอนไหน
ควร Backup โดยไม่ต่ออินเทอร์เน็ต
- อีกข้อสำคัญ ในการ Backup Metamask เช่น จากเครื่องที่บ้านไปบน Laptop
- เวลาที่เรากรอก Private Key ไม่จำเป็นต้องต่ออินเทอร์เน็ต
- ดังนั้น ก่อน Backup ให้เอาสายแลนออก ปิด Wi-fi ปิดบลูทูธ ปิดช่องทางสื่อสารทุกอย่าง รวมถึงแอปอื่นๆ ด้วย
- แล้วจึงค่อยพิมพ์ Private Key แล้ว Recover Wallet ขึ้นมา แล้วค่อยเปิด Wi-fi ต่ออินเทอร์เน็ตอีกครั้ง
- ข้อดีของการทำแบบนี้ คือ ถ้าเผลอโหลด Metamask ปลอม ข้อมูล Private Key จะไม่ถูกส่งไปที่โจรในเวลาที่เราตัดอินเทอร์เน็ต
- ซึ่งส่วนใหญ่ Metamask ปลอมจะไม่ได้มีหน้าจอผู้ใช้งาน (UI) ที่เหมือน Metamask จริงทุกประการ
- เราจะสามารถสังเกตความผิดปกติได้ เช่น เลข address ที่แสดงทำไมไม่ใช่เลขเดิม เราก็จะไม่ต่ออินเทอร์เน็ตกลับมา แล้วลบทุกอย่างทิ้ง ล้างเครื่อง แล้วค่อยว่ากันใหม่อีกที
โจรระดับสุดยอด
- อีกกรณีตัวอย่าง เจ้าของ NXM defi Nexus Mutual ถือเหรียญ NXM มูลค่ามากกว่า 1 ล้านเหรียญสหรัฐ ใช้ Ledger ในการทำธุรกรรมบน Blockchain
- แน่นอนว่า โจรไม่สามารถแฮ็ก Private Key ได้ แต่ใช้วิธีแฮ็กคอมที่ใช้เชื่อมต่อกับ Ledger เป็นประจำแทน แล้วลง Metamask ปลอม ที่เหมือน Metamask จริงทุกประการ ทำงานเหมือนกันทุกประการ
1
- แต่เปลี่ยนให้การทำงานหลังบ้านโอนไปยัง address ของโจรเอง โดยหน้าจอผู้ใช้งาน (UI) แสดงการโอน address ปลายทางถูกต้องตามปกติ
- เมื่อผู้ใช้งานเข้ามาทำการโอน เห็นว่า หน้าจอแสดงข้อมูล address ปลายทางถูกต้องครบถ้วน ก็ยืนยันการโอนตามปกติ แต่เงินจำนวนนั้นได้ถูกส่งไปที่ address ของโจรเรียบร้อย
- “ถ้าโจรต้องการจะแฮ็ก ยังไงก็โดน”
- การทำแบบนี้ เป็น Social Engineering + Phishing คือ โจรจะต้องรู้ว่า ใช้คอมที่ไหน ต่อ Ledger ยังไง มีพฤติกรรมการโอนอย่างไร จำนวนเท่าไหร่ มากหรือน้อย และมีความสามารถมากพอที่จะปลอม Metamask เห็นได้ว่า โจรมีความพยายามอย่างมาก
- ดังนั้น ต้องกระจายความเสี่ยง และค่อยๆ โอนทีละกระเป๋าและต้องทำให้โจรลำบากที่สุดที่จะขโมย
Q1: จะแน่ใจได้อย่างไร ว่า Hardware Wallet ที่เราซื้อปลอดภัย
- ลำดับแรกปลอดภัยที่สุดต้องซื้อจากผู้ผลิตโดยตรง รองลงมาหากซื้อจากแหล่งอื่น เช่น ร้านออนไลน์ หรือ Lazada Shopee Amazon จะต้องมั่นใจว่า ร้านนั้นเป็นดีลเลอร์ที่ได้รับใบอนุญาต ซึ่งสามารถตรวจสอบได้จากเว็บของผู้ผลิต
- ในส่วนของ Ledger หากใครต้องการตรวจสอบอย่างจริงจัง จะมีเอกสารจากผู้ผลิต ว่า ต้องแกะออกมายังไง ตรวจสอบเลขชิปและพาร์ทส่วนไหน เพื่อพิสูจน์ว่ามาจากผู้ผลิตโดยตรง
======================
4. ข้อควรรู้
======================
- ไม่แนะนำให้เชื่อมต่อผ่านมือถือ เพราะถ้าทำมือถือหาย คนที่ได้รับเครื่องของเราไป อาจเข้าถึง Seed หรือ Password เพื่อขโมยเงินเราได้
- การจดใส่กระดาษไม่ใช่สิ่งที่ดีที่สุด มีอุปกรณ์เสริม เช่น CryptoSteel Crypto Capsule หรืออะไรก็แล้วแต่
- หาก Metamask พัง หรือ Hardware Wallet พัง เราก็ยังสามารถนำ Seed ไปกรอกในกระเป๋าอื่นๆ และนำเงินออกมาได้
- การโพสเลข Wallet บน Social Media เพื่อรับ Airdrop หรืออื่นๆ สามารถถูก Social Engineering หรือ Phishing ได้
- โจรจะรู้ทันทีว่า ชื่อคนบนทวิตเตอร์หรือเฟซบุ๊คนั้นมี address นี้อยู่
- โจรจะนำ address ไปหาข้อมูลดูว่า เคยทำธุรกรรมที่ไหนบ้าง และมีเงินเท่าไหร่
- ทำให้โจรสามารถสร้างหน้าเว็บปลอมแทนแพลทฟอร์มที่คนนั้นใช้งานบ่อยๆ พอเหยื่อเข้าไปใช้งานเว็บปลอมนั้นโดยไม่รู้ตัว ก็จะโดนแฮ็กหรือโดนขโมยได้
- ดังนั้น การโพสควรใช้เป็น address ใหม่เท่านั้น และอย่าใช้ชื่อจริง นามสกุลจริง หรือรูปจริง
- จึงเป็นสาเหตุว่า คนส่วนใหญ่ในทวิตเตอร์จะเป็น Anon (Anonymous) ไม่บอกตัวตน หน้าแมวบ้าง หน้าหมูบ้าง เพื่อไม่ให้โดน Social Engineering
1
======================
สรุปอีกครั้ง
======================
- MFA What you know, What you have, Who you are
- ถ้าทำครบ 3FA นี้แล้ว แทบจะไม่มีโอกาสโดนแฮ็กเลย
======================
เกร็ดเล็กเกร็ดน้อย
======================
- มี Podcast ที่คุยกันเรื่องแฮ็กอย่างเดียวโดยเฉพาะชื่อ Darknet Diaries
- Burn address ของ ETH 0x000000.. การเบิร์นคือการส่งเหรียญไปที่แอดเดรสนี้ เพราะยังไม่มีใครเป็นเจ้าของ private key กระเป๋านี้
======================
สรุปโดย serious block
Date 2 May 2021 (10:30-12:00)
#FBLive #CryptoWallet #AccountSecurity #รู้ไว้ก่อนHack #seriousblock #todayinoteto #วันนี้สรุปมา
โฆษณา