ผมโดน Backdoor และปล้น Binance

ผมโดน Backdoor และปล้น Binance … ไปเกือบหมด Wallet … อ่านไม่ผิดครับผมโดนจริงๆคนสาย Advance IT แบบผมนี่แหล่ะโดน

มี 2FA มี Email confirm ในการทำธุรกรรมแล้วแต่ก็ยังโดน !!!

ทั้งหมดที่จะเขียนนี้เป็นการสรุปจากหลักฐานที่เหลืออยู่ … และทำใจกับเงินที่เสียไปได้แล้ว อยากให้ทุกท่านอ่านเพื่อเป็นบทเรียนกับตัวเอง

ข้อมูลในนี้อาจจะเชิงเทคนิคบ้างจะพยายามอธิบายให้ละเอียดที่สุดแน่นอนเนื้อหายาวมาก ใครจะเอาไปแชร์ต่อเผยแพร่ต่อก็ได้ครับแต่ขอให้ทำความเข้าใจเชิงเทคนิคก่อนไม่งั้นจะงงแล้วเอาไปเผยแพร่ผิดๆถูกๆอีกว่าแล้วเริ่มเลย

วันที่ 15/2/2024 ตอนเช้า 6:35 มี Alert จาก App Binance แจ้งมาว่า เหรียญ ADA ที่เคยฟาร์มกินดอกเอาไว้ ได้ปลดฟาร์มเรียบร้อยแล้ว

ผมเมาขี้ตาตื่นขึ้นมาแบบงงๆ … อะไรวะผมไม่ได้ไปสั่งปลดฟาร์มไว้นิ แต่เคยจำได้ว่า ถ้าเราไปปลดฟาร์ม ระบบจะขอ 1 day ในการยืนยันระบบ คือใน Earn ของ Binance จะมี Product หลายตัวให้ฟาร์มผมจำไม่ได้แล้วว่า ADA ตัวนี้ไปฟาร์มไว้แบบไหน แต่เคยจำได้ว่าลองๆกดปลดฟาร์มระบบมันจะถามยืนยันแล้วต้องรอ 1 วัน

หรือว่ามีใครแอบเข้า Account ผมแล้วเนี่ย ???

รีบวิ่งไปหน้าเครื่องกดเปิดเครื่องเข้า Binance ยัง Login เข้าได้ปกติรีบเข้าไปตรวจสอบ Asset ตัวเอง …. เรียบร้อยหมดตัวเลยทีเดียว USDT โดนถอนออกไปทั้งหมดโดยมี BNB ที่แปลงมาจากขุด Verus มาก็โดน Convert เป็น USDT แล้วถอนออกไปหมดเลย

เหรียญเศษๆ ADA ที่มีกับ BNB โดน Convert เป็น USDT ทั้งหมด

โดนถอน USDT ออกไปเกลี้ยงผ่าน Network TRX ถูกถอนออกผ่าน Tron Network ลงที่ Address นี้
https://tronscan.org/#/address/TVcK8Nu9eAas9yRyzTNs16mCeH52DVyd4x

Transaction นี้
https://tronscan.org/#/transaction/a39fced99ac918b8cda411817d78cfc1c88cdbe374857399458a2189ac002485

ระหว่างนั้นผมตกใจมาก แต่พยายามตั้งสติแล้วใจเย็นๆเพราะยังเหลือ ADA ที่ปลดฟาร์มออกมามูลค่าประมาณ $350 อยู่ คิดในใจอันดับแรกจะย้าย ADA ไปไว้ที่ Exchange ที่ไม่ค่อยดังก่อนเพราะคิดว่า เป้าหมายของโจร ส่วนใหญ่จะเล่นที่ Exchange ใหญ่ๆ

ผมจึงทำการถอน ADA ซึ่งโดยปกติการถอนเหรียญของผมจะใช้ 2FA และ confirm email ในการยืนยันการถอน ok ผมทำตามขั้นตอน ใช้ 2FA และรอรับ email ยืนยันการถอนเพื่อเอารหัสมาก่อน (เรื่องว่า 2FA โดน Hack ออกไปยังไงเดี๋ยวมาอธิบายให้ฟังอีกที)

