Μια ματιά στις επιπλοκές Marshmallow Root & Verity

Μάθετε για τις νεότερες επιπλοκές που επιφέρει το verity και το Marshmallow στο rooting κλειδωμένων συσκευών.

Καθώς η σκόνη κατακάθεται στο Έκδοση Android 6.0, Οι χρήστες του Nexus εν αφθονία καταδύονται για OTA και Εικόνες εργοστασίων, και ετοιμάζεστε για την πιο πρόσφατη επανάληψη του λειτουργικού συστήματος Android.

Ενώ, εξωτερικά, το Android 6.0 φαίνεται (οπτικά, τουλάχιστον) εντυπωσιακά παρόμοιο με το Android 5.0 και 5.1 (οι εκδόσεις Lollipop), υπάρχουν ορισμένες σημαντικές αλλαγές στο μέσα. Ένας από αυτούς δυνητικά έχει προεκτάσεις για την προσαρμοσμένη ROM και τις κοινότητες root. Πρώτον, ένα μικρό υπόβαθρο. Εάν δεν σας ενδιαφέρει αυτό, απλώς μεταβείτε στο "Γιατί είναι αυτό σημαντικό".

Ένα χαρακτηριστικό που ονομάζεται Verity

Το πρόβλημα (είναι πρόβλημα αν σας αρέσουν οι συσκευές root και η τροποποίηση) προέρχεται από κάτι που είχα επισημάνει πολύ καιρό πριν, όταν χτύπησε για πρώτη φορά το AOSP - την εισαγωγή του dm-verity σε Android. Το Verity είναι μια λειτουργία ασφαλείας, που αρχικά βρέθηκε στο ChromeOS, σχεδιασμένη για να παρέχει σίγουρες και αξιόπιστες υπολογιστικές συσκευές, αποτρέποντας την τροποποίηση μιας συσκευής από κακόβουλο λογισμικό. Πίσω στο Android 4.4, η Google ανακοίνωσε την αλήθεια για το Android και μετά παρέμειναν ήσυχα. Ενώ υπήρξαν κάποιες

έρευνα για τη χρήση της αλήθειας, ως επί το πλείστον, τα πράγματα ήταν ήσυχα. Μέχρι τώρα δηλαδή.

Με το Android 6.0, η Google έχει αρχίσει να αναβαθμίζει το παιχνίδι της στην ασφάλεια της συσκευής. Μία από τις θεμελιώδεις απαιτήσεις για αυτό είναι να αποτραπεί η τροποποίηση του λογισμικού σε μια συσκευή εν αγνοία του χρήστη - ενώ πολλοί εδώ στο XDA θεωρείτε δεδομένο, φανταστείτε ότι η συσκευή ενός χρήστη έχει γίνει root χωρίς τη γνώση ή τη συγκατάθεσή του και η πρόσβαση root χρησιμοποιείται για την κλοπή τους δεδομένα. Για αυτόν τον λόγο, η Google έχει αρχίσει να εφαρμόζει την επαλήθευση του διαμερίσματος συστήματος σε ορισμένες συσκευές. Πρόσφατα ενημέρωσαν και το δικό τους σελίδες υποστήριξης για να το καλύψει αυτό.

Τι σημαίνει αυτό για Rooted χρήστες;

Με την αλήθεια στη θέση του, οποιεσδήποτε αλλαγές γίνονται στο διαμέρισμα συστήματος θα εντοπιστούν κατά την εκκίνηση ή την πρόσβαση. Στη συνέχεια, θα αντιμετωπίσετε ένα από τα σφάλματα όπως φαίνεται παραπάνω. Κάποιοι σας επιτρέπουν να προχωρήσετε και κάποιοι θέλουν να σας προστατεύσουν σταματώντας την εκκίνηση της συσκευής. Υπάρχουν τρεις διαθέσιμες πολιτείες. Το ένα εμφανίζεται όταν ο bootloader είναι ξεκλείδωτος, υποδεικνύοντας ότι μπορεί να διατρέχετε κίνδυνο μέχρι να κλειδώσετε ξανά τον bootloader. Αυτό συμβαίνει επειδή μια τροποποιημένη εικόνα πυρήνα μπορεί να παρακάμψει την αλήθεια, καθώς ο δίσκος ram του πυρήνα περιέχει τα κλειδιά που χρησιμοποιούνται για την επαλήθευση της κατάστασης ενός συστήματος.

Τα πράγματα φαίνονται μάλλον μη διασκεδαστικά για χρήστες που θέλουν root σε κλειδωμένες συσκευές.

Η επόμενη κατάσταση εμφανίζεται (πιθανώς) όταν η πιστότητα είναι απενεργοποιημένη ή απενεργοποιημένη ή δεν μπορεί να ελεγχθεί λόγω τροποποιήσεων στο ramdisk. Δεν μπορώ να είμαι σίγουρος, λόγω της έλλειψης Nexus 5X ή 6P για έρευνα, αλλά η υποψία μου (με βάση τα μηνύματα) είναι ότι εάν φορτώσετε μια άλλη ROM, η οποία στη συνέχεια τοποθετήσει τον δικό της πυρήνα στη συσκευή, η σελίδα "διαφορετικό λειτουργικό σύστημα" θα εμφανίζομαι.

