ในทุกวันนี้ต้องยอมรับครับว่ามีแอปพลิเคชันใหม่ๆเกิดขึ้นบน Play Store เยอะขึ้นมากในแต่ละวัน และก็มีอยู่บ่อยๆที่เป็นแอปพลิเคชันใหม่มาแรงเป็นกระแสฮิตในบางช่วงหรือผู้ใช้บางกลุ่ม
แต่เราเคยสงสัยกันมั้ยว่าแอปพลิเคชันแต่ละตัวนั้นมีความปลอดภัยมากน้อยแค่ไหน? ดังนั้นผมจึงอยากจะแชร์ประสบการณ์เกี่ยวกับความปลอดภัยของแอปพลิเคชันแอนดรอยด์ในมุมมองของนักพัฒนากันบ้าง
ติดตั้ง Antivirus ไว้ในเครื่องสิ
แต่ว่ามันจะช่วยได้จริงๆหรือป่าว?
ผมเชื่อว่าหลายๆคนที่เคยใช้แอปพวกนี้ก็จะพบว่ามันก็มีการแจ้งเตือนแอปที่ไม่ปลอดภัยนะ แต่บ่อยครั้งมันก็ทำให้รำคาญซะมากกว่า และทำให้เครื่องทำงานได้ช้าลง ซึ่งการทำงานของ Antivirus บนแอนดรอยด์นั้นไม่ได้เหมือนกับบน Windows ที่จะสั่งให้สแกนไฟล์ทุกไฟล์ในเครื่องเพื่อหาว่าไฟล์ไหนอันตราย
เพราะระบบของแอนดรอยด์ (ที่ไม่ได้รูท) จะไม่ยอมให้แอปไปยุ่งกับข้อมูลหรือการทำงานแอปตัวอื่นๆโดยตรงอยู่แล้ว หรือจะไปดักข้อมูลที่รับส่งผ่านอินเตอร์เน็ตมันก็ทำไม่ได้ (เพราะถ้ามันทำได้ ผมว่า Antivirus ตัวนั้นแหละที่น่ากลัวกว่า)
ถ้าลองเปลี่ยนจากมุมมองผู้ใช้แอนดรอยด์มาเป็นนักพัฒนาแอนดรอยด์ด้านมืด อยู่ๆวันหนึ่งผมเกิดอยากจะสร้างแอปที่อันตรายขึ้นมาซักตัว ผมก็จะสร้างแอปดักข้อมูลผู้ใช้งานเป็นหลัก เพราะว่ามันตรวจสอบยากและไม่ทำให้เกิดอันตรายกับระบบและผู้ใช้งานโดยตรง ดังนั้นกว่าจะตรวจพบจึงไม่ใช่เรื่องง่าย (หรือตรวจสอบไม่เจอด้วยซ้ำ)
เพราะทุกวันนี้แอปที่อันตรายส่วนใหญ่จะเป็นพวกแอปแอบดักข้อมูลแล้วส่งกลับไปที่เซิฟเวอร์ของนักพัฒนา ถ้ายังเคยจำได้ในกรณีของพี่เนย NuuNeoi ที่เคยทำวีดีโอเกี่ยวกับแอปดักข้อมูลผู้ใช้ว่ามันทำกันได้ง่ายแค่ไหน และเป็นวิธีที่ Simple มากๆ
และที่ผมชอบสุดเกี่ยวกับ Antivirus คือแอปตัวหนึ่งที่หลอกว่าตัวเองเป็น Antivirus ที่ทำงานเร็วและปลอดภัย และอยู่ในอันดับท็อปของหน้าดาวน์โหลด จนโดนนักพัฒนาคุ้ยโค๊ดออกมาดูก็พบว่าแอปตัวนี้ไม่ได้ทำอะไรเลย (และแอปนี้ตัวขายจนทำเงินไปได้มากพอสมควร ก่อนที่จะโดนแบนออกไป)
ก็ดู Permission ทุกครั้งก่อนติดตั้งสิ
หลายๆคนก็ใช้วิธีนี้ก่อนที่จะติดตั้งแอปใหม่ๆทุกครั้ง แต่สิ่งที่ผู้ใช้หลายๆคนยังไม่รู้คือ Permission ที่แสดงให้ผู้ใช้เห็นนั้นมันคลุมเครือมาก เพราะ Permission หนึ่งตัว ถ้าคิดในแง่ร้าย มันก็จะกลายเป็นแอปที่อันตรายมากๆ แต่ถ้าคิดในแง่ดีมันก็จะเป็นแอปธรรมดาที่ไม่มีอันตรายอะไร แต่แท้จริงแล้วเอาไปใช้งานอย่างไรบ้าง ผู้ใช้ก็ไม่มีทางรู้เลย
ถ้ายังจำกันได้เคยมีกรณีที่สมาชิกรายหนึ่งในพันทิปที่เกิดความระแวงกับแอป Messenger ของ Facebook จนเกินเหตุ เพียงเพราะขอ Permission เยอะจนเกินไป ซึ่งในความเป็นจริงแล้ว Permission ที่แอปตัวนั้นใช้มันก็ไม่ได้น่าสงสัยอะไร การขอ Permission เยอะๆบนแอนดรอยด์นั้นมันอันตรายจริงๆหรือ? [Case Study จาก Pantip]
เพราะนักพัฒนาทุกคนนั้นรู้ดีครับว่าเวลาที่ขอ Permission ทีไร มันโคตรจะคลุมเครือมากๆ ถ้าผมอยากจะทำแอปกล้องซักตัว ผมก็ต้องขอ Permission สำหรับกล้อง แต่ในขณะเดียวกันถ้าผมจะเขียนให้กล้องแอบถ่ายในเวลาที่ผู้ใช้ไม่รู้ตัว ก็ย่อมทำได้เช่นกัน
เช่นเดียวกับกรณีล่าสุดของแอป MakeupPlus ที่โหลดไปเล่นแต่งภาพกันสนุกสนาน ซึ่งก็มีผู้ใช้หลายๆคนที่แอบสงสัยเรื่อง Permission เหมือนกันว่าทำไมขออะไรเยอะแยะ แต่เมื่อลองแงะไฟล์ออกมาดูจริงๆแล้วก็พบว่า Permission แต่ละตัวที่ขอนั้นก็ไม่ได้มีอะไรน่าเป็นห่วง เป็นเรื่องธรรมดาของแอปหนึ่งตัวที่จะขอ Permission แบบนี้
แต่จนสุดท้ายก็มีนักพัฒนาที่ลองแงะโค๊ดออกมาดูและดักข้อมูลที่ส่งออกมา (ก็พี่เนยอีกนั่นแหละ) จนพบว่าแอปตัวนี้มีการอัปโหลดรูปภาพก่อนจะแต่งเก็บไว้ที่ Cloud Storage Server ของจีน จนเป็นข่าวใหญ่ขึ้นมา ซึ่งกรณีนี้ทำให้เห็นได้ชัดเลยว่าการดูแค่ Permission ไม่ได้บอกอะไรซักเท่าไรเลย เพราะสิ่งที่ตัวแอปขอตอนแอบอัปโหลดภาพไปเก็บไว้ก็จะมีแค่ Internet Permission เท่านั้นเอง
สำหรับรายละเอียดของแอปตัวนี้อ่านต่อกันได้ที่ กรณีศึกษา แอพฯ MakeupPlus กับการแอบอัพโหลดภาพขึ้น Cloud จีน
การทำแอปแบบนี้ซักตัวมันยากแค่ไหน?
เนื่องจากเรื่องความปลอดภัยจากแอปพลิเคชันเป็นเรื่องน่าสนใจ ที่ผู้ใช้ทั่วไปรู้ตัวได้ยาก และทุกสิ่งอย่างก็ขึ้นอยู่กับจรรยาบรรณของนักพัฒนาเท่านั้น ดังนั้นผมจึงลองนั่งเขียนแอปตัวอย่างขึ้นมาอีกตัวหนึ่งดูบ้าง เพื่อเป็นอีกหนึ่งกรณีศึกษาว่ามันทำไม่ยากจริงๆนะ
ผมก็เลยลองเขียนแอปคีย์บอร์ดแบบง่ายๆขึ้นมา โดยโค๊ดส่วนใหญ่เอามาจากอินเตอร์เน็ตแล้วมาเขียนเพิ่มเติมเล็กน้อยเพื่อให้บรรลุเป้าหมายด้านมืด จึงได้ออกมาเป็นแอปแบบในวีดีโอตัวนี้
เริ่มดูน่ากลัวขึ้นมาแล้วเนอะ? เพราะว่าในแอปตัวอย่างนี้มีการขอแค่ Internet Permission ตัวเดียวเท่านั้น และสามารถดักข้อมูลได้แทบทั้งหมดที่เราพิมพ์ผ่านคีย์บอร์ดตัวนี้เลย และถ้าดูดีๆจะมีการดึง Device ID ไปเก็บไว้ด้วยนะเออ แต่กลับไม่ต้องขอ Permission อะไรเลย
ขอ Internet Permission กันโต้งๆแบบนี้คิดว่าผู้ใช้จะไม่รู้หรอ?
ไม่รู้หรอกครับ ถ้าผมเขียนฟีเจอร์เพิ่มเข้าไปอย่างเช่นเปลี่ยนธีมเปลี่ยนสีคีย์บอร์ดได้ โดยที่ธีมนั้นจะต้องดาวน์โหลดจากอินเตอร์เน็ต เพียงเท่านี้แอปของผมก็มีเหตุผลในการขอใช้งานอินเตอร์เน็ตแล้วล่ะ
ถ้าดักข้อมูลที่ส่งไปบนอินเตอร์เน็ตก็รู้แล้วนี่?
ถูกต้องนะคร้าบ แต่จะเกิดอะไรขึ้นถ้าผมยังไม่ใส่โค๊ดดักข้อมูลลงไปล่ะ? ก็ตรวจสอบแล้วไม่เจออะไรใช่มั้ยล่ะ? แล้วผมก็รอเวลาผ่านไปประมาณหนึ่งจนมีคนใช้แอปมากพอสมควร ผมก็ค่อยใส่โค๊ดดักข้อมูลเข้าไปทีหลังก็ยังได้ (แล้วทำเนียนเป็นอัปเดตแก้บั๊กอะไรทำนองนี้) ดังนั้นแอป MakeupPlus จะแอบใส่โค๊ดเก็บภาพถ่ายผู้ใช้ส่งขึ้นเซิฟเวอร์ใหม่ก็ทำได้เช่นกัน ถึงแม้ว่าจะเอาออกไปก่อนหน้านี้แล้วเพราะโดนจับได้
เพิ่มเติม – แต่ที่แน่ๆคือแอป ManMan Keyboard ของนักพัฒนาคนไทยปลอดภัยนะจ๊ะ ไม่ต้องตกใจกลัวเกินไปล่ะ
แต่แอนดรอยด์บางรุ่นบางยี่ห้อก็กำหนดการเข้าถึง Permission ได้นะ
ถ้าใครใช้แอนดรอยด์ที่เป็นยี่ห้อของจีน ก็จะเห็นว่าหลายๆยี่ห้อก็ได้ใส่ฟีเจอร์จำกัด Permission ให้กับแต่ละแอปได้มานานแล้ว (เหมือนเค้ารู้อยู่แล้วว่ามันไม่ปลอดภัย ฮาๆ) โดยเฉพาะ Xiaomi ที่มีฟีเจอร์นี้มาตั้งแต่แรก และ Huawei กับ Oppo ก็มีแล้วเช่นกัน จึงทำให้เลือกได้ว่าอยากให้แอปนั้นๆเข้าถึง Permission ตัวไหนบ้าง หรือบางยี่ห้อก็กำหนดเลยว่าแอปตัวไหนใช้งานอินเตอร์เน็ตได้/ไม่ได้บ้าง
ในกรณีของ Android 6.0 ก็พึ่งได้เพิ่มฟีเจอร์นี้เข้ามา และจะแสดงหน้าต่างขออนุญาตทุกครั้งก่อนจะใช้งาน Permission แต่ละตัว จึงทำให้ปลอดภัยมากขึ้น แต่ทว่าก็ยังมีจุดด้อยตรงที่ Internet Permission ถูกมองข้ามไป ไม่แสดงให้เห็นในข้อมูลของแอปแต่ละตัว และตั้งค่าห้ามให้แอปใช้อินเตอร์เน็ตไม่ได้ แต่อย่างน้อยก็แสดงการใช้งานอินเตอร์เน็ตให้เห็นอยู่บ้าง
ภาพตัวอย่างของแอปดักคีย์บอร์ดที่ผมเขียนขึ้น
และถึงแม้ว่าจะปิดไม่ให้ใช้อินเตอร์เน็ตได้ แต่ถ้าแอปตัวไหนมีฟีเจอร์หรือลูกเล่นที่ต้องต่อกับอินเตอร์เน็ต สุดท้ายแล้วผู้ใช้ก็จะต้องยอมอยู่ดี
อันตรายแบบนี้เปลี่ยนไปใช้ iOS หรือ Windows Phone ดีกว่า
ถึงจุดนี้แล้วผู้ใช้แอนดรอยด์หลายๆคนคงคิดกันแบบนี้กัน แต่ก็อย่าลืมว่าวิธีดักข้อมูลที่ยกตัวอย่างขึ้นมาเหล่านี้ ก็ยังคงสามารถใช้งานได้บน iOS และ Windows Phone เหมือนอย่างกรณีของ MakeupPlus ที่บน iOS ก็โดนเอารูปไปเช่นกัน แต่เป็นข่าวดีสำหรับ Windows Phone คือไม่เจอปัญหานี้ เพราะว่านักพัฒนาเค้าไม่ทำแอปนี้บน Windows Phone (จะเรียกว่าข่าวดีมั้ยนี่…)
แต่กรณีของ iOS กับ 3rd-party Keyboard ที่พึ่งจะมีได้ไม่นาน จึงทำให้ดูหวั่นๆพอสมควรว่าจะไม่ปลอดภัย แต่อย่างน้อยของ iOS ก็ออกแบบมาว่าเวลาพิมพ์พวกรหัสผ่านจะเปลี่ยนไปเป็นคีย์บอร์ดของระบบให้อัตโนมัติ ส่วนของ Windows Phone เปลี่ยนคีย์บอร์ดไม่ได้จึงทำให้หายห่วง
และถ้าบอกว่า OS ตัวไหนปลอดภัยน้อยสุดก็คงต้องบอกว่าเป็นแอนดรอยด์นี่แหละครับ เพราะเปิดกว้างมากแม้กระทั่งให้ผู้ใช้ทั่วไปเอา APK มาลงเองได้ ซึ่งมันก็ทำให้มีทั้งข้อดีและข้อเสียทั้งคู่
แล้วผู้ใช้จะมีวิธีไหนในการตรวจสอบด้วยตัวเองมั้ย?
ในเมื่อ Antivirus ก็ตรวจสอบไม่ได้ทั้งหมด และการดู Permission ก่อนติดตั้งก็ทำอะไรได้ไม่มาก ก็คงไม่เหลือวิธีไหนแล้วล่ะที่ผู้ใช้ทั่วไปจะตรวจสอบได้ด้วยตัวเอง เพราะวิธีที่ใช้ตรวจสอบกันก็จะเป็นการดักข้อมูลที่ส่งออกมาหรือ Decompile แอปตัวนั้นแล้วมานั่งดูโค๊ดกันอีกที ซึ่งบอกเลยว่าดูยากมากและต้องใช้ประสบการณ์มากพอสมควร (คือการจะดักโจรได้ก็ต้องคิดแบบโจรให้ได้ก่อนน่ะนะ)
และในทุกวันนี้ก็มีกลุ่มนักพัฒนากลุ่มหนึ่งที่คอยตรวจสอบการทำงานของแอปแอนดรอยด์และคอยเปิดโปงแอบที่ลักลอบทำอะไรผิดๆอยู่แล้ว ดังนั้นผู้ใช้งานทั่วจึงไม่จำเป็นต้องมานั่งแงะโค๊ดไล่สอดส่องเอง
สรุปว่าแอปในทุกวันนี้มันไม่ปลอดภัย?
ผมก็ไม่อยากให้เหมารวมแบบนั้นนะครับ เพราะไม่งั้นเราก็จะกลายเป็นกระต่ายตื่นตูมไปซะหมด เพราะยังมีแอปดีๆอีกหลายแอปที่ปลอดภัยให้ได้ใช้งานกัน ทั้งนี้ก็ขึ้นอยู่กับจรรยาบรรณของนักพัฒนาเป็นหลักเลย ว่าสร้างแอปนั้นขึ้นมาเพื่ออะไร และหวังผลประโยชน์อะไรจากผู้ใช้งาน ดังนั้นสิ่งที่สำคัญสำหรับผู้ใช้ก็คือความน่าเชื่อถือของนักพัฒนาทีมนั้นๆหรือนักพัฒนาคนนั้นๆนั่นเอง
แอปจะดีหรือร้ายอยู่ที่ตัวนักพัฒนาเอง
แอปส่วนใหญ่ไม่ได้อันตรายเสมอไป
เพราะบนโลกนี้ก็ยังแอปดีๆอยู่อีกเยอะแยะนะครับ 😉
ตัวดักคนเยอะมาก แค่กดพลาด ก็โดนหลอกให้ลงโน่นลงนี่ ญาติพี่น้องคนรู้จักผมโดนประจำ ต้องคอยแก้ให้
ถ้าไม่คิดมาก
ใช้ android มันก็อัพรูปผ่าน drive g+ ใช้ gmail อัพโหลดข้อมูลที่อยู่ ปฏิทิน ผ่านserver google อยู่ดี
ใช้ ios ก็อัพข้อมูล อีเมล์ รูป ปฏิทิน ผ่าน icloud อยู่ดี
ใช้ facebook ก็อัพข้อมูล รูป แชท วีดีโอผ่าน server พี่มาร์คอยู่ดี
ใช้ line ก็อัพข้อมูล รูป แชท วีดีโอ ผ่าน server line อยู่ดี
ดังนั้นถ้าไม่ต้องการให้เขาเอาข้อมูลเราไปใช้ (แบบทั้งเต็มใจและไม่เต็มใจ)
แนะนำ ฟีเจอร์โฟนเลยครับ
มันอยู่ที่ทางนั้นแจ้งให้ทราบ และมีกฏระเบียบการเอาไปใช้งาน
ต่างกับ App ที่แอบเอาไปใช้โดยไม่บอก
ต่างกันสิ้นเชิงเลยนะ
ก็ต้องลองคิดดูว่าถ้าแอปมันเอารูปโป๊เราไปหรือเอารูปที่เราถ่ายบัตรเครดิตไว้ไป มันจะเกิดอะไรบ้าง?
ในกรณีที่เราเผลออัพรูปพวกนี้ไปขึ้นเฟสหรือไลน์ เราลบได้มั้ย แต่ถ้าโดนแอบเอาไป เราลบได้มั้ย?
ก็จะรู้ว่ามันต่างกันกับที่ยกมาทุกกรณีลิบลับครับ
ผู้ใช้ทุกคนต้องรู้ว่าแอปเอาอะไรไปบ้างและต้องรู้ว่ามันเอาไปใช้ทำอะไรอย่างเช่นที่เรารู้ว่าเฟสบุ๊คและกูเกิลเอาข้อมูลเราไปทำอะไร ใช้ของฉลาดก็ต้องฉลาดตามของครับ ฟีเจอร์โฟนทุกวันนี้้ก็เป็นแอนดรอยด์ซะครึ่งละครับ มันไม่ใช่ทางแก้หรอกโยม
แอพฟรีที่มีโฆษณา จำเป็นต้องข้อ permission เข้าถึงอินเตอร์เน็ตไหมครับ
ถ้าเป็น Ads ตามเกมและแอพทั่วๆไปก็ใช้ครับ
ที่ภาพดาราหลุดนี้มันมาจาก aCloud ??
iCloud ยังมีภาพโป๊ดาราหลุดออกมาเลย เอาเข้าจริงๆ ถ้าต่อเน็ตอะไรก็ไม่ปลอดภัยทั้งนั้น ระบบเจาะข้อมูลจากภาครัฐของ เมกา จีน รัสเซีย ก็แข่งกันพัฒนาขึ้นตลอด
iCloud หลุดเพราะดาราตั้ง password ไม่รัดกุมพอนะ เท่าที่รู้มา
ผมสงสัยอย่าง แล้วอย่างแิพที่่โดนแครก เดิมที่เป็นแอพปกติแต่เสียเงิน แต่มีคนมาทำแครก แล้วเอาใส่โค๊ตดักข้อมูลพวกนี้เพิ่มเข้าไปจะทำได้ไหมครับ
ได้ครับ
แบบนี้ที่ผมเตือนๆคนที่ของเถื่อนอยู่ก็ไม่ผิดแล้วสิครับ เพียงแต่ยังไม่ข่าวที่โดนกันเลย โดนตอกกลับว่าก็มาเป็นปีไม่เคยเป็นอะไร 🙁
จริงๆอาจจะเนียนแบบคนใช้ไม่รู้ตัวมากกว่าครับ เพราะถ้าเป็นผมผมก็ไม่ขโมยข้อมูลแบบเอิกเกริกหรอกครับ
ผมก็คิดแบบนั้นครับ ก็แอบขโมยจะทำให้รู้ไตทำไม แต่เตือนไปก็น้อยคนจะฟัง เชื่อมั่นว่าตัวเองฉลาดใช้ของฟรีอยู่นั้นหล่ะครับ แล้วอีกอย่างคือมันไม่มีข่าวขึ้นมาเลยว่า ฉอกเกอร์ขโมยข้อมูลจากการแครกแอพ ก็เลยไม่ตัวอย่างให้เห็นด้วยครับ
แปะ http://thehackernews.com/2013/03/android-swiftkey-keyboard-turned-into.html?m=1
น่ากลัวมาก แปลวแอพคีย์บอร์ดเป็นคีย์ล็อกเกอร์ไปเลย ขอบคุณสำหรับความรู้ครับ
คิดง่ายๆ ครับ ทำไมมาคิดถึงแค่ สมาทโฟน ทั้งที่ บนคอมมันมีมานานแล้ว น่ากลัวกว่าบน มือถืออีกมากนะ
ยังไงโลกของไซเบอร์มันไม่มีการปลอดภัยแน่นอนครับ แต่เราก็หลีกเลี่ยงใช้มันไม่ได้
ตอนนี้ผมเริ่มฝึกนกพิราบที่บ้านให้บินไปบ้านเจ้านายละครับ
🙂