พักหลังนี้เราพาไปรู้จักช่องทางการขโมยข้อมูลจากมือถือแล้วหลายต่อหลายรูปแบบ วันนี้ขอพามารู้จักอีกสักรูปแบบนึงที่คนไทยน่าจะไม่ค่อยคุ้นหูกันอย่าง Juice Jacking หรือวิธีการขโมยข้อมูลผ่าน "ที่ชาร์จมือถือในตามที่สาธารณะ" กันขอรับกระพ้ม
ที่ไม่ค่อยคุ้นเพราะเมืองไทยไม่ค่อยมีที่ชาร์จสาธารณะเท่าไหร่มั้ง ^^" แต่ก็พอมีอยู่บ้างนะ เคยเห็นอยู่ๆ
รู้หรือไม่ว่า แค่เราเสียบมือถือเข้าสายชาร์จที่ไม่รู้จักและจิ้มอะไรบนจอแค่เพียงจึกเดียว ข้อมูลสำคัญๆของคุณก็ไปสู่มือโจรได้อย่างง่ายดายทันที!!
มาทำความรู้จักมันกัน จะได้รู้จักภัยชนิดนี้และจะได้ไม่หลงกลโจรกันนะ =)
การติดต่อระหว่างคอมพ์และมือถือผ่าน USB
เชื่อว่าคนที่ใช้ Smartphone ทุกคนน่าจะเคยต่อมือถือกับคอมพ์เพื่อทำโน่นนี่เช่นลงโปรแกรมหรือดูดภาพลงมาเก็บในคอมพ์ หรือถ้าใครโหดๆหน่อยก็ทำผ่าน Command Line เลย ลงแอป รูธเครื่อง ทำอะไรได้หมด
พื้นฐานของ Juice Jacking ก็คือเรื่องนี้นี่แหละ
อ้าว แล้วคอมพ์มันเกี่ยวยังไง?
ก็ง่ายๆ เนียนสิจ๊ะ ... วางคอมพ์ไว้เลยเครื่องนึง(สมัยนี้คอมพ์ขนาดเท่าฝ่ามือก็มีขายอยู่ถมไป)แล้วก็ต่อสาย USB ออกมาให้เห็นแค่ปลายสาย และขึ้นป้ายล่อเหยื่อว่า "สายชาร์จฟรีจากภาษีประชาชน" อะไรก็ว่าไป
และใช้ประโยชน์จากที่พอเราเสียบมือถือปุ๊บ คอมพ์จะเจอเป็นอุปกรณ์ที่สามารถเข้าถึงรูปได้ทันทีโดยไม่ต้องขออะไรเลย! (จะเป็นการต่อโหมด MTP/PTP) แล้วก็เขียนโปรแกรมดักว่าถ้ามีมือถือเสียบปุ๊บ ให้ก็อปไฟล์ทั้งหมดลงคอมพ์นะ มาดูวีดีโอเลยละกัน เราแอบทำไว้เล่นๆแต่ใช้ได้จริงๆ ... ทำไปเพื่อการศึกษาล้วนๆ สัญญาว่าจะไม่เอาไปใช้จริงที่ไหน และก็ไม่ต้องมาขอ Source ด้วย ไม่ให้ ...
เป็นไง ตื่นเต้นมั้ย ... ก็ทำให้ดูละนะว่าไม่ใช่แค่ทฤษฎี ทำได้จริงจ่ะ เครื่องไม่ต้องเคยเสียบมาก่อน ไม่ต้องกดอะไรทิ้งสิ้น เสียบปุ๊บรอแป๊บโดนดูดป๊าบบบ
แต่ทั้งนี้ทั้งนั้น รอมบางตัวก็มีการกันตรงนี้ไว้ ให้ต้องกด Trust ก่อนอะไรแบบนี้ ก็โชคดีไปครับ =)
กรณีนี้ค่อนข้างน่ากลัวอยู่เพราะสามารถเข้าถึงไฟล์ในเครื่องได้ทั้งหมดโดยที่ผู้ใช้ไม่รับรู้อะไรทั้งสิ้นเลย เสียบปุ๊บถ้าเงื่อนไขได้ (เครื่องปลดล็อคหน้าจอและเชื่อมต่อด้วยโหมด MTP/PTP) คอมพ์ก็จะเข้าถึงข้อมูลได้ปั๊บ
ที่ทำนี่เป็นตัวอย่างของทางแอนดรอยด์ แล้ว iOS หละเป็นไงบ้าง?
iOS ก็โดนได้เช่นกันแต่ปลอดภัยกว่า
ของ iOS ก็โดนครับ เพราะสามารถโอนย้ายไฟล์ผ่านโปรโตคอลมาตรฐานเช่นกัน (PTP)
แต่ที่ปลอดภัยกว่าแอนดรอยด์ในกรณีทั่วไปก็เพราะเวลาเราเสียบปุ๊บ คอมพ์จะเข้าถึงไฟล์ในเครื่องเลยไม่ได้ ต้องกด Trust จากตัวเครื่องมือถือก่อน
แต่ถ้ากด Trust แล้ว ก็แปลว่าเราอนุญาตให้คอมพ์เข้าถึงไฟล์ต่างๆได้แล้ว ก็เสร็จโจรสิ ..
ดังนั้นคำเตือนครับ ... เค้าอุตส่าห์ทำมาแล้ว ... อย่ากด Trust มั่วซั่วเป็นอันขาดดดดดดดดดดดด ถ้ามันขึ้นมาโดยเราไม่รู้ว่าเกิดอะไรขึ้น ก็กด Don't Trust ไปเลยครับ
การเข้าถึงระดับขั้นที่สองผ่าน Debugging Bridge
การเข้าถึงระดับขั้นแรกผ่านไปแล้วคือเสียบปุ๊บเข้าถึงได้ปั๊บ จะวางไฟล์หรือจะดูดไฟล์อะไรก็ตามสะดวก แต่ก็จะทำได้แค่อ่าน/เขียนไฟล์
แต่ยังมีการเข้าถึงอีกระดับขั้น อันนี้สำหรับแอนดรอยด์โดยเฉพาะคือการเข้าถึงผ่าน USB Debugging หรือ adb
ใครชอบเล่นโน่นเล่นนี่กับแอนดรอยด์น่าจะเคยได้ยินบ่อยกับคำว่า adb แท้จริงแล้วมันคือช่องทางสำหรับนักพัฒนาที่เปิดไว้ Debug และทำอะไรแปลกๆได้ ตั้งแต่เข้าถึงไฟล์ ลงแอปยันสั่งรันแอปเลย
ขั้นที่สองนี้ถือว่าน่ากลัวกว่าขั้นแรกอีกจากการที่มันสามารถฝังแอปลงเครื่องเราได้นั่นเอง หากผู้ใช้ไม่เอะใจก็อยู่กันไปยาวๆหละทีนี้ และด้วยเหตุนี้ การจะเข้าสู่ขั้นทีสองได้ก็เลยจะลำบากหน่อยนึงคือ
1) ต้องเปิด USB Debugging ก่อน ซึ่งถึงจะฟังดูปลอดภัยแต่ ... เปิดกันไปครึ่งโลกและ ทั้งที่รู้ตัวหรือไม่รู้ตัว็ก็ตาม -_- ...
2) ถ้าเปิดแล้วและมีการเสียบ USB แอนดรอยด์ก็จะมี Dialog ขึ้นมาถามว่า "คุณจะอนุญาตให้อุปกรณ์บลาๆๆๆๆ Debug มือถือเครื่องนี้มั้ย?" ซึ่ง ... สำหรับผู้ใช้แล้ว ... มันหมายความว่าอะไรฟระ? Geek ชิบเป๋ง และนั่นแหละ คนส่วนใหญ่ก็เลยไม่สนใจและกดมั่วๆไป ต่างจากของ iOS ที่ขึ้นชัดเจนมากว่า Trust หรือไม่
จะบอกว่านี่เป็นปราการด่านสุดท้ายเลยจริงๆ ถ้าอยู่ดีๆเอาไปเสียบ USB ที่ไหนไม่รู้แล้วขึ้นแบบนี้มา ห้ามกดตกลงเป็นอันขาดดดดดดดดดดด เพราะทันทีที่กด คุณก็จะเสร็จโจรทันที
อ่ะ เอาวีดีโอเดโมมาให้ดูว่าถ้ากดแล้วเกิดอะไรขึ้นบ้าง โดยในตัวนี้อย่างนี้เนยแอบลอกแอป Facebook มาให้หน้าตาเหมือนเปี๊ยบทุกประการแต่ทำไว้แค่หน้า Login
พอเหยื่อเสียบสายและกด Allow USB Debugging คอมพ์ที่เนยเตรียมไว้ก็จะทำการลบแอป Facebook ทิ้งและลงตัวปลอมไปแทน พอเหยื่อพยายาม Login ใหม่ ก็จะส่ง Username/Password มาให้ผู้ไม่หวังดีนั่นเอง (เทคนิคนี้เรียกว่า Phishing)
ซึ่งอันตรายโพดๆๆๆเลยจริงๆ โจรในคราบนักพัฒนาจะทำอะไรก็ได้เลยอ่ะ ไม่ใช่แค่ที่เดโม เช่น ดูดข้อมูลทุกอย่างในมือถือคุณมาเก็บไว้ หรือจะทำแอปเพื่อติดตามคุณถึงบ้านเลยก็ยังได้ คือว่าอันนี้อันตรายอยู่ในระดับที่ไม่สามารถลิมิตได้เลย ระวังไว้ครับ ขั้นที่สองนี่แหละที่อันตรายจริงๆและเจาะง่ายมากด้วย
แนวทางป้องกัน Juice Jacking สำหรับผู้ใช้
คงเข้าใจหลักการทำงานแล้วหละเนอะ เราจะใช้มือถือฉลาดเราก็ต้องฉลาดตามมือถือ แนวทางการป้องกันโดน Juice Jacking คือ
1) ห้ามเสียบสายมั่วซั่วเป็นอันขาด - อันนี้ป้องกันได้อย่างเฉียบขาดที่สุด ... อย่างที่บอก เสียบปุ๊บโดนดูดปั๊บเลย ไม่มีทางรู้ตัวเลยนะ
2) พก Power Bank หรือที่ชาร์จของตัวเอง - ก็ถ้ารู้ว่าแบตหมดไว ก็พก Power Bank ส่วนตัว จะได้ไม่มีปัญหา อันนั้นปลอดภัยชัวร์
3) ถ้าจำเป็นต้องเสียบจริงๆ ต้องให้แน่ใจว่าสายที่เสียบต้องโดนตัดเส้นการรับ-ส่งข้อมูลไปแล้ว โดยปกติ USB จะมีอยู่ 4 pins ด้วยกัน เป็นไฟเลี้ยงและ GND สองพิน อีกสองเป็นสายรับส่งข้อมูล ซึ่งหากตัดสายที่ว่านี้ทิ้งไป ก็จะไม่สามารถรับส่งข้อมูลได้แล้ว แต่ยังชาร์จไฟได้อยู่
แต่จะรู้ได้ไงหละว่าสายโดนตัดสองเส้นนี้ไปรึเปล่า? คำตอบคือ ถ้าเป็นสายที่เค้าห้อยออกมาจากกำแพง เราไม่มีทางรู้ครับ ...
ดังนั้นก็เลยต้องพกอุปกรณ์พิเศษจำพวก USB Condom ... ฟังไม่ผิด นั่นแหละครับ ที่แปลว่าถุงยางนั่นแหละ เอาไว้ป้องกันโรคทางยูเอสบีสัมพันธ์ ตัวนึงที่ดังพอสมควรมีชื่อว่า Umbrella USB ที่เปิด Crowdfunding ใน Kickstarter มาได้เยอะอยู่
เวลาเสียบก็เสียบผ่านตัวนี้ แล้วข้อมูลใดๆก็จะไม่สามารถรับส่งกับคอมพ์ได้แล้วครับ
ซื้อพกติดตัวไว้สักอันก็ดีเน้อ เพื่อความมั่นใจ ! อันนี้รับรองว่าโจรเก่งแค่ไหนก็หงายเก๋ง
หรือถ้าเราสามารถเสียบสายด้วยตัวเองได้ (ยกตัวอย่างเช่นที่ชาร์จบนเครื่องบิน) ก็แนะนำให้หาสาย USB สำหรับชาร์จโดยเฉพาะซึ่งถูกตัดเส้นรับส่งข้อมูลไปแล้ว วิธีทดสอบคือลองเสียบกับคอมพ์ตัวเองแล้วมันไม่ขึ้นว่าเจอเครื่องหรือ Sync ข้อมูลไม่ได้ นั่นแหละครับ
สำหรับ iOS ก็อาจจะหาง่ายหน่อย สายปลอมก็ Sync ข้อมูลไม่ได้ละ ... ฟีเจอร์ ...
4) ล็อคจอ - การล็อคจอจะพอช่วยได้นิดหน่อยคือพวกโหมด MTP, PTP ที่เอาไว้รับส่งข้อมูลจะโดนตัดไป มองเห็น Device แต่มองไม่เห็นไฟล์ข้างใน แต่โอกาสพลาดก็มีเสมอแหละ เผลอปลดล็อคจอไรงี้ ดังนั้น ... อย่าเสี่ยงด้วยวิธีนี้เลย
5) โหมด Charge Only - รอมแอนดรอยด์หลายๆตัวมีโหมด Charge Only อันนั้นก็จะป้องกันการติดต่อได้เช่นกันครับ
6) ห้ามกด Trust Computer ใดๆมั่วซั่วเป็นอันขาด - สำหรับ iOS ผมว่าเค้าออกแบบมาได้เป็นมิตรต่อผู้ใช้ที่สุดละ คำว่า Trust ตัวโตๆมันกระชากใจให้คิดก่อนกดดี ดังนั้นถ้าอยู่ในสถานะที่มันอยู่ดีๆขึ้นมาโดยเราไม่รู้ว่าเกิดอะไรขึ้น ก็กด Don't Trust ไปโลด
ก็หวังว่าจะมีประโยชน์กับทุกท่านนะคร้าบ
สวัสดีก๊ะ