Решавање пропуста у вези са Отимањем шеме намере

Ове информације су намењене програмерима са апликацијама које садрже пропуст у вези са Отимањем шеме намере.

Шта се дешава

Једна апликација или више њих садржe проблем у вези са Отимањем шеме намере, што злонамерним мрежама и веб-сајтовима може да омогући да приступају приватним компонентама апликација.Погледајте обавештење у Play конзоли. Уклонићемо из Google Play-а све апликације које и после датума наведених у Play конзоли буду садржале безбедносне пропусте.

Треба да реагујете

  1. Пријавите се у Play конзолу и идите до одељка Обавештења да бисте видели које апликације су угрожене и рокове за решавање тих проблема.

  2. Ажурирајте апликације на које се ово односи помоћу корака наведених у наставку.

  3. Пошаљите ажуриране верзије апликација на које се ово односи.

Када је поново пошаљете, апликација ће поново бити прегледана. Овај процес може да потраје неколико сати. Ако апликација прође преглед и буде објављена, не треба ништа више да предузимате. Ако апликација не прође преглед, онда нова верзија апликације неће бити објављена, а ви ћете добити обавештење имејлом.

Додатне информације

WebViews-ови који посећују непоуздан веб-садржај, рашчлањују линкове intent:// помоћу URI-ја Intent.parseUri и шаљу те намере помоћу startActivity садрже пропусте у вези са Отимањем шеме намере. Злонамерни веб-садржај може да превари ове WebViews-ове да шаљу насумичне намере приватним компонентама апликација. То може да доведе до угрожавања апликација, као што је крађа приватних података о апликацијама којима те компоненте управљају. Имајте на уму да непоуздан веб-садржај укључује садржај са поузданих домена који се учитава преко HTTP-а.

Препоручујемо вам да спречите овај пропуст на један од следећих начина:

1. опција: Уверите се да WebView-ови не могу да шаљу насумичне намере

Апликације могу да ограничавају намере конструисане помоћу URI-ја Intent.parseUri тако да се шаљу само као Implicit Intents компонентама са филтерима намене са категоријом ЗА ПРЕГЛЕД помоћу кода у наставку:

     // convert Intent scheme URL to Intent object
  Intent intent = Intent.parseUri(url);
  // forbid launching activities without BROWSABLE category
  intent.addCategory("android.intent.category.BROWSABLE");
  // forbid explicit call
  intent.setComponent(null);
  // forbid Intent with selector Intent
  intent.setSelector(null);
  // start the activity by the Intent
  view.getContext().startActivity(intent, -1);

2. опција: Уверите се да WebView-ови не учитавају непоуздан веб-садржај

Ако WebView мора да рашчлањује насумичне шеме URL-ова intent://, уверите се да не учитава непоуздан веб-садржај. Непоуздани веб-садржај обухвата веб-садржај учитан преко везе које није шифрована. Програмери могу да подесе android:usesCleartextTraffic на Нетачно у манифесту или да подесе Network Security Config која не дозвољава HTTP саобраћај. Могу и да се увере да ниједан WebView са опасним подешавањима не учитава ниједан URL са HTTP шемама помоћу URL-а loadUrl.

Препоручујемо да се програмери увере да угрожени WebView-ови не учитавају неограничене URL-ове који су добијени из непоузданих извора (на пример, URL-ови добијени од непоузданих намера). 

Ту смо да помогнемо
Ако имате техничких питања у вези са пропустом, можете да их поставите на Stack Overflow помоћу ознаке „android-security“. Да бисте разјаснили кораке које треба да предузмете да бисте решили овај проблем, можете да контактирате тим подршке за програмере.

false
Главни мени
18074372600781723272
true
Центар за помоћ за претрагу
true
true
true
true
true
5016068
false
false