Technology

Jailbreaking กับ Root คืออะไร ?

By Arnon Puitrakul - 05 มิถุนายน 2020 - 1 min read min(s)

Jailbreaking กับ Root คืออะไร ?

การ Jailbreak บน Apple Device และ Root บน Android Device ช่วงนี้เริ่มกลับมานิยมอีกครั้ง หลังจากเหมือนหายไปสักพัก ฝั่งของ Apple Device น่าจะเป็นข่าวเมื่อไม่นานมานี้กับการที่ Hacker สามารถ Jailbreak iOS 13.5 ได้ใน วันเดียว วันฮ่ะ วันเดียวเท่านั้น ทำให้ตอกย้ำความรู้สึกเรื่องของความปลอดภัยมากขึ้นไปอีก จากเรื่องที่รัฐบาลสามารถเจาะเข้าดูข้อมูลของผู้ที่ออกมาประทวงทางการเมืองได้

เรื่องนั้นไว้ก่อนละกัน แต่วันนี้เราจะมาคุยกันเรื่องของการ Jailbreak และ Root มันคืออะไรกันแน่ และ ถูกกฏหมายมั้ย

Jailbreak และ Root คืออะไร ?

คำ 2 คำนี้ ใช้กับ iOS และ Android ต่าง OS กัน แต่ความหมายเหมือนกันคือ การที่เราเข้าใช้งานสิทธ์ของระบบปฏิบัติการที่สูงในระดับ root หรือผู้ดูแลระบบ

อย่างที่หลาย ๆ คนอาจจะทราบบ้างแล้วว่า ทั้ง iOS และ Android ปู่ของมันเป็น UNIX ทั้งคู่ ทำให้มีหลาย ๆ อย่างที่แอบเหมือนกันบ้างงงง ซึ่งหนึ่งในนั้นคือ การทำ Access Control กับการใช้งานระบบต่าง ๆ เช่น การเข้าถึง Disk ได้โดยตรง และการเข้าปรับเปลี่ยนค่าในหน่วยความจำหลักได้ พวกนี้เป็นการทำงานที่ค่อนข้าง Advance มาก และ อาจจะมีอันตรายกับระบบได้ ถ้าเราไม่ควบคุม

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

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

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

มันทำยังไง ?

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

ซึ่งแน่นอนว่า การที่ผู้พัฒนา OS อย่าง Apple และ Google เองทราบว่าระบบของตัวเองนั้นถูกเจาะได้แล้ว เขาก็ต้องออก Patch มาเพื่อป้องกันการเข้าสู่ระบบในส่วนนั้น ทำให้โปรแกรมสำหรับการ Jailbreak และ Root จะมีบอกเลยว่า มันสามารถใช้ได้กับ OS Version ไหนบ้าง

มันก็เหมือนมวยที่ต่อยกันไม่จบสักทีแหละ คนนึงก็ป้องกัน อีกคนก็พยายามบุกเข้ามาเรื่อย ๆ แบบนี้

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

ที่เมื่อก่อนเราจะต้องเอาไฟล์ IPSW ซึ่งเป็น Image ของ iOS ไปเข้าโปรแกรม Jailbreak นั่นแหละ มันคือการที่เอา Image ไปแก้ Code บางส่วน เมื่อเราเอา Image ที่ผ่านการแก้ไขไปลงในเครื่อง มันก็ทำให้เราสามารถเข้าใช้งานสิทธิ์สูงสุดได้นั่นเอง

จนทำให้ OS หลาย ๆ ตัวออกแบบระบบมาใหม่เพื่อป้องกันอะไรแบบนี้ได้มากขึ้น อย่าง Apple เองก็มีการจำกัดการ Downgate เพื่อไม่ให้ผู้ใช้ย้อน Version กลับไปเพื่อให้ Jailbreak ได้

หรือเพื่อป้องกันพวก Custom Firmware ก็จะมีการทำ Checksum เทียบกับไฟล์จาก Apple เองเพื่อให้มั่นใจได้ว่า OS ที่จะ Install ลงไป มันสมบูรณ์ และ เป็นของ Apple เอง มันยังมีวิธีอื่นอีกเยอะเลยที่เข้ามาตรวจสอบเพื่อทำให้ป้องกันการกระทำเหล่านี้ได้

Part นี้สำหรับ Geek เท่านั้น ส่วนที่มัน Patch มันจะ Patch เพื่อให้ตัวเองเข้าถึง  Root ได้ รวมไปถึง Media Partition อีกด้วย  และเพื่อให้มันคงสิทธิ์อยู่ตลอด ทำให้มันต้องเข้าไป Patch เพื่อเรียกตัวเองขึ้นมาตอนเข้าสู่ระบบที่ /private/etc/fstab เหมือนที่เราทำใน Linux จริง ๆ มันยังมีการ Patch ที่อื่นเช่นพวกการจัดการกับ Digital Signature ต่าง ๆ ที่ทำให้เราสามารถลง 3rd-Party App ที่ไม่ได้มาจาก App Store ได้อีกด้วย