Η τελική κατάσταση είναι η κόκκινη προειδοποίηση που δηλώνει ότι η συσκευή είναι κατεστραμμένη. Υποψιάζομαι ότι αυτό σημαίνει ότι η εικόνα περιέχει αλήθεια, αλλά η επαλήθευση απέτυχε λόγω της τροποποίησης της εικόνας του συστήματος. Και πάλι, δεν μπορούμε να είμαστε σίγουροι χωρίς υλικό στο χέρι, αλλά αυτό το σφάλμα φαίνεται να είναι αυτό που θα δείτε εάν μια συσκευή στοκ τροποποιήθηκε από ένα κομμάτι κακόβουλου λογισμικού.

Γιατί είναι σημαντικό?

Στο Android M (6.0), το root απαιτεί αυτήν τη στιγμή να γίνουν τροποποιήσεις στην εικόνα του πυρήνα, εκτός από το σύστημα αρχείων. Αυτό σημαίνει ότι, ακόμα κι αν αγνοήσουμε την αλήθεια (όπως σε μια παλαιότερη συσκευή Nexus όπως η Nexus 7 2013), απαιτείται μια νέα εικόνα πυρήνα, για να παρακάμψει τις προστασίες SELinux που εμποδίζουν την πρόσβαση root από το να λειτουργήσει.

Αν θέλετε root σήμερα, στο Android Marshmallow, θα χρειαστεί να χρησιμοποιήσετε μια τροποποιημένη εικόνα εκκίνησης.

Μέχρι τώρα υπήρχαν τροποποιημένους πυρήνες για να θέσετε το SELinux σε λειτουργία επιτρεπόμενης, αλλά αυτή είναι μια μη ιδανική λύση, καθώς σημαίνει ότι δεν λαμβάνετε τα πλεονεκτήματα ασφαλείας της προστασίας SELinux. Και, μετά το Τρακέπος, υποθέτω ότι μπορείτε να δείτε τα πλεονεκτήματα του SELinux και άλλων προστασιών έναντι εκμεταλλεύσεων ασφαλείας.

XDA Senior Recognized Developer, Αλυσίδα, ο master of all-things root κυκλοφόρησε ένα ενημερωμένη έκδοση του SuperSU που διατηρεί το SELinux στη λειτουργία επιβολής, αλλά απαιτεί για άλλη μια φορά να γίνουν τροποποιήσεις στη διαμόρφωση του SELinux της εικόνας εκκίνησης. Αυτό σημαίνει ότι πρέπει να εγκαταστήσετε το SuperSU, καθώς και μια τροποποιημένη εικόνα εκκίνησης.

Και όλα αυτά είναι καλά και καλά, έως ότου εισέλθουν στο μείγμα οι αερομεταφορείς των ΗΠΑ. Τα προπύργια της επιλογής κατά των καταναλωτών, οι ισχυροί όπως η AT&T και η Verizon είναι γνωστό ότι απολαμβάνουν το κλείδωμα των συσκευών, εμποδίζοντας τους χρήστες να εγκαταστήσουν προσαρμοσμένο υλικολογισμικό μέσω των κλειδαριών του bootloader τους. Πράγματι, η Verizon είναι ιδιαίτερα κακή στο να μην μεταβιβάζει καν ενημερώσεις υλικολογισμικού στους χρήστες, με το Sony Xperia Z3v δεν έχει οριστεί για λήψη Marshmallow ενώ η υπόλοιπη σειρά Z3 (και μάλιστα η σειρά Z2) θα. Καλό, ακόμα δεν έχουν κυκλοφορήσει καν το Lollipop στη συσκευή, παρά το γεγονός ότι είναι διαθέσιμο αρκετή ώρα (Νοέμβριος 2014) στο κανονικό Z3.

Αντί για ένα ανεπίσημο ξεκλείδωμα του bootloader (αυτά είναι αρκετά σπάνια αυτές τις μέρες, εκτός από μηχανικούς bootloaders που έχουν διαρρεύσει για μερικές συσκευές Samsung), φαίνεται πολύ απίθανο ότι θα αποκτήσετε root στο Android 6.0 χωρίς κάποια θεϊκή παρέμβαση - ο συνδυασμός dm-verity (για να σταματήσετε την εκκίνηση του τηλεφώνου σας με οποιεσδήποτε τροποποιήσεις στο κατάτμηση συστήματος) και η απαίτηση για αλλαγές του SELinux στο ramdisk (για να επιτρέψει τη λειτουργία του root), φαίνεται έτοιμο να κάνει τα πράγματα μάλλον μη διασκεδαστικά για τους χρήστες που επιθυμούν root. κλειδωμένες συσκευές.

Android Pay;

Τέλος, Android Pay. Μάλλον ακούγεται εντελώς άσχετο με το υπόλοιπο αυτού του άρθρου, αλλά στην πραγματικότητα είναι αρκετά σχετικό. Το Android Pay βασίζεται στο νέο SafetyNet API εντός του πλαισίου ιδιόκτητων υπηρεσιών της Google, το οποίο έχει σχεδιαστεί για να παρέχει βεβαιώσεις κατάστασης συσκευής σχετικά με το εάν μια συσκευή είναι ριζωμένη ή τροποποιημένη ή λειτουργεί σε μη εγκεκριμένη κατάσταση.