ปรากฏว่า ไม่มี Email ยืนยันใดๆเข้ามาที่ Gmail ของผม !!??

ถึงตรงนี้ชักแปลกๆล่ะ ปกติเรา Login เข้า Binance มันก็ต้องมี Email เด้งแจ้งเตือนมาแล้วนะ แต่คราวนี้ไม่มีอะไรเลย ผมเลยทดสอบส่งเมล์ Gmail -> Gmail ไม่เข้า
ทดสอบส่งเมล์ Hotmail -> Gmail ไม่เข้า
ทดสอบส่งเมล์ Email บ้านๆจาก Directadmin ตั้ง host เอง -> Gmail ไม่เข้า

ไม่เข้าที่ว่านี่คือไม่เข้า inbox ไม่เข้า junk mail ใดๆเลย เช็คใน Social ก็ไม่มีใครบ่นว่า Gmail ล่มนี่หว่า ??

และนี่คือเทคนิคเด็ดของ Hacker คือเข้าระบบ Gmail ของเป้าหมายได้แล้วก็ทำ Filter เตะทุก Mail ลงถังขยะ

ผมเข้าไปดูการตั้งค่าของ Gmail ก็พบว่า ผมโดนทำ Filter เอาไว้ Filter หรือตัวกรองจริงๆมีประโยชน์เอาไว้จัดเก็บ Email ของเราตามรูปแบบ Email ได้เช่น Email ที่ส่งมาจากที่ทำงาน ให้จัดเก็บลงที่ label Work , Email ที่ส่งมาจากครอบครัวก็ตั้งให้ลง label Family เพื่อจะได้สะดวกในการคัดแยก Email (ใครไม่รู้อยากลองเล่น ไปกดตั้งค่าดูทำผ่านหน้า Website จะเจอเมนูจัดการตัวกรอง)

Hacker มันร้ายทำ * (ทุก Email ที่เข้ามา) แล้วให้ลบทิ้ง ฉะนั้นทำให้ผมไม่เจอ Email อะไรเลยใน Inbox

พอเข้าไปดูในถังขยะก็พบหลักฐานล่ะ Hacker ทำการเข้า Binance , Bitkub , ViaBTC … ว่าง่ายๆ Hacker น่าจะเข้าเครื่อง Desktop ผมได้ทั้งเครื่องและได้ user pass Login เข้าทุก Website ไปแล้ว สังเกตจาก ViaBTC Web นี้เป็น Web ที่ผมใช้บริการตอนขุดเหรียญ LTC อยู่และไม่ได้เข้าใช้งานนานมากแล้ว นานจนผมก็ไม่เคยจำ Password เข้า Web เลยแต่ใช้วิธีกดจาก Browser ที่ตั้งจำรหัสผ่านไว้เอา

ซึ่งถ้าถ้าดูจากวันเวลาทั้ง Binance , Gmail , Bitkub แล้วผมโดนขโมยตั้งแต่วันที่ 14 ตอน 6 โมงเช้ากว่าจะรู้ตัวก็ วันนึง (อันนี้พลาดจริงๆ)

ใน Binance เวลาเป็น UTC ถ้า +7 ไปจะเป็นเวลาไทยจะตรงกับการเข้า Login ของ Bitkub เลย ที่ Bitkub แสดงให้เห็นอีกว่า Login ผ่าน Firefox … ทำให้ผมคิดล่ะว่า เครื่องผมน่าจะโดน Backdoor ระดับ Remote เครื่องเลย แถม IP ที่วิ่งไปก็เป็น IP บ้านผมอีกด้วย เจ็บปวดมากกก

ผมไล่ปลด Filter แล้วรีบเปลี่ยน Password 2FA ของ Binance ก่อนระหว่างนั้น ผมเองก็ไม่แน่ใจว่าเกิดอะไรขึ้น

