Устранение уязвимости к внедрению SQL-кода

Эта информация предназначена для разработчиков, чьи приложения уязвимы перед внедрением SQL-кода.

Что происходит

Одно или несколько ваших приложений уязвимы перед внедрением SQL-кода. Это необходимо исправить до наступления даты, которая указана в уведомлении в Play Console. В противном случае приложения, содержащие неисправленные уязвимости, могут быть удалены из Google Play.

Что нужно сделать

  1. Чтобы узнать, какие приложения уязвимы и в какой срок нужно устранить проблему, войдите в Play Console и откройте раздел "Оповещения".
  2. Устраните уязвимость, внеся изменения в затронутые ей приложения.
  3. Опубликуйте обновленные версии приложений.

После этого мы проведем повторную проверку, которая может занять несколько часов. Если мы убедимся, что уязвимость устранена, то опубликуем приложение и дополнительных действий с вашей стороны не потребуется. В противном случае новая версия не будет опубликована, а вы получите уведомление по электронной почте.

Сведения об уязвимости

Использование методов query, update и delete в экспортируемых классах ContentProvider может привести к внедрению SQL-кода, если в необработанные инструкции SQL включены внешние ненадежные данные. В результате вредоносное ПО может получить доступ к личной информации или повредить базу данных. Эту проблему можно решить способами, приведенными ниже.

Если затронутый класс ContentProvider не должен быть доступен другим приложениям:

Если затронутый класс ContentProvider должен быть доступен другим приложениям:

  • Предотвратить внедрение SQL-кода в класс SQLiteDatabase.query можно, воспользовавшись режимом strict и картой проекций. Этот режим защитит класс от вредоносных предложений выбора, а карта проекций – от вредоносных предложений проекции. Используйте оба способа, чтобы обеспечить безопасность запросов.
  • Чтобы предотвратить внедрение SQL-кода в классы SQLiteDatabase.update и SQLiteDatabase.delete, используйте предложение выбора c заменяемым параметром "?" и отдельный массив аргументов выбора. Предложение выбора не должно включать ненадежные внешние данные.

Как получить помощь

Если у вас есть вопросы, задайте их, используя тег android-security. Чтобы получить более подробные разъяснения, свяжитесь с командой поддержки для разработчиков.

Эта информация оказалась полезной?

Как можно улучшить эту статью?
false
Главное меню
16882327584227249336
true
Поиск по Справочному центру
false
true
true
true
true
true
5016068
false
false
false
false
false