Ένα κρίσιμο ελάττωμα στους επεξεργαστές MediaTek δεν επιδιορθώθηκε στις συσκευές λόγω παραμέλησης OEM. Η Google ελπίζει ότι το Δελτίο Ασφαλείας Android του Μαρτίου 2020 θα το διορθώσει.
Την πρώτη Δευτέρα κάθε μήνα, η Google δημοσιεύει το Δελτίο ασφαλείας Android, μια σελίδα που αποκαλύπτει όλα τα τρωτά σημεία ασφαλείας και τις ενημερώσεις κώδικα που υποβάλλονται από την ίδια την Google ή άλλα τρίτα μέρη. Σήμερα δεν αποτέλεσε εξαίρεση: η Google μόλις δημοσιοποίησε το Δελτίο ασφαλείας Android για τον Μάρτιο του 2020. Ένα από τα τρωτά σημεία που τεκμηριώνονται στο τελευταίο ενημερωτικό δελτίο είναι το CVE-2020-0069, μια κρίσιμη εκμετάλλευση ασφαλείας, συγκεκριμένα ένα rootkit, που επηρεάζει εκατομμύρια συσκευές με chipset από την MediaTek, τη μεγάλη εταιρεία σχεδιασμού chip της Ταϊβάν. Αν και το Δελτίο ασφαλείας Android Μαρτίου 2020 είναι φαινομενικά η πρώτη φορά που το CVE-2020-0069 αποκαλύπτεται δημόσια, λεπτομέρειες για το exploit βρίσκονται στην πραγματικότητα ανοιχτά στο Διαδίκτυο - πιο συγκεκριμένα, στα φόρουμ XDA-Developers - από τον Απρίλιο του 2019. Παρά το γεγονός ότι η MediaTek έκανε διαθέσιμη μια ενημέρωση κώδικα ένα μήνα μετά την ανακάλυψη, η ευπάθεια εξακολουθεί να είναι εκμεταλλεύσιμη σε δεκάδες μοντέλα συσκευών.
Ακόμη χειρότερα, η ευπάθεια γίνεται ενεργή εκμετάλλευση από χάκερ. Τώρα η MediaTek στράφηκε στην Google για να κλείσει αυτό το κενό ενημέρωσης κώδικα και να ασφαλίσει εκατομμύρια συσκευές έναντι αυτής της κρίσιμης εκμετάλλευσης ασφαλείας.Για όσους αναγνώστες δεν είναι εξοικειωμένοι XDA-Προγραμματιστές, είμαστε ένας ιστότοπος που φιλοξενεί τα μεγαλύτερα φόρουμ για τροποποιήσεις λογισμικού Android. Συνήθως, αυτές οι τροποποιήσεις επικεντρώνονται στην επίτευξη πρόσβασης root σε συσκευές για τη διαγραφή bloatware, την εγκατάσταση προσαρμοσμένου λογισμικού ή την προσαρμογή των προεπιλεγμένων παραμέτρων συστήματος. Τα tablet Fire της Amazon είναι δημοφιλείς στόχοι για χομπίστες χάκερ στα φόρουμ μας—είναι γεμάτα απεγκατάσταση bloatware, δεν έχουν πρόσβαση σε βασικές εφαρμογές λογισμικού όπως το Google Play Store και, το πιο σημαντικό, είναι πολύ φτηνός. Η πρόκληση με το rooting tablet Amazon Fire είναι ότι είναι πολύ κλειδωμένα για να εμποδίσουν τους χρήστες να βγουν έξω από τον περιφραγμένο κήπο του Amazon. Η Amazon δεν παρέχει επίσημη μέθοδο για το ξεκλείδωμα του bootloader των ταμπλετών Fire, που είναι συνήθως το πρώτο βήμα για την ριζοβολία οποιασδήποτε συσκευής Android. Επομένως, ο μόνος τρόπος για να κάνετε root ένα tablet Amazon Fire (χωρίς τροποποιήσεις υλικού) είναι να βρείτε ένα exploit στο λογισμικό που επιτρέπει στον χρήστη να παρακάμψει το μοντέλο ασφαλείας του Android. Τον Φεβρουάριο του 2019, αυτό είναι ακριβώς αυτό που έκανε το XDA Senior Member diplomatic όταν δημοσίευσε ένα νήμα στα φόρουμ μας για tablet Amazon Fire. Γρήγορα συνειδητοποίησε ότι αυτό το exploit ήταν πολύ ευρύτερο σε εύρος από απλώς τα tablet Fire της Amazon.
Μετά από λίγη δοκιμή από διπλωματικά μέλη XDA και άλλα μέλη της κοινότητας, επιβεβαιώθηκε ότι αυτό το exploit λειτουργεί σε μεγάλο αριθμό τσιπ MediaTek. Ο συγγραφέας δηλώνει ότι το exploit λειτουργεί σε "σχεδόν όλα τα τσιπ 64-bit της MediaTek" και συγκεκριμένα ονομάζει τα ακόλουθα ως ευάλωτα: MT6735, MT6737, MT6738, MT6739, MT6750, MT6753, MT6755, MT6757, MT6758, MT6761, MT6762, MT6763, MT6765, MT6771, MT6779, MT6795, MT67MT797, MT67MT197 173, MT8176, MT8183, MT6580, και MT6595. Λόγω του πόσα chipset της MediaTek επηρεάστηκαν από αυτό το exploit, το exploit έλαβε το όνομα "MediaTek-su," ή "MTK-su", για συντομία. Στις 17 Απριλίου 2019, το diplomatic δημοσίευσε ένα δεύτερο νήμα με τίτλο "Amazing Temp Root για MediaTek ARMv8" στο φόρουμ μας "Διάφορα Ανάπτυξη Android". Σε αυτό το νήμα, μοιράστηκε ένα σενάριο που μπορούν να εκτελέσουν οι χρήστες για να τους παραχωρήσουν πρόσβαση υπερχρήστη στο κέλυφος, καθώς και να ορίσουν SELinux, η μονάδα πυρήνα Linux που παρέχει έλεγχο πρόσβασης για διεργασίες, σε εξαιρετικά ανασφαλή "επιτρεπτικά" κατάσταση. Για να αποκτήσει ένας χρήστης πρόσβαση root και να ρυθμίσει το SELinux σε επιτρεπτό στη δική του συσκευή είναι απίστευτα εύκολο: Το μόνο που έχετε να κάνετε είναι να αντιγράψετε το σενάριο σε έναν προσωρινό φάκελο, αλλάξτε τους καταλόγους όπου είναι αποθηκευμένο το σενάριο, προσθέστε εκτελέσιμα δικαιώματα στο σενάριο και, στη συνέχεια, εκτελέστε το γραφή.
Τα μέλη της κοινότητας XDA επιβεβαίωσαν ότι το exploit λειτούργησε τουλάχιστον στις ακόλουθες συσκευές:
- Acer Iconia One 10 B3-A30
- Acer Iconia One 10 B3-A40
- Σειρά tablet Alba
- Σειρά Alcatel 1 5033
- Alcatel 1C
- Σειρά Alcatel 3L (2018) 5034
- Alcatel 3T 8
- Alcatel A5 LED 5085 series
- Σειρά Alcatel A30 5049
- Alcatel Idol 5
- Alcatel/TCL A1 A501DL
- Alcatel/TCL LX A502DL
- Alcatel Tetra 5041C
- Amazon Fire 7 2019 -- έως Fire OS 6.3.1.2 build 0002517050244 μόνο
- Amazon Fire HD 8 2016 -- έως Fire OS 5.3.6.4 έκδοση 626533320 μόνο
- Amazon Fire HD 8 2017 -- έως Fire OS 5.6.4.0 build 636558520 μόνο
- Amazon Fire HD 8 2018 -- μόνο μέχρι Fire OS 6.3.0.1
- Amazon Fire HD 10 2017 -- έως Fire OS 5.6.4.0 build 636558520 μόνο
- Amazon Fire HD 10 2019 -- μόνο μέχρι Fire OS 7.3.1.0
- Amazon Fire TV 2 -- έως Fire OS 5.2.6.9 μόνο
- ASUS ZenFone Max Plus X018D
- ASUS ZenPad 3s 10 Z500M
- Σειρά βασισμένη σε ASUS ZenPad Z3xxM(F) MT8163
- Barnes & Noble NOOK Tablet 7" BNTV450 & BNTV460
- Barnes & Noble NOOK Tablet 10.1" BNTV650
- Blackview A8 Max
- Blackview BV9600 Pro (Helio P60)
- BLU Life Max
- BLU Life One X
- Σειρά BLU R1
- BLU R2 LTE
- BLU S1
- BLU Tank Xtreme Pro
- BLU Vivo 8L
- BLU Vivo XI
- BLU Vivo XL4
- Bluboo S8
- BQ Aquaris M8
- CAT S41
- Coolpad Cool Play 8 Lite
- Dragon Touch K10
- Echo Feeling
- Gionee M7
- HiSense Infinity H12 Lite
- Huawei GR3 TAG-L21
- Huawei Y5II
- Σειρά Huawei Y6II MT6735
- Lava Iris 88S
- Σειρά Lenovo C2
- Lenovo Tab E8
- Lenovo Tab2 A10-70F
- LG K8+ (2018) X210ULMA (MTK)
- LG K10 (2017)
- LG Tribute Dynasty
- LG X power 2/M320 series (MTK)
- LG Xpression Plus 2/K40 σειρά LMX420
- Lumigon T3
- Meizu M5c
- Meizu M6
- Meizu Pro 7 Plus
- Nokia 1
- Nokia 1 Plus
- Nokia 3
- Nokia 3.1
- Nokia 3.1 Plus
- Nokia 5.1
- Nokia 5.1 Plus/X5
- Onn 7" Android tablet
- Onn 8" & 10" σειρές tablet (MT8163)
- OPPO A5s
- OPPO F5 series/A73 -- Μόνο Android 8.x
- Σειρά OPPO F7 -- μόνο Android 8.x
- Σειρά OPPO F9 -- μόνο Android 8.x
- Oukitel K12
- Προεξοχή D7
- Realme 1
- Sony Xperia C4
- Σειρά Sony Xperia C5
- Sony Xperia L1
- Sony Xperia L3
- Σειρά Sony Xperia XA
- Σειρά Sony Xperia XA1
- Southern Telecom Smartab ST1009X (MT8167)
- TECNO Spark 3 σειρά
- Σειρά Umidigi F1
- Umidigi Power
- Wiko Ride
- Wiko Sunny
- Wiko View3
- Σειρά Xiaomi Redmi 6/6A
- ZTE Blade A530
- ZTE Blade D6/V6
- ZTE Quest 5 Z3351S
Διαβάστε περισσότερα
Με εξαίρεση τα τηλέφωνα που βασίζονται σε MediaTek από τα Vivo, Huawei/Honor (μετά το Android 8.0+), OPPO (μετά το Android 8.0+) και Η Samsung, τα μέλη της κοινότητας XDA διαπίστωσαν ότι το MediaTek-su λειτουργεί πιο συχνά όταν επιχειρείται σε συσκευές με επηρεασμένες συσκευές chipsets. Σύμφωνα με το XDA Member diplomatic, οι συσκευές Vivo, Huawei/Honor, OPPO και Samsung "χρησιμοποιούν τροποποιήσεις πυρήνα για να αποτρέψουν την πρόσβαση root μέσω exploits", πράγμα που σημαίνει ότι ο προγραμματιστής θα πρέπει να ψάξει στον πηγαίο κώδικα του πυρήνα αυτών των συσκευών για να δημιουργήσει "προσαρμοσμένες εκδόσεις[ες]" του εκμεταλλεύομαι. Αυτό δεν άξιζε την προστιθέμενη προσπάθεια, επομένως ο προγραμματιστής επέλεξε να μην προσθέσει υποστήριξη για αυτές τις συσκευές, παρόλο που, "θεωρητικά", το exploit μπορούσε να λειτουργήσει.
Μέχρι στιγμής, θα πρέπει να είναι σαφές ότι αυτό το exploit επηρεάζει μεγάλο αριθμό συσκευών στην αγορά. Τα τσιπ MediaTek τροφοδοτούν εκατοντάδες οικονομικά και μεσαίας κατηγορίας μοντέλα smartphone, φθηνά tablet και εκτός επωνυμίας αποκωδικοποιητές, οι περισσότεροι από τους οποίους πωλούνται χωρίς την προσδοκία έγκαιρων ενημερώσεων από τον κατασκευαστή. Πολλές συσκευές που εξακολουθούν να επηρεάζονται από το MediaTek-su είναι επομένως απίθανο να λάβουν μια επιδιόρθωση για εβδομάδες ή μήνες μετά τη σημερινή αποκάλυψη, εάν λάβουν κάποια λύση. Τι κάνει λοιπόν το MediaTek-su να κερδίσει την «Κρίσιμη» σοβαρότητά του με α CVSS v3.0 βαθμολογία 9,3;
Γιατί το MTK-su είναι μια κρίσιμη ευπάθεια ασφαλείας
Για να επαναλάβουμε, ο τυπικός τρόπος για να επιτύχετε πρόσβαση root σε μια συσκευή Android είναι να ξεκλειδώσετε πρώτα τον bootloader, ο οποίος απενεργοποιεί την επαλήθευση του διαμερίσματος εκκίνησης. Μόλις ξεκλειδωθεί ο bootloader, ο χρήστης μπορεί να εισαγάγει ένα δυαδικό αρχείο superuser στο σύστημα και επίσης μια εφαρμογή διαχείρισης superuser για να ελέγξει ποιες διεργασίες έχουν πρόσβαση στο root. Το ξεκλείδωμα του bootloader απενεργοποιεί σκόπιμα ένα από τα βασικά χαρακτηριστικά ασφαλείας της συσκευής, γι' αυτό ο χρήστης πρέπει να επιτρέψτε ρητά να συμβεί ενεργοποιώντας συνήθως μια εναλλαγή στις Επιλογές προγραμματιστή και, στη συνέχεια, εκδίδοντας μια εντολή ξεκλειδώματος στο bootloader. Με το MediaTek-su, ωστόσο, ο χρήστης δεν χρειάζεται να ξεκλειδώσει τον bootloader για να αποκτήσει πρόσβαση root. Αντίθετα, το μόνο που έχουν να κάνουν είναι να αντιγράψουν ένα σενάριο στη συσκευή τους και να το εκτελέσουν σε κέλυφος. Ωστόσο, ο χρήστης δεν είναι ο μόνος που μπορεί να το κάνει αυτό. Οποιαδήποτε εφαρμογή στο τηλέφωνό σας μπορεί να αντιγράψει το σενάριο MediaTek-su στον ιδιωτικό κατάλογο και στη συνέχεια να το εκτελέσει για να αποκτήσει πρόσβαση root στο κέλυφος. Μάλιστα, Μέλος XDA διπλωματικό τονίζει αυτή τη δυνατότητα στο νήμα του φόρουμ τους όταν προτείνουν ένα εναλλακτικό σύνολο οδηγιών χρησιμοποιώντας είτε το Terminal Emulator για την εφαρμογή Android ή Termux αντί της ADB.
Με την πρόσβαση root, το μοντέλο ασφαλείας του Android ουσιαστικά καταρρέει. Για παράδειγμα, τα δικαιώματα δεν έχουν νόημα στο πλαίσιο του root, καθώς μια εφαρμογή με πρόσβαση σε ένα κέλυφος root μπορεί να παραχωρήσει στον εαυτό της όποια άδεια θέλει. Επιπλέον, με ένα ριζικό κέλυφος, το σύνολο του διαμερίσματος δεδομένων—συμπεριλαμβανομένων των αρχείων που είναι αποθηκευμένα στους τυπικά απρόσιτους ιδιωτικούς καταλόγους δεδομένων των εφαρμογών— είναι προσβάσιμο. Μια εφαρμογή με root μπορεί επίσης να εγκαταστήσει αθόρυβα όποια άλλη εφαρμογή θέλει στο παρασκήνιο και στη συνέχεια να της εκχωρήσει όποια δικαιώματα χρειάζονται για να παραβιάσει το απόρρητό σας. Σύμφωνα με το XDA Recognized Developer topjohnwu, μια κακόβουλη εφαρμογή μπορεί ακόμη και να "εισάγει κώδικα απευθείας στο Zygote χρησιμοποιώντας το ptrace", που σημαίνει ότι μια κανονική εφαρμογή στη συσκευή σας θα μπορούσε να κλαπεί για να κάνει την προσφορά του εισβολέα. Αυτά τα παραδείγματα αφορούν μόνο μερικούς τρόπους με τους οποίους μια εφαρμογή μπορεί να παραβιάσει την εμπιστοσύνη σας στο παρασκήνιο χωρίς να το γνωρίζετε. Ωστόσο, κακόβουλες εφαρμογές μπορούν να προκαλέσουν όλεθρο στη συσκευή σας χωρίς να κρύβουν τι κάνουν. Το Ransomware, για παράδειγμα, είναι επακρώς Ισχυρό με πρόσβαση root. Εάν δεν πληρώσετε, μια υποθετική εφαρμογή ransomware θα μπορούσε ολοκληρωτικά και αμετάκλητα Κάντε τη συσκευή σας εκτός λειτουργίας, σκουπίζοντας ολόκληρη τη συσκευή.
Η μόνη «αδυναμία» στο MediaTek-su είναι ότι παραχωρεί σε μια εφαρμογή απλώς «προσωρινή» πρόσβαση root, πράγμα που σημαίνει ότι μια διεργασία χάνει την πρόσβαση του υπερχρήστη μετά την επανεκκίνηση της συσκευής. Επιπλέον, σε συσκευές με Android 6.0 Marshmallow και νεότερη έκδοση, η παρουσία του Επαληθευμένη εκκίνηση και dm-verity μπλοκ τροποποιήσεων σε κατατμήσεις μόνο για ανάγνωση όπως σύστημα και προμηθευτής. Ωστόσο, αυτοί οι δύο παράγοντες αποτελούν ως επί το πλείστον μόνο εμπόδια για τους modders στα φόρουμ μας και όχι για κακόβουλους ηθοποιούς. Για να ξεπεραστεί ο περιορισμός της προσωρινής ρίζας, μια κακόβουλη εφαρμογή μπορεί απλώς να ξανατρέξει το σενάριο MediaTek-su σε κάθε εκκίνηση. Από την άλλη πλευρά, δεν υπάρχει καμία ανάγκη να ξεπεραστεί το dm-verity καθώς οι μόνιμες τροποποιήσεις στο σύστημα ή στα διαμερίσματα προμηθευτών είναι απίθανο να ενδιαφέρουν τους περισσότερους δημιουργούς κακόβουλου λογισμικού. άλλωστε υπάρχουν ήδη τόνους των πραγμάτων που μπορεί να κάνει μια κακόβουλη εφαρμογή με ένα κέλυφος root.
Αν αναρωτιέστε σε τεχνικό επίπεδο τι εκμεταλλεύεται η MediaTek-su, η MediaTek μοιράστηκε μαζί μας το παρακάτω γράφημα που συνοψίζει το σημείο εισόδου. Το ελάττωμα προφανώς υπάρχει σε ένα από τα προγράμματα οδήγησης Linux Kernel της MediaTek που ονομάζεται "CMDQ". Η περιγραφή αναφέρει ότι, «εκτελώντας το IOCTL εντολές στον [τον] κόμβο συσκευής CMDQ», ένας τοπικός εισβολέας μπορεί να «διαβάσει/εγγράψει αυθαίρετα τη φυσική μνήμη, να απορρίψει [τον] πίνακα συμβόλων του πυρήνα στον προκατανεμημένη προσωρινή μνήμη DMA, [και] χειριστείτε την προσωρινή μνήμη DMA για να τροποποιήσετε τις ρυθμίσεις του πυρήνα για να απενεργοποιήσετε το SELinux και να κλιμακώσετε σε "root" προνόμιο."
Σύμφωνα με το γράφημα που μοιράστηκε μαζί μας η MediaTek, αυτή η ευπάθεια επηρεάζει τις συσκευές MediaTek με εκδόσεις Linux Kernel 3.18, 4.4, 4.9 ή 4.14 με εκδόσεις Android 7 Nougat, 8 Oreo ή 9 Pie. Η ευπάθεια δεν είναι εκμεταλλεύσιμη σε συσκευές MediaTek με Android 10, προφανώς, καθώς "η άδεια πρόσβασης του CMDQ Οι κόμβοι της συσκευής επιβάλλονται επίσης από το SELinux." Αυτός ο μετριασμός πιθανότατα προέρχεται από μια ενημέρωση στο BSP της MediaTek και όχι από το Android εαυτό. Το μόνο μετριασμό του Android 10 για αυτήν την ευπάθεια είναι το δικό του περιορισμός στις εφαρμογές που εκτελούν δυαδικά αρχεία στον αρχικό τους κατάλογο; Ωστόσο, όπως σημειώνει ο XDA Recognized Developer topjohnwu, μια κακόβουλη εφαρμογή μπορεί απλώς να εκτελέσει τον κώδικα MediaTek-su σε μια δυναμική βιβλιοθήκη.
Παρόλο που η MediaTek έχει επιδιορθώσει αυτό το ζήτημα σε όλα τα chipset που επηρεάζονται, δεν μπορούν να αναγκάσουν τους κατασκευαστές συσκευών να εφαρμόσουν τις ενημερώσεις κώδικα. Η MediaTek μας είπε ότι είχαν έτοιμα patches τον Μάιο του 2019. Η Amazon, όπως ήταν αναμενόμενο, επιδιορθώθηκε αμέσως το ζήτημα σε όλες τις συσκευές της μόλις ενημερώθηκαν. Ωστόσο, έχουν περάσει 10 μήνες από τότε που η MediaTek διέθεσε μια επιδιόρθωση στους συνεργάτες της Τον Μάρτιο του 2020, δεκάδες κατασκευαστές OEM δεν έχουν επιδιορθώσει τις συσκευές τους. Οι περισσότερες από τις επηρεαζόμενες συσκευές είναι σε παλαιότερες εκδόσεις Android με ξεπερασμένα επίπεδα ενημερωμένης έκδοσης κώδικα ασφαλείας Android (SPL) και η κατάσταση ενημέρωσης είναι ακόμη χειρότερη αν λάβετε υπόψη το εκατοντάδες λιγότερο γνωστών μοντέλων συσκευών που χρησιμοποιούν αυτά τα τσιπ MediaTek. Η MediaTek έχει ένα σοβαρός πρόβλημα στο χέρι του εδώ, επομένως έχουν στραφεί στην Google για βοήθεια.
Σε αντίθεση με την MediaTek, η Google μπορώ αναγκάζουν τους OEM να ενημερώσουν τις συσκευές τους μέσω συμφωνίες άδειας χρήσης ή όρους προγράμματος (όπως το Android One). Για να δηλώσει ένας OEM ότι μια συσκευή συμμορφώνεται με το Επίπεδο Ενημερωμένης έκδοσης κώδικα ασφαλείας 2020-03-05 (SPL), η συσκευή πρέπει να περιλαμβάνει όλο το πλαίσιο, Διορθώσεις πυρήνα Linux και ισχύοντες προμηθευτές προγραμμάτων οδήγησης στο Ενημερωτικό δελτίο ασφαλείας Android του Μαρτίου 2020, το οποίο περιλαμβάνει μια ενημέρωση κώδικα για το CVE-2020-0069 ή MediaTek-su. (Η Google στην πραγματικότητα δεν φαίνεται να το επιβάλλει αυτό Οι OEM στην πραγματικότητα συγχωνεύουν όλες τις ενημερώσεις κώδικα Όταν δηλώνετε ένα συγκεκριμένο SPL, όμως.) Τώρα που κυκλοφόρησε το δελτίο Μαρτίου 2020, αυτή η ιστορία θα πρέπει να τελειώσει, σωστά; Δυστυχώς, πρέπει επίσης να κρατήσουμε τα πόδια της Google στη φωτιά επειδή σέρνουν τα πόδια της για την ενσωμάτωση των μπαλωμάτων.
Το ελάττωμα στη διαδικασία ενημέρωσης κώδικα ασφαλείας
Σε περίπτωση που δεν είναι ήδη σαφές, δεν χρειάζεται κάθε ευπάθεια ασφαλείας να καταλήγει σε ένα ενημερωτικό δελτίο ασφαλείας Android. Πολλά τρωτά σημεία ανακαλύπτονται και διορθώνονται από προμηθευτές χωρίς να εμφανίζονται ποτέ στο μηνιαίο δελτίο. Το MediaTek-su θα έπρεπε να ήταν ένα από αυτά, αλλά για πολλούς λόγους, αρκετοί OEM απέτυχαν να ενσωματώσουν τις ενημερώσεις κώδικα που προσφέρει η MediaTek. (Υπάρχουν πολλοί πιθανοί λόγοι, που κυμαίνονται από έλλειψη πόρων έως επιχειρηματικές αποφάσεις έως αποτυχία στην επικοινωνία.) Όταν προηγουμένως δήλωσε ότι η MediaTek "στράφηκε στην Google" για βοήθεια, υπονοούσε ότι η MediaTek ζήτησε ενεργά βοήθεια από την Google για να πείσει τους OEM να επιδιορθώσουν τελικά συσκευές. Ωστόσο, μπορεί στην πραγματικότητα να μην ήταν έτσι. Καταλαβαίνω ότι η Google αγνοούσε το MediaTek-su μέχρι που τυχαία αναφέρθηκε σε μια αναφορά ασφαλείας από TrendMicro δημοσιεύθηκε στις 6 Ιανουαρίου 2020. Στην έκθεση, TrendMicro τεκμηριώνει αλλο ευπάθεια ασφαλείας, που ονομάζεται "χρήση μετά τη δωρεάν στο πρόγραμμα οδήγησης συνδετήρων" ευπάθεια, που εκμεταλλευόταν ενεργά στην άγρια φύση. TrendMicro σημείωσε πώς τρεις κακόβουλες εφαρμογές απέκτησαν πρόσβαση root χρησιμοποιώντας μία από τις δύο μεθόδους, είτε την ευπάθεια "χρήση μετά τη δωρεάν στο πρόγραμμα οδήγησης βιβλιοδέτη" είτε το MediaTek-su.
Στον κώδικα που TrendMicro κοινόχρηστο, μπορούμε να δούμε ξεκάθαρα πώς οι κακόβουλες εφαρμογές στόχευαν συγκεκριμένα μοντέλα συσκευών (π.χ. Nokia 3, OPPO F9 και Redmi 6A) και χρησιμοποιεί το MediaTek-su σε αυτά.
Δεν μπορώ να μιλήσω για TrendMicro, αλλά φαίνεται ότι δεν γνώριζαν ότι το MediaTek-su ήταν ένα ακόμη μη επιδιορθωμένο exploit. Η εστίασή τους ήταν τελικά στο exploit "μετά τη χρήση σε οδηγό βιβλιοδέτη", και η ανακάλυψη της χρήσης του MediaTek-su φαίνεται να ήταν μια εκ των υστέρων σκέψη. (Είμαι σίγουρος ότι αν TrendMicro γνώριζαν την κατάσταση γύρω από την MediaTek-su, θα είχαν συντονίσει τις προσπάθειές τους για αποκάλυψη με την Google.) Ενημερωθήκαμε μόνο για αυτή την εκμετάλλευση του εαυτού μας στις 5 Φεβρουαρίου 2020 και αφού ερευνήσαμε μόνοι μας πόσο κακό ήταν, επικοινωνήσαμε με την Google σχετικά με αυτό στις 7 Φεβρουαρίου, 2020. Η Google ανησυχούσε τόσο πολύ για τις επιπτώσεις της δημοσιοποίησης της MediaTek-su που μας ζήτησαν να σταματήσουμε τη δημοσίευση αυτής της ιστορίας μέχρι σήμερα. Αφού εξετάσουμε την ανεπανόρθωτη ζημιά που μπορεί να προκληθεί σε χρήστες που στοχοποιούνται από κακόβουλο λογισμικό MediaTek-su, συμφωνήσαμε να σταματήσουμε αυτή την ιστορία μέχρι την ανακοίνωση του Android Μαρτίου 2020 Δελτίο Ασφαλείας. Ωστόσο, λαμβάνοντας υπόψη πόσο χρόνο θα χρειαστούν πολλές συσκευές για να λάβουν την πιο πρόσφατη ενημέρωση ασφαλείας, αν ποτέ πάρτε το καθόλου, είναι βέβαιο ότι θα υπάρχει ένας τόνος συσκευών ακόμα ευάλωτες στο MediaTek-su σε λίγους μήνες από τώρα. Αυτό θα πρέπει να είναι τρομακτικό για όποιον έχει μια ευάλωτη συσκευή.
Παρόλο που αυτή η πολύ σοβαρή, «κρίσιμη» ευπάθεια σοβαρότητας χρησιμοποιείται ενεργά στη φύση, μόνο η Google ενσωματώθηκε στην επιδιόρθωση για αυτό το ζήτημα στο ενημερωτικό δελτίο Μαρτίου 2020, το οποίο είναι περίπου 2 μήνες αφότου ενημερώθηκαν για το θέμα. Ενώ η Google ενημερώνει τους συνεργάτες Android σχετικά με το πιο πρόσφατο Δελτίο ασφαλείας Android 30 ολόκληρες ημέρες πριν από τη δημοσιοποίηση του ενημερωτικού δελτίου (δηλ. Οι OEM ενημερώθηκαν για το τι υπάρχει στο ενημερωτικό δελτίο Μαρτίου 2020 στις αρχές Φεβρουαρίου 2020), η Google μπορεί, και συχνά το κάνει, να ενημερώνει το ενημερωτικό δελτίο με αλλαγές ή νέες διορθώσεις. Το γιατί η Google δεν επέλεξε να επισπεύσει τη συμπερίληψη μιας ενημέρωσης κώδικα για ένα τόσο σοβαρό πρόβλημα με ξεπερνά, ειδικά όταν η MediaTek είχε μια επιδιόρθωση πριν από 10 μήνες. Εάν ανακαλύφθηκε ένα τέτοιο σφάλμα στις συσκευές της Apple, δεν έχω καμία αμφιβολία ότι θα είχαν εκδώσει μια διόρθωση πολύ, πολύ πιο γρήγορα. Η Google βασίστηκε ουσιαστικά στο ριψοκίνδυνο στοίχημα ότι η MediaTek-su θα παραμείνει τόσο χαμηλού προφίλ όσο ήταν ήδη μέχρι το δελτίο του Μαρτίου 2020. Ενώ η Google φαίνεται να στάθηκε τυχερή από αυτή την άποψη, δεν έχουμε ιδέα πόσοι δημιουργοί κακόβουλου λογισμικού γνωρίζουν ήδη για την εκμετάλλευση. Μετά από όλα, έχει καθίσει σε ένα τυχαίο νήμα φόρουμ XDA για σχεδόν έναν ολόκληρο χρόνο.
Υπάρχει ένα ακόμη συμβαλλόμενο μέρος σε αυτήν την καταστροφή που δεν έχω αναφερθεί πολύ, και είναι ο συγγραφέας του exploit, XDA Member diplomatic. Προς τιμήν του, δεν νομίζω ότι είχε καμία κακόβουλη πρόθεση να δημοσιεύσει το MediaTek-su. Μπορούμε ξεκάθαρα να εντοπίσουμε την προέλευση του exploit στην επιθυμία της διπλωματικής να τροποποιήσει τα tablet Amazon Fire. Ο Diplomatic μου λέει ότι ο πρωταρχικός του στόχος στην ανάπτυξη αυτής της ριζικής μεθόδου ήταν να βοηθήσει την κοινότητα. Η προσαρμογή της συσκευής σας είναι το θέμα του XDA και οι προσπάθειες της διπλωματικής στην κοινότητα είναι αυτό που απολαμβάνουν οι άνθρωποι στα φόρουμ. Αν και η άρνηση του διπλωματικού για το έργο ανοιχτού κώδικα εγείρει ορισμένες ανησυχίες, εξηγεί ότι ήθελε η κοινότητα να το απολαμβάνει αυτό έχοντας πρόσβαση root για όσο το δυνατόν περισσότερο. Όταν επικοινώνησα για πρώτη φορά με διπλωματικό, δήλωσε επίσης ότι συνεργαζόταν με κάποιους εταίρους που τον εμπόδισαν να μοιραστεί τον πηγαίο κώδικα και την έρευνα του έργου. Αν και δεν μπόρεσα να μάθω περισσότερες λεπτομέρειες σχετικά με αυτήν τη συνεργασία, αναρωτιέμαι αν η diplomatic θα είχε επιλέξει να δημοσιοποιηθεί με αυτό το exploit εάν η MediaTek πρόσφερε ένα πρόγραμμα bounty bug. Δεν μπορώ να φανταστώ ότι μια ευπάθεια αυτού του μεγέθους δεν θα πλήρωνε ένα τεράστιο χρηματικό ποσό εάν η MediaTek είχε πράγματι ένα τέτοιο πρόγραμμα. Η Diplomatic ισχυρίζεται ότι αυτή η εκμετάλλευση ήταν δυνατή από το chipset MediaTek MT6580 στα τέλη του 2015, οπότε πρέπει να αναρωτηθεί κανείς εάν η diplomatic είναι ακόμη και το πρώτο άτομο που θα βρει αυτό το exploit. Μου λέει ότι δεν είχε ιδέα ότι η MediaTek-su γινόταν ενεργή εκμετάλλευση μέχρι τη δημοσίευση αυτού του άρθρου.
Εάν θέλετε να ελέγξετε εάν η συσκευή σας είναι ευάλωτη στο MediaTek-su, τότε εκτελέστε μη αυτόματα το σενάριο που δημοσιεύτηκε από το XDA Member diplomatic σε αυτό το νήμα του φόρουμ XDA. Εάν εισαγάγετε ένα ριζικό κέλυφος (θα ξέρετε πότε το σύμβολο αλλάζει από $ σε #), τότε θα ξέρετε ότι το exploit λειτουργεί. Εάν λειτουργεί, τότε θα πρέπει να περιμένετε μέχρι ο κατασκευαστής της συσκευής σας να κυκλοφορήσει μια ενημέρωση που διορθώνει το MediaTek-su. Εάν η συσκευή σας αναφέρει το Επίπεδο Ενημερωμένης έκδοσης κώδικα ασφαλείας του 2020-03-05, το οποίο είναι το πιο πρόσφατο SPL του Μαρτίου 2020, τότε είναι σχεδόν βέβαιο ότι προστατεύεται από το MediaTek-su. Διαφορετικά, θα πρέπει απλώς να ελέγξετε εάν η συσκευή σας είναι ευάλωτη.
Ενημέρωση 1 (3/2/2020 @ 9:45 μ.μ. EST): Αυτό το άρθρο ενημερώθηκε για να διευκρινιστεί ότι ο διπλωματικός μέλος του XDA γνώριζε πραγματικά το εύρος αυτής της ευπάθειας μόλις το ανακάλυψε τον Φεβρουάριο του 2019, αλλά ότι δεν γνώριζε τη χρήση του exploit στην άγρια φύση μέχρι τη δημοσίευση αυτού άρθρο. Διορθώσαμε επίσης τη διατύπωσή μας σχετικά με έναν λόγο για τον οποίο η diplomatic αρνήθηκε να κοινοποιήσει τον πηγαίο κώδικα του έργου.