เหรียญ ADA ใน Binance ที่โดนปลดฟาร์มอยู่ดีๆก็โดนเตะกลับเข้าไปฟาร์มต่อ อันนี้ ผมไม่แน่ใจว่าเกิดจากระบบอัตโนมัติของ Binance หรือฝีมือของ Hacker ที่จะกลับเข้ามาโกยทุกอย่างให้หมดแต่พอรู้ว่าโกยไม่ได้ก็เลยทำเนียนเตะกลับเข้าไปฟาร์มเหมือนเดิมหรือเปล่า (ก็จริงยัง OK ที่ยังปราณีฉันอยู่บ้าง)

พอวางใจว่าเหรียญที่ฟาร์มไว้จะปลอดภัยได้ระดับนึงล่ะ (อย่างน้อยมันจะขโมยอีกรอบก็ต้องรอปลดฟาร์มกัน 1 วัน) ผมไล่เปลี่ยนรหัสผ่าน ของ Gmail ทุกตัวก่อนแล้วไล่ track ว่ามีการ Login มาจาก ที่ไหนแปลกๆบ้าง

ไล่ดูใน Google Account พบว่ามีการ Login เข้ามาเพิ่ม 2 เครื่องเป็น PC 1 เครื่องและเป็นโทรศัพท์ 1 เครื่อง และทุกเครื่อง … วิ่งออกจาก IP Address ของผมเอง

ดูข้อมูลจาก Binance เทียบช่วงวันที่ 14 Login เข้ามา 2 ครั้งผ่าน Web (ใช้ Firefox) ด้วย IP Address บ้านผมเอง

อันนี้ผมคิดเอาเองน่ะนะว่า ถ้าเครื่องผมไม่โดน backdoor ชุดใหญ่ขนาดว่า remote desktop เข้ามาได้ผมก็น่าจะโดนวางเครื่องเป็น proxy แล้วแหล่ะ คือทุกธุรกรรมที่ออกไปทำรายการถอน … มันมาจาก IP Address บ้านผมเองซะขนาดนั้น

ไม่ต้องไปเถียงอะไรกับ Exchange นะครับไม่โวยวาย จากที่ผมให้เห็นข้อมูลแล้วทาง Exchange ไม่เกี่ยว กรณีนี้คือความผิดพลาดของเราล้วนๆ

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

2FA หลุดไปได้ไง

หลายคนน่าจะแปลกใจว่าผมพลาดได้ยังไงขนาดนี้ว่ามี 2FA แล้ว …จริงๆแล้ว 2FA มันไม่ได้ปลอดภัยขนาดนั้น … ถ้าเราไม่ได้จัดการความปลอดภัยของตัวเองให้ดีพอ ลองดูคลิปที่ผมสาธิตให้ดูครับ

ถ้าเราหลุดโดน backdoor หลุดโดน remote desktop ได้หลุดเข้า gmail ได้ หลุดเพิ่มอุปกรณ์ได้ (อย่างที่เห็นมีการเพิ่ม Google Pixel 3 เข้ามา) ก็คงไม่ต้องแปลกใจล่ะครับว่า 2FA จะหลุดไปได้ยังไง …. เศร้า

มาสำรวจเครื่อง Desktop ต่อโดนอะไรไปบ้าง

ผมทำการปลดสาย LAN ออกแล้วไล่ Scan Virus … ผมเองไม่ได้ใช้ Anti Virus ตัวอื่นๆนะครับผมใช้ของ Microsoft เดิมๆนี่แหล่ะ คือสาย Developer จริงๆแล้วส่วนใหญ่ก็มองว่า Anti Virus เป็นของหนักเครื่องและถ่วงแข้งถ่วงขาในการทำงาน และใช้ของ Microsoft เดิมๆเนี่ยก็เยอะวุ่นวายอยู่แล้ว กด Scan โลด …. แปลกใจแรกล่ะ ทำไม Quick scan มันทำงานเร็วเว่อร์วะ ?? 20 วินาทีเสร็จแล้ว ไม่ใช่ล่ะ แบบนี้

20 วินาทีจริงๆ ไม่เจอ Threat ซักตัวและนี่คือ ความแสบอันต่อมาของ Hacker เพื่อลดความเก่งของ Anti Virus คือทำการเพิ่ม C:\ ลง Exclusions