Ενώ υπάρχει α έργο εξετάζοντας τις πλαστογραφημένες απαντήσεις στο SafetyNet, προς το παρόν απαιτεί μια προσθήκη Xposed και αυτό δεν φαίνεται πιθανό να αλλάξει, δεδομένου του τρόπου λειτουργίας του. Το Xposed απαιτεί root και κάνει τροποποιήσεις στο διαμέρισμα συστήματος. Αυτό καθιστά δύσκολο να πραγματοποιηθεί σε μια συσκευή κλειδωμένη με bootloader. Ακόμη και τότε, τέτοια πράγματα απλώς μπαίνουν σε ένα παιχνίδι γάτας με το ποντίκι με την Google. Με το SafetyNet, οι συσκευές με ρίζα (ή μάλιστα συσκευές που έχουν τροποποιηθεί καθόλου) θεωρούνται ως "μη συμβατές με CTS", κάτι που είναι ευφημισμός για τροποποιημένες συσκευές.

Έχουν γραφτεί πολλά περισσότερα για το SafetyNet σε αυτήν την καταρριπτική ανάρτηση ιστολογίου, αλλά σίγουρα φαίνεται ότι μπορούμε να εντοπίσουμε ορισμένους τομείς που θέλει να περιορίσει η Google. Πρώτον, δεν τους αρέσει το root, το Xposed και οτιδήποτε τροποποιεί το διαμέρισμα συστήματος. Δεύτερον, φαίνεται ότι η Google σκέφτεται να εντοπίσει χρήστες που έχουν ενεργοποιημένο τον αποκλεισμό διαφημίσεων - η χειραψία SSL ελέγχει pubads.g.doubleclick.net σίγουρα μου προτείνετε ότι η Google θέλει να μάθει εάν αποκλείετε διαφημίσεις στη συσκευή σας. Λαμβάνοντας υπόψη ότι το root είναι συνήθως προαπαιτούμενο εκεί, αλλά ότι το VPN API θα μπορούσε ενδεχομένως να χρησιμοποιηθεί για να Αυτό χωρίς root, φαίνεται ότι η Google θέλει τουλάχιστον να έχει μια ιδέα ποιος (ή πόσα άτομα) μπλοκάρει διαφημίσεις. Ο αποκλεισμός διαφημίσεων είναι ένα επίκαιρο ζήτημα, δεδομένης της ώθησης από την Apple να το υποστηρίξει στο πρόγραμμα περιήγησης ιστού (αναμφισβήτητα για ενθάρρυνση οι άνθρωποι να χρησιμοποιούν περισσότερο εφαρμογές, όπου ελέγχουν την εμπειρία και μπορούν να προσφέρουν διαφημίσεις χωρίς αποκλεισμό) και αυτές οι κινήσεις είναι ενδιαφέρων.

συμπέρασμα

Αν θέλετε root σήμερα, στο Android Marshmallow (6.0), θα χρειαστεί να χρησιμοποιήσετε μια τροποποιημένη εικόνα εκκίνησης. Ενώ μένει να δούμε αν αυτό θα ισχύει επ' αόριστον, φαίνεται πιθανό να ισχύει για κάποιο χρονικό διάστημα - οι αλλαγές στο SELinux καθιστούν πολύ πιο δύσκολο να αποκτήσετε πρόσβαση root χωρίς να τροποποιήσετε την εικόνα εκκίνησης. Και καθώς η τροποποίηση της εικόνας εκκίνησης απαιτεί έναν ξεκλείδωτο bootloader, αυτό θα μπορούσε να βάλει τέλος στο root (και Xposed και άλλες δυνατότητες root) σε συσκευές που αποστέλλονται με bootloaders που δεν μπορούν να ξεκλειδωθούν από τους τελικούς χρήστες. Το Dm-verity κάνει επίσης την εμφάνισή του και φαίνεται να είναι ενεργοποιημένο στη λειτουργία επιβολής σε νέες συσκευές. Αυτό θα δυσκολέψει την τροποποίηση του /system, ακόμα κι αν επρόκειτο να αποκτήσετε πρόσβαση root, χωρίς να έχετε ξανά ξεκλείδωτο bootloader.

Αυτό αλλάζει την άποψή σας για τις συσκευές που είναι κλειδωμένες με bootloader; Έχει φτάσει το Android στο στάδιο όπου θα εξακολουθούσατε να αγοράζετε μια κλειδωμένη συσκευή εκκίνησης, εάν η εταιρεία κινητής τηλεφωνίας σας έδινε μια καλή προσφορά, ή σε ενδιαφέρουν μόνο ξεκλείδωτες συσκευές; Ποιες εφαρμογές ή δυνατότητες root θα σας έλειπαν σε έναν κλειδωμένο bootloader;

Μη διστάσετε να μοιραστείτε τις σκέψεις σας στα σχόλια παρακάτω.