Kernel Assisted Superuser (KernelSU)

click fraud protection

ต่างจาก Magisk ตรงที่ KernelSU ฝังความสามารถในการรูทเข้าไปในเคอร์เนลเอง มันหลอกเชลล์ให้คิด /system/bin/su มีอยู่บนอุปกรณ์

Root มีความพิเศษมากสำหรับเราที่ XDA ช่วยให้ผู้ใช้สามารถควบคุมอุปกรณ์ของตนและเพิ่มคุณสมบัติที่ไม่มีให้บริการเสมอไป เช่น การบันทึกการโทร ธีม และการตรวจสอบแบตเตอรี่ขั้นสูง ในช่วงหลายปีที่ผ่านมามีการใช้งานรูทบางส่วน โดยที่ได้รับความนิยมมากที่สุดคือ SuperSU แม้ว่าเมื่อเร็วๆ นี้ ด้วยการเปิดตัว SafetyNet และข้อจำกัดที่เพิ่มขึ้นสำหรับอุปกรณ์ที่รูท Magisk ก็ได้เป็นการใช้งานรูท ทางเลือก เนื่องจากฟีเจอร์ Magisk Hide ช่วยให้ผู้ใช้สามารถซ่อนความจริงที่ว่าพวกเขารูทจากแอพอย่าง Netflix และ Google ได้อย่างมีประสิทธิภาพ จ่าย. อย่างไรก็ตาม การใช้งานและฟังก์ชันการทำงานของ Magisk Hide นั้นเป็นเกมแมวจับหนูที่ Google ทำการแพตช์ และ Magisk ก็กำลังแก้ไขแพตช์นั้น

Magisk ทำงานในสิ่งที่เรียกว่าพื้นที่ผู้ใช้ นี่เป็นที่ที่โปรแกรมส่วนใหญ่ในโทรศัพท์ของคุณทำงาน ไม่ว่าจะเป็นเกม เครื่องเล่นเพลง หรือตัวติดตามฟิตเนส เป็น "พื้นที่" ที่ผู้ใช้หันหน้าเข้าหากันของระบบปฏิบัติการของอุปกรณ์ Userspace ยังเป็นที่ที่การต่อสู้เพื่อ Magisk Hide ส่วนใหญ่เกิดขึ้น น่าเสียดายที่เมื่อเวลาผ่านไป และ Google ได้แพทช์วิธีการของ Magisk Hide มากขึ้นเรื่อยๆ ก็มีพื้นที่เหลือในการซ่อนน้อยลงเรื่อยๆ ในอนาคต Magisk อาจสูญเสียความสามารถในการซ่อนรากอย่างสมบูรณ์

การวางแผนสำหรับเหตุการณ์เช่นนี้ นักพัฒนาที่ได้รับการยอมรับจาก XDA zx2c4 (Jason Donenfeld) ซึ่งรู้จักที่นี่ใน XDA สำหรับ งานของเขาใน WireGuard และการค้นพบก ช่องโหว่ของ Bootloader ของ OnePlusได้สร้าง Kernel Assisted Superuser (เคอร์เนลSU)

ต่างจาก Magisk ตรงที่ KernelSU ฝังความสามารถในการรูทเข้าไปในเคอร์เนลเอง ที่นี่มันแย่งชิงการเรียกของระบบเพื่อหลอกให้เชลล์คิด /system/bin/su มีอยู่ในอุปกรณ์ทั้งที่จริงๆ แล้วไม่มีอยู่ จากนั้นจะรันคำสั่งที่รันด้วย su ราวกับว่ามันเป็นคำสั่งปกติ แต่มีสิทธิ์รูท กระบวนการนี้ไม่สามารถป้องกันได้ด้วย SELinux เคอร์เนลยังสามารถปิดการใช้งาน SELinux ได้หากต้องการ และความสามารถในการซ่อนสถานะรูทจากพื้นที่ผู้ใช้ ดังนั้น SafetyNet จึงแทบไม่มีขีดจำกัด

อย่างไรก็ตาม KernelSU ยังห่างไกลจากความสมบูรณ์ ในขณะนี้ ยังไม่มีกลไกควบคุมการเข้าถึง (ลองนึกถึง Magisk Manager) ด้วยเหตุนี้ KernelSU จึงมีประโยชน์มากที่สุดสำหรับนักพัฒนาเคอร์เนลมากกว่าผู้ใช้ กระบวนการสร้างเคอร์เนลกำหนดให้นักพัฒนาต้องสร้างและโหลดอิมเมจสำหรับบูตใหม่อย่างต่อเนื่องเพื่อทดสอบและแก้ไขจุดบกพร่องและคุณสมบัติต่างๆ และการรูทจะทำให้สิ่งนี้ง่ายขึ้นมาก อย่างไรก็ตาม ด้วยตัวเลือกรูท เช่น Magisk หรือ SuperSU อิมเมจสำหรับบูตจะต้องได้รับการแพตช์หลังจากทุกบิลด์เพื่อให้รูททำงานได้ ซึ่งอาจส่งผลกระทบอย่างมีนัยสำคัญต่อกระบวนการพัฒนา ในทางกลับกัน KernelSU นั้นมีไว้เพื่อบูรณาการในขณะสร้าง โดยไม่จำเป็นต้องมีการแพตช์หลังการ build เพื่อให้การรวม KernelSU เป็นเรื่องง่ายสำหรับนักพัฒนา จึงมีคำสั่งบรรทัดเดียวง่ายๆ ดังนี้:

curl -LsS "https://git.zx2c4.com/kernel-assisted-superuser/plain/fetch-and-patch.sh" | bash -

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

แม้ว่า KernelSU ยังอยู่ในช่วงเริ่มต้น และจำเป็นต้องมีการทำงานเพิ่มเติมเพื่อให้มีคุณลักษณะครบถ้วน แต่ก็เป็นโครงการที่น่าสนใจ เราคุยกัน มาจิสก์-ผู้สร้าง นักพัฒนาที่ได้รับการยอมรับจาก XDA ท็อปจอห์นวูเกี่ยวกับ KernelSU และเขาก็พบว่ามันน่าสนใจเช่นกัน โดยบอกว่าเนื่องจาก KernelSU ทำงานในระดับเคอร์เนล ฟังก์ชันการทำงานของ Magisk Hide จะมีความน่าเชื่อถือมากขึ้นหากเพิ่มเข้าไป และมันจะเป็น "เรื่องสนุก" ดำเนินการ."

หากคุณเป็นนักพัฒนาเคอร์เนลหรือ ROM ที่สนใจ KernelSU โปรดดูที่ เธรด XDA และ หน้าแรกของโครงการ เพื่อเรียนรู้เพิ่มเติม