บางคนอาจจะ งงๆ มันคืออะไรวะ Exclusions มันคือ Option เพิ่มเติมเพื่อให้เราระบุ Folder ที่เราต้องการ ไม่ให้ Anti Virus วิ่งเข้าไปเช็ค ซึ่ง Developer ส่วนใหญ่ก็จะมาใช้ตรงนี้กันเพราะงานบางอย่างเขียนๆไปมันดัน Scan แล้วฟ้องว่าเป็น Threat ซะงั้น

แล้ว Hacker มันแสบใส่ c:\ เข้ามา … นั้นหมายความว่า ไม่ว่าเราจะ Scan อะไรมันก็จะไม่มายุ่งกับ c:\ เลย ยิ่ง Quick Scan เนี่ยกดปุ่ม เสร็จปั๊ปทันที c:\windows system บร้าๆอะไรเราไม่ยุ่งเลย

ตามรูปที่เห็นคือรูปที่ผมลบออกไปบางส่วนแล้วจริงๆมีการ Add folder เข้ามาหลาย Path มากแต่ลืม Save รูปเอาไว้

ผมปรับเป็น Custom Scan แล้วใส่เต็มไปเลย c:\ ให้ Program Scan แล้วแจ้ง Threat ที่เจอออกมาเลยๆ และก็ไปเจอว่า … มีการใช้ powershell ในการเล่นผม และตลอดที่ Scan อยู่ ก็มีการเพิ่ม C:\ ลง Exclusions ตลอดเหมือนกัน สู้ไม่ถอยกันเลย

ไอ้ตัวนี้แหล่ะที่โหดมาก AWM.exe มันไล่ Scan Browser Profile ในเครื่องของเรา ผมเข้าไปเจอ Text File ที่ตัว Tool ตัวนี้ Scan เก็บเอาไว้ (ตัว EXE มันโดนลบไปแล้ว) AWM.txt

