Αποκατάσταση για ευπάθεια εμβόλιμης προσθήκης διεπαφής JavaScript

Αυτές οι πληροφορίες προορίζονται για προγραμματιστές με εφαρμογές που περιέχουν την ευπάθεια εμβόλιμης προσθήκης διεπαφής JavaScript.

Τι συμβαίνει

Ανατρέξτε στην ειδοποίηση στο Play ConsoleΜετά την πάροδο των προθεσμιών που εμφανίζονται στο Play Console, όλες οι εφαρμογές που περιέχουν ευπάθειες ασφαλείας που δεν έχουν αντιμετωπιστεί, ενδέχεται να καταργηθούν από το Google Play.

Απαιτείται ενέργεια​

  1. Συνδεθείτε στο Play Console και μεταβείτε στην ενότητα Ειδοποιήσεις για να δείτε τις επηρεαζόμενες εφαρμογές και τις προθεσμίες για την επίλυση των σχετικών ζητημάτων.
  2. Ενημερώστε τις επηρεαζόμενες εφαρμογές και διορθώστε την ευπάθεια.
  3. Υποβάλετε τις ενημερωμένες εκδόσεις των επηρεαζόμενων εφαρμογών.

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

Πρόσθετα στοιχεία

Τα WebView που αποκαλύπτουν αντικείμενα σε επίπεδο εφαρμογής στον κώδικα JavaScript μέσω του addJavascriptInterface και φορτώνουν μη αξιόπιστο περιεχόμενο ιστού, είναι ευπαθή σε εμβόλιμη προσθήκη διεπαφής JavaScript. Το μη αξιόπιστο περιεχόμενο μπορεί να εκτελέσει όλες τις μεθόδους των εκτεθειμένων αντικειμένων που σχολιάστηκαν με το @JavascriptInterface, οδηγώντας σε απώλεια ή καταστροφή δεδομένων ή ακόμη και εκτέλεση αυθαίρετου κώδικα.

Σας συνιστούμε να αποτρέψετε αυτήν την ευπάθεια με έναν από τους παρακάτω τρόπους:

Επιλογή 1: Διασφαλίστε ότι τα WebView δεν προσθέτουν αντικείμενα στη διεπαφή JavaScript

Πρέπει να διασφαλίσετε ότι δεν έχουν προστεθεί αντικείμενα στη διεπαφή JavaScript οποιουδήποτε WebView που φορτώνει μη αξιόπιστο περιεχόμενο ιστού. Αυτό μπορεί να πραγματοποιηθεί με δύο τρόπους:

 

Διασφαλίστε ότι δεν προστίθενται ποτέ αντικείμενα στη διεπαφή JavaScript μέσω κλήσεων στο addJavascriptInterface.

  1. Καταργήστε αντικείμενα από τη διεπαφή JavaScript στο shouldInterceptRequest μέσω του removeJavascriptInterface πριν από τη φόρτωση μη αξιόπιστου περιεχομένου από το WebView.

Επιλογή 2: Διασφαλίστε ότι τα WebView δεν φορτώνουν μη αξιόπιστο περιεχόμενο ιστού

Εάν η εφαρμογή σας πρέπει να εκθέσει αντικείμενα στη διεπαφή JavaScript ενός WebView, πρέπει να διασφαλίσετε ότι το WebView δεν φορτώνει περιεχόμενο ιστού μέσω μιας μη κρυπτογραφημένης σύνδεσης. Μπορείτε να ορίσετε το android:usesCleartextTraffic σε false στο Manifest ή να ορίσετε ένα Network Security Config που αποκλείει την επισκεψιμότητα HTTP. Εναλλακτικά, μπορείτε να διασφαλίσετε ότι τυχόν επηρεαζόμενα WebView δεν φορτώνουν URL με σχήματα HTTP μέσω του loadUrl.


Διασφαλίστε ότι τα WebView με διεπαφές JavaScript δεν φορτώνουν μη ελεγμένα URL που λαμβάνονται από μη αξιόπιστες πηγές (για παράδειγμα, URL που αποκτήθηκαν από μη αξιόπιστα Intent).

Είμαστε εδώ, για να σας βοηθήσουμε

Εάν έχετε τεχνικές ερωτήσεις που αφορούν τη συγκεκριμένη ευπάθεια, μπορείτε να δημοσιεύσετε μια ανάρτηση στον ιστότοπο Stack Overflow και να χρησιμοποιήσετε την ετικέτα "android-security". Εάν επιθυμείτε διευκρινίσεις σχετικά με τα βήματα που πρέπει να ακολουθήσετε για την επίλυση αυτού του ζητήματος, επικοινωνήστε με την ομάδα υποστήριξης προγραμματιστών.

false
Κύριο μενού
173400426140032843
true
Αναζήτηση στο Κέντρο Βοήθειας
true
true
true
true
true
5016068
false
false