Действия при разкриване на ключове за сървъра на „Съобщения в облака на Firebase“ (FCM)

Тази информация е предназначена за програмисти, чиито приложения съдържат разкрити ключове за сървъра на FCM.

Какво се случва

Едно или повече от приложенията ви съдържат разкрити ключове за сървъра на FCM. Възможно е злонамерен хакер да използва разкритите ключове с цел изпращане на насочени известия до всички потребители на уязвимото ви приложение. Той ще има контрол над съответното съдържание, което може да е най-различно – например обидни съобщения или смущаващи изображения. Моля, прегледайте подробните стъпки по-долу, за да отстраните проблема. Местата в приложението ви, които разкриват ключове за сървъра на FCM, могат да бъдат намерени в известието от Play Console.

Изисква се действие

  1. Актуализирайте приложението си и разкритите ключове за FCM, като изпълните посочените по-долу стъпки.

    1. Ако сте активирали предишната версия на API на FCM за приложението си и не я използвате за изпращане на насочени известия, деактивирайте тази версия.
    2. В случай че сте активирали предишната версия на API на FCM и я използвате за изпращане на насочени известия, можете да предприемете някоя от следните две стъпки:
      1. Мигрирайте към версия 1 на API на FCM и деактивирайте предишната (препоръчително).
      2. Защитете начина, по който използвате предишната версия на API на FCM, като направите следното:
        1. Ако използвате разкрития ключ само за API на FCM: 
          1. Генерирайте нов ключ, като отворите Firebase Console > Project settings > Cloud Messaging и кликнете върху Add Server Key. Използвайте го, за да изпращате съобщения в FCM от защитения си сървър. Този ключ трябва да бъде използван само от защитения ви сървър и не бива да е включен в кода на клиентската ви програма (напр. приложения или двоични кодове).
          2. След като започнете да използвате новогенерирания ключ за изпращане на съобщения в FCM, изтрийте разкритите ключове за сървъра от конзолата на GCP. В имейла с известие от Google Play можете да откриете местата в приложението, където има разкрити ключове за сървъра на FCM. В стъпка c. е описано как да получите разкритите ключове от тези места.
        2. Ако използвате разкрития ключ за други приложни програмни интерфейси, включително API на FCM, направете следното:
          1. Мигрирайте към версия 1 на API на FCM и деактивирайте предишната.
          2. За да подсигурите бъдещата употреба на други API, препоръчваме да не използвате разкрития ключ за тях и евентуално да го изтриете от конзолата на GCP.
    3. След като изпълните една от стъпките по-горе, изтрийте от кода на приложението си разкрития ключ за сървъра на FCM. В имейла с известие от Google Play можете да откриете местата в приложението, където има разкрити ключове за сървъра на FCM. За да получите тези ключове, проверете уязвимото място в кода на приложението си. Ключът може да е вграден на съответното място като низ или да се зарежда там от XML ресурсите на приложението ви. Във втория случай разгледайте файла res/values/strings.xml, за да получите разкрития ключ. Моля, имайте предвид следното:
      • Ако изпълните стъпките по-горе, но не изтриете разкритите ключове от приложението си, ще продължите да получавате известия за уязвимост в електронната си поща или в профила си в Google Play Console.
      • В случай че изтриете разкритите ключове от приложението си, но не изпълните стъпките по-горе, не отстранявате проблема, тъй като хакерът може да открие ключа в по-стара версия на приложението ви и по този начин да извърши атака.

2. Изпратете актуализирания APK файл.

За да изпратите актуализиран пакет с приложения или APK файл:

  1. Отворете Play Console.
  2. Изберете приложението.
  3. Отворете инструмента за разглеждане на Android App Bundle.
  4. От падащото меню горе вдясно изберете версията на приложението с неспазващ правилата APK файл/Android App Bundle и запишете в кои версии се среща.
  5. Отворете канала, в който е проблемът с правилата. Това ще бъде една от следните 4 страници: „Вътрешно тестване“, „Затворено тестване“, „Отворено тестване“ или „Стандартен Канал“.
  6. Горе вдясно на страницата кликнете върху Създаване на нова версия. (Може да се наложи първо да кликнете върху „Управление на канала“.)
    • Ако версията с нарушаващия правилата APK файл е в състояние на чернова, отхвърлете я.
  7. Добавете спазващите правилата пакети с приложения или APK файлове.
    • Уверете се, че пакетите с приложения и APK файловете, които не спазват правилата, са в секцията Невключени на съответната версия. За допълнителни указания разгледайте секцията „Невключени (пакети с приложения и APK файлове)“ в тази помощна статия за Play Console.
  8. За да запазите промените, които направите във версията си, изберете Запазване.
  9. Когато приключите с подготвянето на версията си, изберете Преглед на публикуваната версия.

Ако неспазващият правилата APK файл е публикуван в няколко канала, повторете стъпки от 5 до 9 за всеки от тях.

При повторно изпращане приложението ви ще бъде прегледано отново. Този процес може да отнеме няколко часа. Ако приложението премине проверката и бъде публикувано успешно, няма нужда да правите нищо повече. В противен случай новата му версия няма да бъде публикувана и ще получите известие по имейл.

На ваше разположение сме

Ако имате технически въпроси относно уязвимостта, можете да ги публикувате в Stack Overflow и да използвате маркера android-security. За разяснение на стъпките, които трябва да изпълните, за да решите проблема, можете да се свържете с екипа ни за поддръжка за програмисти.

Главно меню
2492270372292380059
true
Търсене в Помощния център
true
true
true
true
true
5016068
false