เอาเท่าที่โชว์ได้นะครับคือมันเป็น Tool ที่จะวิ่งเข้าไปใน Browser ของเราทุกตัว (ผมลงไว้ 4 ตัวมันก็วิ่งเข้าไปถอด user pass web ออกมาเป็น plain text ให้ใช้งานกันเลย … เยี่ยม

ผมเข้าไปส่องที่ Event Viewer พบว่ามีการเรียกใช้ PowerShell ยับๆ เอาเท่าที่อ่าน Code ออกคือวิ่งไปเอา Script จาก URL Onedrive ตัวนึงมาลงที่เครื่อง แล้วสั่งเรียก Script ตัวนี้ให้ Scan ทั้งเครื่องว่ามีข้อมูลเกี่ยวกับ Crypto อะไรบ้าง อันนี้แหล่ะเด็ด

ตัว VB Script ที่เก็บมาได้เท่าที่ลองแกะดูก็คือเรียก URL ใน onedrive มาลงเครื่อง

และนี่เป็น code จาก onedrive เป็น powershell script เท่าที่อ่านๆ code คือ Hacker จะไปสร้าง folder C:\ABC\ แล้วทำการแตก Process ลูกให้ช่วยกันทำงาน Scan หา File , Folder , รูปภาพ , ใดๆก็ตามที่ตรง Keyword ที่ตั้งเอาไว้

$1extensions = @("*2fa*.png" , "*2fa*.jpg" , "*2fa*.*"   )

$extensions = @("*Bitcoin*", "*atomic*" , "*Binance*" , "*Exodus*" , "*metamask*", "*Ledger Live*", "*Ledger*", "*trezor*","meta*mask")

$extensions = @("*bitkub*", "*satang*"  , "*zipmex*"  , "*tdx*" , "*bitcoin*" , "*coin*" , "*authentication*" , "*bitazza*" , "*authen*" , "*btc*" , "*crypto*", "*binance*"  , "*MetaMask*" , "*nicehash*"  , "*Meta Mask*" , "*gate*io*"  , "*gate.io*")

Get-PSDrive -PSProvider FileSystem | ForEach-Object {Get-ChildItem -Recurse -Path $_.Root -Include *.txt | Where-Object { $_.FullName -notlike "C:\*" } | Select-String -Pattern  "bitkub" , "binance" , "zipmex"} | Out-File "C:\ABC\Text CD runing.txt"

ตัวอย่าง code ที่เอาออกมาให้ดูจะเห็นได้คร่าวๆเลยว่า Scan ชื่อรูปที่มีคำว่า 2fa อยู่ Scan หา keyword ที่เกี่ยวกับ Crypto ต่างๆออกมา

และเหมือนจะเป้าหมายเป็น Exchange ของไทยซะด้วย bitkub , satang , zipmex

แต่ผมก็ไม่ปักใจนะครับว่าเป็นคนไทย เพราะ ปกติ Hacker จะรู้อยู่แล้วว่าเค้าเข้าเครื่องไหน IP Address ของประเทศอะไร เค้าก็อาจจะเลือก Tool ที่เหมาะสมกับเป้าหมายได้ครับ

และนี่ก็คือ Folder ABC ที่ผม save ออกมาได้ ขออนุญาตไม่เปิดให้ดูนะครับแค่นี้ก็ช้ำใจล่ะ

แล้วผมโดน Backdoor โหดขนาดนี้ได้ยังไง ??

หลังจากทำใจกับความสูญเสียได้แล้วผมมองว่า มันคงเป็นความสะเพร่าของผมเองแหล่ะ เดิมจริงๆผมใช้ Thinkpad เป็นเครื่องหลักในการทำงาน ผมมี Desktop เอาไว้ทำงานอะไรที่มันต้องหนักๆเครื่อง เครื่องนี้ผมเองก็ลง Windows 11 Pro insider ไว้คือ เอาไว้ทดลองจริงๆ คือ พร้อมพัง

ทั้งเครื่องส่วนใหญ่ใช้ Software ลิขสิทธิ์ทั้งหมดครับ Windows แท้ , Office แท้ แต่ผมก็ยอมรับว่าเครื่องนี้ไม่ได้ขาวสะอาด เพราะงานระยะหลังผมต้องมีลอง Test พวกมือถือ ต้องลง Software Unlock ต่างๆ ลองไปเรื่อย ถ้าตัวไหนใช้ได้ก็ค่อยซื้อ

ผมเชื่อว่ามีความเป็นไปได้ว่าโดนวาง Backdoor จาก Software เทาๆเหล่านี้แหล่ะ ณ วันที่เราติดตั้งมันไม่ออกอาการอะไรหรอก ใช้งานได้ปกติ ปล่อยให้เราตายใจ แล้วค่อยหาวันที่เราเผลอจริงๆ

ผมรวบรวมความผิดพลาดและสะเพร่าของผมไว้ดังนี้

  • ไม่เช็คเครื่องทันทีที่มีปัญหาคือก่อนหน้านี้เครื่องนี้มันมีอาการว่าผมสั่ง Shutdown แล้วมันไม่ Shutdown มันเหมือนแค่ทำการ Logout ออกแล้วรออยู่หน้า Login ให้เรากรอกรหัส คือผมเข้าใจว่า เพราะมันเอ๋อๆจากการเป็น insider ล่ะมั้งเลยไม่ได้สนใจ
  • เผลอเปิดเครื่องทิ้งไว้ คือปกติผมจะไม่เปิดเครื่องทิ้งไว้ถ้าผมไม่ได้อยู่หน้าเครื่องตลอดเวลา พอดีวันนั้นง่วงมากผมปล่อยให้ Windows Update ทำงานแล้วไปนอนกะว่าปล่อยให้เครื่องมัน Update ไป ถ้ามันไม่ Shutdown เดี๋ยวเราค่อย Chrome Remote Desktop เข้ามาปิดเครื่องก็ได้ … แต่ความจริงคือ ลืมปิดปล่อยเครื่อง Online ไว้อย่างนั้นจนพวก Backdoor มาทำงาน
  • ผมพลาดที่เอา 2FA ผูกไว้กับ Cloud sync จริงๆเรื่องนี้ใน forum เมืองนอกถึงขั้นด่า Google เลยนะ คือจริงๆผมก็เข้าใจนะว่ามันไม่ปลอดภัย พอ App โดน Update แล้วมี Cloud sync เพิ่มเข้ามา … ก็กดใช้งานโดยไม่ได้คิดถึงความปลอดภัยเลย ก็ google น่ะเนอะ เค้าไม่หลุดไม่ผิดพลาดหรอก … ใช่ เค้าไม่หลุดแต่เรานี่แหล่ะหลุด
  • ผมพลาดที่คิดว่าเครื่อง Desktop ตัวนี้เป็นเครื่องพร้อมพัง จะโดนถล่มจะโดนเจาะอะไรก็ได้มันคงไม่มีปัญหาหรอก แต่จริงๆ ผมดันผูกทุกอย่างไว้ที่ Google Account ซึ่งมันก็ใช้งานอยู่ในเครื่องนี้ด้วย และทำให้ความเสียหายขึ้น … เพราะตัวผมเอง

ขอบคุณที่ยังปราณี

บทเรียนครั้งนี้ราคา $463 หลังจากเห็นหลักฐานที่โดน Backdoor ไป … อย่างน้อยผมก็รู้สึก “ขอบคุณคุณ Hacker” ที่ไม่ทำอะไรไปมากกว่าการขโมย Wallet ใน Binance

  • ถ้า Hacker เข้าไปยึด domain ใน godaddy ล่ะ domain ของผมและลูกค้าอีกหลายตัวที่อยู่ในนั้นล่ะ ?
  • ถ้า Hacker เข้าไป cloudflare สั่งเปลี่ยน config ต่างๆในการตั้งค่าล่ะ ผมจะปวดหัวกับเรื่อง Web ล่มอีกเท่าไร
  • ถ้า Hacker เข้า Web Server ที่ผมดูแลอยู่แล้วไปวาง ransomware ไว้ใน Website แล้วเรียกค่าไถ่ล่ะผมจะฉิบหายขนาดไหน

ความสำคัญของข้อมูลพวกนี้สำคัญกว่า Wallet ที่โดนขโมยเยอะ ขอบคุณมากครับที่ไม่จัดหนักกว่านี้

เรียนรู้จากความผิดพลาดเป็นบทเรียนแล้วเริ่มใหม่

  • เก็บ 2FA แบบ Offline ทำการ Backup เก็บไว้ใน Device ที่ Offline เสมอ อย่าเอา 2FA เข้า Cloud ใดๆเด็ดขาด
  • อย่าตั้งให้จำ user pass ของพวก Exchange ไว้ใน Browser ถ้ากลัวจำไม่ได้จริงๆ ให้เก็บด้วย App เข้ารหัสเอาไว้ใน Device ที่ Offline
  • ถ้าจะ Set เครื่องเอาไว้ทดลองใดๆ ให้แน่ใจว่าไม่มีข้อมูลอะไรสำคัญที่ผูกอยู่กับเรา ให้เป็นเครื่อง Test จริงๆ
  • คิดออกแค่นี้เดี๋ยวคิดอะไรออกมาเขียนเพิ่ม

เครื่องนี้หลังจากเช็คทุกอย่างเก็บข้อมูลได้หมดแล้ว ก็อย่าไปวางใจใช้ต่อครับครับ ยกออกมาเป่าฝุ่น 1 รอบแล้ว Format ทิ้งลง Windows ใหม่ครับ Clear ทุกอย่างให้จบๆไป

ขอให้บทเรียนของผมเป็นประโยชน์กับคนที่ได้เข้ามาอ่านนะครับ ใครอยากได้ Code ที่ผมโดนไปศึกษาทักมาใน Line หรือ FB ได้เลย ใครจะเอาไปเผยแพร่ต่อขอให้อ่านจนเข้าใจก่อนนะอย่าเอาไปเผยแพร่แบบผิดๆ เดี๋ยวจะตื่นตูมไปกันใหญ่

ขอบคุณครับ

ปล. บทเรียนครั้งนี้ทำกระเป๋าแบนเลยครับ 🙂 ใครมีงานอะไรส่งมาได้เลยครับ ทำเวบ ทำคอม ทำระบบ Home Automate ทำซ่อมแต่งดัดแปลงมอไซด์ไฟฟ้า ทำ Rig ขุดการ์ดจอ ทำ Rig ขุดมือถือ จัดการให้ได้หมดครับผม