Υπερχρήστης με υποβοήθηση πυρήνα (KernelSU)

click fraud protection

Σε αντίθεση με το Magisk, το KernelSU ενσωματώνει τη δυνατότητα να αποκτήσει root στον ίδιο τον πυρήνα. Ξεγελά το κέλυφος ώστε να πιστεύει ότι το /system/bin/su υπάρχει στη συσκευή.

Το Root είναι πολύ ιδιαίτερο για εμάς στο XDA. Επιτρέπει στους χρήστες να αναλαμβάνουν τον έλεγχο των συσκευών τους και να προσθέτουν λειτουργίες που δεν είναι πάντα διαθέσιμες, όπως εγγραφή κλήσεων, θέματα και προηγμένη παρακολούθηση μπαταρίας. Υπήρξαν μερικές εφαρμογές root όλα αυτά τα χρόνια, με το πιο δημοφιλές πιθανότατα να είναι το SuperSU. Πρόσφατα, ωστόσο, με την εισαγωγή του SafetyNet και τους αυξανόμενους περιορισμούς σε συσκευές root, το Magisk ήταν η ριζική εφαρμογή επιλογής, καθώς η δυνατότητα Magisk Hide επιτρέπει στους χρήστες να αποκρύπτουν αποτελεσματικά το γεγονός ότι έχουν root από εφαρμογές όπως το Netflix και η Google Πληρωμή. Ωστόσο, η υλοποίηση και η λειτουργικότητα του Magisk Hide είναι σε μεγάλο βαθμό ένα παιχνίδι γάτας με το ποντίκι της Google που το διορθώνει και το Magisk εργάζεται γύρω από αυτό το patch.

Το Magisk εκτελείται σε αυτό που είναι γνωστό ως χώρος χρηστών. Εδώ εκτελούνται επίσης τα περισσότερα προγράμματα στο τηλέφωνό σας, είτε είναι παιχνίδια, συσκευές αναπαραγωγής μουσικής ή ιχνηλάτες γυμναστικής. Είναι ο «χώρος» του λειτουργικού συστήματος της συσκευής που βλέπει ο χρήστης. Ο χώρος χρήστη είναι επίσης το μέρος όπου λαμβάνει χώρα το μεγαλύτερο μέρος της μάχης για το Magisk Hide. Δυστυχώς, όσο περνά ο καιρός και η Google διορθώνει όλο και περισσότερες μεθόδους του Magisk Hide, μένει όλο και λιγότερος χώρος για απόκρυψη. Στο μέλλον, το Magisk θα μπορούσε να χάσει την ικανότητα να κρύβει εντελώς το root.

Σχεδιάζοντας για αυτό το ενδεχόμενο, XDA Recognized Developer zx2c4 (Jason Donenfeld), γνωστός εδώ στο XDA για τη δουλειά του στο WireGuard και η ανακάλυψη του α Ευπάθεια του OnePlus bootloader, έχει δημιουργήσει Υπερχρήστης με υποβοήθηση πυρήνα (KernelSU).

Σε αντίθεση με το Magisk, το KernelSU ενσωματώνει τη δυνατότητα να αποκτήσει root στον ίδιο τον πυρήνα. Εδώ, πειράζει κλήσεις συστήματος για να ξεγελάσει το κέλυφος να σκεφτεί /system/bin/su υπάρχει στη συσκευή, ενώ στην πραγματικότητα δεν υπάρχει. Στη συνέχεια εκτελεί εντολές που εκτελούνται με su σαν να ήταν κανονικές εντολές, αλλά με δικαιώματα root. Αυτή η διαδικασία δεν μπορεί να αποτραπεί από το SELinux - ο πυρήνας μπορεί ακόμη και να απενεργοποιήσει το SELinux εάν το θέλει - και η δυνατότητα απόκρυψης της κατάστασης root από το userspace, και επομένως το SafetyNet, είναι σχεδόν απεριόριστη.

Ωστόσο, το KernelSU απέχει πολύ από το να είναι ολοκληρωμένο. Προς το παρόν, δεν υπάρχει μηχανισμός ελέγχου πρόσβασης (σκεφτείτε το Magisk Manager). Εξαιτίας αυτού, το KernelSU είναι επί του παρόντος πιο χρήσιμο στους προγραμματιστές του πυρήνα παρά στους χρήστες. Η διαδικασία δημιουργίας ενός πυρήνα απαιτεί από τους προγραμματιστές να αναδημιουργούν συνεχώς και να φορτώνουν εικόνες εκκίνησης για να δοκιμάζουν και να διορθώνουν σφάλματα και λειτουργίες, και η ύπαρξη root το κάνει πολύ πιο εύκολο. Ωστόσο, με τις επιλογές root όπως το Magisk ή το SuperSU, η εικόνα εκκίνησης πρέπει να επιδιορθώνεται μετά από κάθε έκδοση για να λειτουργήσει το root, κάτι που μπορεί να επηρεάσει σημαντικά τη διαδικασία ανάπτυξης. Το KernelSU, από την άλλη πλευρά, προορίζεται να ενσωματωθεί κατά το χρόνο κατασκευής, χωρίς να απαιτείται επιδιόρθωση μετά την κατασκευή. Προκειμένου να γίνει εύκολη η ενσωμάτωση του KernelSU για προγραμματιστές, είναι διαθέσιμη μια απλή εντολή μίας γραμμής:

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

Μόλις εκτελεστεί αυτό, το KernelSU μπορεί να ενσωματωθεί στον πυρήνα ως μέρος της κανονικής διαδικασίας κατασκευής. Αυτό σημαίνει ότι οι προγραμματιστές μπορούν να δημιουργήσουν και να δοκιμάσουν τους πυρήνες τους εύκολα, χωρίς να χρειάζεται να ανησυχούν για την προσθήκη root.

Αν και το KernelSU βρίσκεται στα πρώτα του βήματα και χρειάζεται περισσότερη δουλειά για να γίνει πλήρως εμφανίσιμο, είναι ένα ενδιαφέρον έργο. Μιλήσαμε με Magisk-δημιουργός, Αναγνωρισμένος προγραμματιστής XDA topjohnwu, για το KernelSU, και το βρήκε επίσης ενδιαφέρον, λέγοντας ότι, εφόσον το KernelSU λειτουργεί σε επίπεδο πυρήνα, Η λειτουργικότητα του Magisk Hide θα ήταν πολύ πιο αξιόπιστη εάν προστεθεί και ότι θα ήταν «διασκεδαστικό να υλοποιώ, εφαρμόζω."

Εάν είστε προγραμματιστής πυρήνα ή ROM που ενδιαφέρεται για το KernelSU, ρίξτε μια ματιά στο νήμα XDA και το αρχική σελίδα του έργου να μάθω περισσότερα.