Αυτές οι πληροφορίες προορίζονται για προγραμματιστές με εφαρμογές που περιέχουν ευπάθειες σε σενάρια μεταξύ εφαρμογών.
Τι συμβαίνει
Μία ή περισσότερες από τις εφαρμογές σας αντιμετωπίζουν κάποιο πρόβλημα με τα σενάρια μεταξύ εφαρμογών της Προβολής στον ιστό, το οποίο μπορεί να επιτρέψει σε κακόβουλες εφαρμογές να υποκλέψουν cookie χρήστη και άλλα δεδομένα. Ανατρέξτε στην ειδοποίηση στο Play Console. Μετά την πάροδο των προθεσμιών που εμφανίζονται στο Play Console, όλες οι εφαρμογές που περιέχουν ευπάθειες ασφαλείας που δεν έχουν αντιμετωπιστεί θα καταργηθούν από το Google Play.
Απαιτείται ενέργεια
- Συνδεθείτε στο Play Console και μεταβείτε στην ενότητα Ειδοποιήσεις, για να δείτε τις επηρεαζόμενες εφαρμογές και τις προθεσμίες για την επίλυση των σχετικών ζητημάτων.
- Ενημερώστε τις επηρεαζόμενες εφαρμογές και διορθώστε την ευπάθεια.
- Υποβάλετε τις ενημερωμένες εκδόσεις των επηρεαζόμενων εφαρμογών.
Κατά τη διάρκεια αυτής της περιόδου, η κατάσταση της νέας σας εφαρμογής ή ενημέρωσης εφαρμογής θα είναι εκκρεμεί δημοσίευση μέχρι να ελεγχθεί το αίτημά σας. Αν η εφαρμογή δεν έχει ενημερωθεί σωστά, θα εξακολουθείτε να βλέπετε την ειδοποίηση.
Πρόσθετα στοιχεία
Τα WebViews που χρησιμοποιούν JavaScript και φορτώνουν αναγνωσμένα δεδομένα από μη αξιόπιστα Intents μπορούν να εξαπατηθούν από κακόβουλες εφαρμογές και να εκτελέσουν κώδικα JavaScript σε μη ασφαλές περιβάλλον. Σας συνιστούμε να αποτρέψετε αυτήν την ευπάθεια με έναν από τους παρακάτω τρόπους:
Επιλογή 1: Βεβαιωθείτε ότι οι επηρεαζόμενες δραστηριότητες δεν εξάγονται
Βρείτε τις Δραστηριότητες με επηρεαζόμενες Προβολές στον ιστό. Εάν αυτές οι Δραστηριότητες δεν χρειάζεται να λαμβάνουν Intent από άλλες εφαρμογές, μπορείτε να ορίσετε την παράμετρο android:exported=false για τις Δραστηριότητες στο μανιφέστο σας. Με αυτόν τον τρόπο, διασφαλίζετε ότι οι κακόβουλες εφαρμογές δεν θα μπορούν να στείλουν επιβλαβή δεδομένα εισόδου σε οποιαδήποτε Προβολή στον ιστό σε αυτές τις Δραστηριότητες.
Επιλογή 2: Προστατεύστε τις Προβολές στον ιστό στις δραστηριότητες που εξάγονται
Εάν θέλετε να ορίσετε μια Δραστηριότητα με μια επηρεαζόμενη Προβολή στον ιστό ως δραστηριότητα που έχει εξαχθεί, σας συνιστούμε να κάνετε τις ακόλουθες αλλαγές:
- Προστατέψτε τις κλήσεις στις παραμέτρους evaluateJavascript και loadUrl
Βεβαιωθείτε ότι οι παράμετροι για το evaluateJavascript είναι πάντα αξιόπιστες. Η κλήση της παραμέτρου evaluateJavascript με τη χρήση μη ασφαλών δεδομένων εισόδου από μη αξιόπιστα Intent επιτρέπει στους υπεύθυνους επίθεσης να εκτελούν επιβλαβή σενάρια στην επηρεαζόμενη Προβολή στον ιστό. Ομοίως, η κλήση της παραμέτρου loadUrl με μη ασφαλή δεδομένα εισόδου που περιέχουν URL με σχήμα javascript: επιτρέπει στους υπεύθυνους επίθεσης να εκτελούν επιβλαβή σενάρια.
- Αποτρέψτε τις μη ασφαλείς φορτώσεις αρχείων
Βεβαιωθείτε ότι οι επηρεαζόμενες Προβολές στον ιστό δεν μπορούν να φορτώσουν τη βάση δεδομένων cookie. Οι Προβολές στον ιστό που φορτώνουν μη ασφαλή URL file:// από μη αξιόπιστα Intent μπορούν να δεχθούν επίθεση από κακόβουλες εφαρμογές σε δύο βήματα. Πρώτο βήμα: Μια κακόβουλη ιστοσελίδα μπορεί να εγγράψει ετικέτες <script> στη βάση δεδομένων cookie. Δεύτερο βήμα: Αυτό το τροποποιημένο αρχείο βάσης δεδομένων cookie μπορεί να φορτωθεί αν μια κακόβουλη εφαρμογή στείλει ένα Intent με ένα URL file:// που παραπέμπει στη βάση δεδομένων cookie της Προβολής στον ιστό ή αν η ίδια η κακόβουλη ιστοσελίδα ανακατευθύνει την Προβολή στον ιστό στο URL αρχείου. Θα φορτωθεί και θα εκτελεστεί η κακόβουλη ετικέτα <script> που είναι αποθηκευμένη στη βάση δεδομένων cookie, κάτι που μπορεί να οδηγήσει στην κλοπή των πληροφοριών της περιόδου σύνδεσης.
Μπορείτε να διασφαλίσετε ότι οι επηρεαζόμενες Προβολές στον ιστό δεν μπορούν να φορτώσουν τη βάση δεδομένων cookie της Προβολής στον ιστό με δύο τρόπους.
- Απενεργοποιήστε την πρόσβαση σε όλα τα αρχεία.
- Βεβαιωθείτε ότι η Προβολή στον ιστό φορτώνει μόνο τα URL file:// και επαληθεύστε ότι όλα τα φορτωμένα URL file:// παραπέμπουν σε ασφαλή αρχεία. Λάβετε υπόψη ότι ένας υπεύθυνος επίθεσης μπορεί να χρησιμοποιήσει έναν συμβολικό σύνδεσμο για να παραπλανήσει τους ελέγχους στη διαδρομή URL. Για να αποφύγετε μια τέτοια επίθεση, αντί απλώς να ελέγξετε τη διαδρομή URL, φροντίστε να ελέγξετε την κανονική διαδρομή κάθε μη αξιόπιστου URL file://.
- Αν θέλετε να επιτρέψετε URL http:// και URL file://, πραγματοποιήστε την επαλήθευση URL file:// χρησιμοποιώντας τις παραμέτρους shouldOverrideUrlLoading και shouldInterceptRequest στο WebViewClient. Με αυτόν τον τρόπο διασφαλίζεται ότι όλα τα URL που φορτώνονται στην Προβολή στον ιστό είναι επαληθευμένα και όχι μόνο τα URL που παρέχονται απευθείας σε μια κλήση συνάρτησης loadUrl().
Είμαστε εδώ για να σας βοηθήσουμε
Εάν έχετε τεχνικές ερωτήσεις σχετικά με την ευπάθεια, μπορείτε να τις δημοσιεύσετε στο Stack Overflow και να χρησιμοποιήσετε την ετικέτα android-security. Για διευκρινίσεις σχετικά με τα βήματα που πρέπει να ακολουθήσετε για την επίλυση του προβλήματος, μπορείτε να επικοινωνήσετε με την ομάδα υποστήριξης προγραμματιστών.