ทำไมเราต้อง Jailbreak และ Root

หลาย ๆ คนตอนนี้ก็อาจจะยังไม่เข้าใจว่า แล้วทำไมเราต้องมานั่งทำอะไรแบบนี้ด้วย เพราะการที่จะทำได้ มันก็อาศัยความรู้หลายอย่าง ถึงแม้ว่าการทำมันง่ายขึ้นมากแล้ว แต่มันก็ยังไม่ได้ง่ายพอที่จะทำให้หลาย ๆ คนทำแล้วรอดหมดจนเสร็จออกมาได้

นอกจากนั้น มันต้องการ การดูแล ที่ค่อนข้างเยอะขึ้นสักหน่อย เพราะเราต้องระวังเรื่องของการ Update บางที ถ้าเรา Update ไป ทำให้ Jailbreak หรือ Root ของเราหลุดไปได้ นอกจานั้นยังทำให้ประกันขาดอีก  คุ้มมั้ยเนี่ยฮ่า ๆ

แต่การที่เราทำแบบนี้ เพราะ มันมีหลาย Feature ที่เราอยากได้ แต่ผู้พัฒนา OS ต่าง ๆ ไม่ได้เขียนมาให้เราใช้ หรือยังไม่ได้เปิดให้เราใช้งานได้ ตัวอย่างเมื่อก่อนเลย คือตอน Siri ออกมาใหม่ ๆ Apple ไม่ได้เปิดให้อุปกรณ์เก่า ๆ ใช้ได้ ทำให้ถ้าเราอยากจะใช้เมื่อเรา Jailbreak แล้วมันจะมี Tweek ออกมา Patch เพื่อให้ใช้งาน Siri ได้

หรือการปรับแต่งพวกหน้าตาต่าง ๆ อย่าง Control Centre คนใน Community ก็มี Tweek เขียนออกมาทำให้เราใช้งานของที่คล้าย ๆ ก้ับ Control Centre ก่อนที่ Apple จะเปิดตัว Feature ออกมาให้เราใช้จริง ๆ ซะอีก

ทางฝั่ง Android เอง สนุกกว่านั้นอีก เพราะถ้าเรา Root ได้ เราก็จะปลดล๊อค Bootloader ได้ ทำให้เราสามารถลง Android ที่มาจาก 3rd-Party ได้ซึ่งอาจจะเพิ่มความสามารถต่าง ๆ หรือ ทำให้เราสามารถใช้ Android Version ใหม่ ๆ ที่เราจะไม่ได้อัพเดท เพราะโดนลอยแพไปแล้ว

สรุปง่าย ๆ คือ การที่เรา Jailbreak หรือ Root มันเพิ่มความสามารถในการทำอะไรกับตัวเครื่องได้มากขึ้น ทำให้เราสามารถปลดล๊อคความสามารถของเครื่องได้มากขึ้น ซึ่งมันก็เหมาะกับคนที่ต้องการลองอะไรใหม่ ๆ

มันอันตรายยังไง

คำถามต่อไปคือ ถ้ามันทำให้เราปลดล๊อคความสามารถใหม่ ๆ แล้วทำไมคนถึงไม่แนะนำให้ทำกันละ ?

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

นอกจากนั้น การลงโปรแกรมบางอย่าง ก็ทำให้มันไป Patch App อื่นได้ด้วย ทำให้ App อื่น ๆ อาจจะทำงานไม่ได้ในแบบที่มันควรจะเป็น ตัวอย่างเช่น App ที่ต้องการความปลอดภัยสูงอย่างพวก Internet Banking ที่มันจะตรวจหาเลยว่ามันมีการ Root หรือ Jailbreak มั้ย ถ้ามีก็จะไม่ให้ใช้งาน ทั้งนี้เพื่อป้องกันทั้งตัวผู้ใช้เองที่อาจจะติดตั้ง Malware โดยไปไม่รู้ตัว หรือ อาจจะใช้เป็นช่องทางในการเข้าถึงธนาคารได้

อีกตัวอย่างที่ชัด ๆ เลยคือ พวก Tweek สำหรับโกงเกมต่าง ๆ อย่างที่เราบอกว่าการ Jailbreak และ Root ทำให้เราเข้าถึงที่ไหนก็ได้ในเครื่องรวมไปถึงเซฟเกมที่อาจจะอยู่ในเครื่องเราได้ มันก็ไม่แปลกเลยที่จะมีพวก Tweek สำหรับโกงเกมอยู่

ซึ่งเอาจริง ๆ คือ เราก็ไม่สามารถรู้เลยว่า App ที่เราติดตั้งเพิ่มลงมามันจะแฝงอะไรมาด้วยมั้ย ถ้าเป็น App ที่ผ่านและอยู่ใน Store พวกนี้มันจะมีการ Sign และ การตรวจจากผู้พัฒนา OS อยู่แล้วว่ามันปลอดภัยถึงจะปล่อยเข้ามาใน Store ได้

สรุป

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