Как удалить уязвимости в докторе веб на андроид

Обновлено: 07.07.2024

ОС Android за небольшой промежуток времени стала одной из самых популярных систем для всевозможных мобильных устройств. Ее используют как крупные производители с мировым именем, так и небольшие компании, поэтому ценовой разброс готовой продукции, такой как смартфоны и планшетные компьютеры, позволяет удовлетворить потребности потребителей практически на сто процентов. Именно широкий ассортимент, гибкое ценообразование и поддержка платформы со стороны внушительного числа производителей стали одними из главных факторов успеха и позволили системе занять нынешнее положение на рынке.

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

Как и любая другая система, Android, к сожалению, не может быть полностью безопасной, так как люди, участвующие в разработке, никогда не смогут создать идеальный код. Тем не менее, разработчики прикладывают усилия для того, чтобы в конечном счете потребители получили качественный продукт. На примере Android мы можем наблюдать очередное подтверждение тому, что чем популярнее продукт, тем больше он подвержен атакам злоумышленников. Далее в этом материале мы подробно рассмотрим, каким угрозам подвержена эта операционная система и, как следствие, ее пользователи.

Вирусы для Android? Нет, не слышал!

Когда в августе 2010 года была обнаружена первая вредоносная программа для ОС Android, многие пользователи восприняли эту новость как некую попытку антивирусных компаний запугать их и вытянуть деньги за свои продукты. С течением времени число угроз для Android продолжало расти. С момента появления первого троянца прошло уже более полутора лет, но, несмотря на то, что в конце 2011 года количество вредоносных программ для этой платформы увеличилось как минимум в 20 раз, большое число пользователей до сих пор скептически относится к обсуждаемой проблеме.

image

Прочие вредоносные программы могут сочетать в себе различные функции, описанные выше.

image
image

Ряд модулей ведет себя слишком агрессивно, собирая конфиденциальную информацию пользователей (IMEI, номер телефона, название используемого оператора и т. п.), а также добавляя ярлыки на рабочий стол и закладки в браузер. Приложения, использующие подобные модули, детектируются как рекламные программы или Adware (например, Adware.Airpush, Adware.Leadbolt, Adware.Startapp и пр.).

image

image

Уязвимости операционной системы Android и ПО, которое в ней используется

Архитектура Android построена таким образом, что все приложения работают с ограниченными правами и не имеют доступа к защищенным данным других приложений.
Как уже отмечалось выше, Android — не идеальная система, поэтому неудивительно, что в ней встречаются уязвимости. Одна из главных проблем, с которыми могут столкнуться пользователи, — уязвимости системы, позволяющие получить права root. Существуют специальные приложения, скрипты и программные модули, выполняющие эту задачу. В повседневной жизни подобные вещи пользователям не страшны, так как чаще всего их используют осознанно для получения большего контроля над устройством. Другое дело, что эти же уязвимости (например, CVE-2009-1185, CVE-2011-1823) взяли на вооружение создатели вредоносных приложений. Используя эксплойты (те самые программные модули и скрипты) для повышения своих прав до уровня root, они получают возможность, например, беспрепятственно устанавливать другие программы без разрешения пользователя (как это делают различные модификации Android.Gongfu и Android.DreamExploid). Некоторые вредоносные программы не используют эксплойты сами, напрямую, а вводят пользователя в заблуждение и побуждают его самого выполнить необходимые действия, тем самым дав вредоносной программе требуемые ей возможности.

Угрозу также может представлять использование неофициальных или сторонних прошивок. Поводов для беспокойства здесь несколько. Во-первых, в такие прошивки изначально могут быть встроены вредоносные программы. Во-вторых, когда цифровой подписью образа системы подписывается какое-либо приложение, оно получает те же права, что и сама система, в которой оно работает. В рамках Android Open Source Project (AOSP) подписи для образов являются приватными, поэтому такой сценарий возможен, например, в случае кражи соответствующей подписи. Подобный способ заражения применялся, в частности, вредоносной программой Android.SmsHider, которая могла незаметно для пользователей, использующих определенные сторонние прошивки, установить содержащийся в ней троянский apk.

Системные приложения, как стандартные, так и приложения от поставщиков Android-устройств, тоже подвержены уязвимостям. Например, некоторые уязвимости браузера WebKit позволяют потенциальным вредоносным программам выполнить произвольный JavaScript-код и получить доступ к защищенным данным браузера.

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

Открытость системы Android заключается в нескольких факторах. Во-первых, это доступность кода, который может быть использован, модифицирован и улучшен разработчиками в зависимости от их потребностей и идей. С одной стороны, для производителей устройств и разработчиков это несомненный плюс, с другой стороны, это дает возможность не только исследователям, но и злоумышленникам более продуктивно находить уязвимости и ошибки.

Во-вторых, существует возможность установить приложения как из официального каталога приложений Google Play (ранее назывался Android Market), так и из любого другого доступного источника.

В-третьих, создание приложений является практически общедоступным, так как необходимо заплатить всего $25 в случае, если разработчик желает размещать свои продукты в официальном каталоге, а для распространения программ вне его материальные затраты вообще не нужны.

В-четвертых, размещаемые в Google Play программы до недавнего времени не подвергались предварительной проверке или тестированию со стороны Google. Совсем недавно была анонсирована система Bouncer, которая должна проверять приложения, размещенные в каталоге Play, на наличие вредоносных функций; проверке также будут подвергаться учетные записи разработчиков. Несомненно, это должно в какой-то степени увеличить безопасность, однако все же не решает проблему, так как создатели вредоносных программ могут применять различные ухищрения для успешного обхода системы Bouncer.

Фрагментация платформы

Из-за того, что систему Android использует большое количество производителей мобильных устройств, и при этом не существует определенных рамок по их техническим характеристикам, потребителям доступны устройства с самым различным функционалом. По мере выхода очередного обновления системы в нее добавляются не только новые функции, но и закрываются обнаруженные ранее уязвимости. Производители на свое усмотрение выпускают соответствующие версии обновлений. Иногда случается так, что аппарат, еще недавно бывший флагманом, не получает новую версию ОС или программного обеспечения и, соответственно, остается незащищенным от потенциальных угроз. Причиной этому могут быть как экономические соображения (адаптация обновления потребует слишком больших финансовых вложений, или же производитель просто хочет заработать на продажах новых устройств), так и чисто технические (обновление не сможет корректно функционировать на устаревшем аппаратном обеспечении, либо для установки не хватит физической памяти устройства).

Человеческий фактор

Каким бы ни был уровень защищенности системы, далеко не последнюю роль в обеспечении безопасности играет человеческий фактор. В качестве примера можно привести элементы социальной инженерии, которую используют злоумышленники, например, уже упоминавшийся ранее способ распространения вредоносных программ через рекламу в приложениях с использованием громких фраз («Требуется срочное обновление системы», «Ваша версия браузера устарела», «Немедленно установите обновление Skype» и т. п.). То же самое можно сказать и о случаях распространения вредоносных программ при помощи спам-рассылок по СМС (таким способом, например, распространялся бэкдор Android.Crusewind).

Еще одним элементом социальной инженерии служит игра на стремлении многих людей к чему-то бесплатному («Новая версия Need for Speed», «Обновление Asphalt бесплатно!»), а также использование тематики «для взрослых» («Супердевушки, качай здесь!», «Коллекция фото обнаженной красавицы» и т. п.).

image

Приложения также могут подделываться, и невнимательный пользователь с большой долей вероятности поделится со злоумышленниками своими персональными данными (логин и пароль от социальной сети, данные кредитной карты и т. п.). Вариантов может быть много.

Итак, мы рассмотрели наиболее распространенные угрозы, с которыми могут столкнуться пользователи устройств под управлением операционной системы Android. Теперь можно подвести итог и сделать некоторые выводы.

Одной из главных проблем безопасности при работе с ОС Android, прежде всего, является человеческий фактор. Какой бы защищенной ни была операционная система, беспечность, невнимательность, самоуверенность и простая неосведомленность рано или поздно подвергнут опасности обладателя умного устройства. Например, уверенность пользователя в том, что ему ничего не угрожает, заставляет его игнорировать средства безопасности, такие как антивирусные программы. В случае применения злоумышленниками заманчивых предложений, например, загрузки бесплатных версий платных приложений и игр, используется стремление людей получить выгоду без потерь для себя. Когда подделывается известный сайт, игра или приложение, а пользователь при этом неопытен, он может и не осознавать, что подвергается какому-либо риску, устанавливая ту или иную программу или вводя свою конфиденциальную информацию.

Следующая важная проблема косвенно связана с первой и касается программной уязвимости как самой операционной системы, так и прикладного ПО. Android создают люди, которые по своей природе могут совершать ошибки. Эти ошибки могут быть никогда не замечены, а могут проявиться в самый неподходящий момент. Обнаруженная ошибка в коде берется на вооружение злоумышленниками, если это принесет им определенную выгоду. Таким образом, пользователи сталкиваются, например, с вредоносными программами, использующими root-эксплойты для повышения привилегий в системе. Большинство таких эксплойтов изначально задумывались как подспорье более опытным пользователям, однако быстро перекочевали в арсенал киберпреступников.

Несмотря на усилия, прикладываемые разработчиками Android для обеспечения максимальной безопасности системы и пользователей, находятся способы обойти защитные барьеры. Помимо root-эксплойтов, примером может служить подпись вредоносных приложений сертификатом безопасности сторонних прошивок, что позволяет таким программам работать с правами системы на соответствующем образе ОС. Система разрешений также несовершенна. Описанный ранее случай создания приложения, не требующего вообще никаких разрешений для своей работы, также является примером того, что ошибки совершаются, и всякую защиту можно обойти.

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

Несмотря на позитивные аспекты принятой Google политики открытости платформы, существуют и отрицательные моменты. Во-первых, увеличивается вероятность обнаружения уязвимостей, которые могут использовать злоумышленники. Во-вторых, весьма либеральное отношение к процессу создания приложений и широким возможностям по их установке конечными пользователями также эксплуатируется предприимчивыми киберпреступниками. Введение компанией Google системы Bouncer является шагом к увеличению безопасности без кардинальных изменений в политике открытости экосистемы Android, однако не может являться решением всех проблем.

Следующим важным недостатком ОС Android является ее фрагментация. Существование большого числа производителей устройств и различных версий системы создает определенные сложности, так как пользователи не всегда могут получить необходимое обновление, что существенно сказывается на безопасности. Стремление некоторых производителей выпускать новые модели как можно чаще может даже заставить некоторых потребителей отказаться от дальнейшего использования устройств с Android. Это может быть связано как с тем, что они не могут получить желаемое обновление системы, так и с тем, что характеристики устройств после выхода новых моделей успевают значительно устареть и уже не отвечают требованиям пользователей.

И, конечно же, опасность представляют вредоносные программы. Используя вышеперечисленные особенности Android, злоумышленники быстро адаптировались к новой структуре рынка мобильных устройств и начали осваивать все возможные и наиболее прибыльные для них схемы. В своих темных делах они используют СМС-троянцев для получения быстрой и легкой прибыли; использование троянцев, ворующих конфиденциальные данные пользователей, также позволяет им получать заработок, например, от перепродажи сведений электронной почты, логинов и паролей от различных социальных сетей и прочих выгодных для них сервисов. Применение социальной инженерии тоже вносит существенный вклад в их процветание.

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

Что в будущем?

С определенной долей уверенности можно сказать, что в ближайшей перспективе владельцам устройств под управлением Android продолжат угрожать вредоносные программы, в особенности СМС-троянцы. Троянцы-шпионы и троянцы-похитители, собирающие конфиденциальную информацию, также не останутся в стороне. В дальнейшем будут появляться и вредоносные программы, сочетающие в себе различные функции, в том числе использующие root-эксплойты. Также возможны случаи использования обнаруженных уязвимостей в популярных приложениях.

Не исключена организация крупных ботнетов, способных выполнять атаки на интернет-ресурсы либо осуществлять массовую рассылку спама. Возможно увеличение случаев заражения вредоносными программами тех пользователей, которые используют сторонние и неофициальные прошивки. Такие атаки могут носить и локальный, таргетированный характер, когда злоумышленниками будут выбираться наиболее интересные для них версии прошивок.

Вероятно появление уже знакомых пользователям Windows троянцев-блокировщиков и вымогателей. Атаки подобных вредоносных программ могут быть распространены, например, среди владельцев устройств с root-правами, однако вполне возможно и то, что эти троянцы будут сами выполнять необходимые действия для повышения привилегий в системе либо побуждать на это пользователя, используя приемы социальной инженерии.

Помимо «классических» троянцев-шпионов, не исключены случаи выявления т. н. аналитических приложений наподобие Carrier IQ. Такие программы могут использоваться производителями устройств и операторами связи для сбора статистической и аналитической информации, однако, как показал случай с Carrier IQ, собираемая информация может быть чрезмерной и напрямую угрожать конфиденциальности пользователей. Производители должны как минимум информировать потребителей о наличии таких приложений и особенностях их работы. Тем не менее, возможны случаи, когда сами производители не до конца будут знать, насколько собираемая информация отвечает требованиям безопасности.

Так или иначе, одним из главных векторов атаки будет оставаться социальная инженерия. Немаловажную роль в обеспечении безопасности при этом должны играть внимательность и осторожность пользователей. Надлежащий уровень обеспечения безопасности должен исходить и от производителей мобильных устройств, а также от поставщиков прикладного ПО. Им необходимо выпускать обновления системы и приложений как можно скорее, по мере обнаружения уязвимостей. Также необходимо обеспечивать должный уровень конфиденциальности пользователей и защиты их персональных сведений.

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

Если не можете удалить угрозы, значит они встроены прошивку. Удалить их можно только при использовании рут-прав или перепрошивки на кастом. Также можно попробовать файрвол.

olenka6710, Нужно получить права рут. На разных телефонах работают разные способы получения прав.

Посмотрите эту тему:

Дабы не плодить темы.

Dr.web обнаружил вирусы:

Они находятся в разделе "Уязвимости" и не удаляются, при нажатии на название вируса открывается его описание и ссылка на ваш сайт с более подробным описанием вируса ,больше никаких действий сделать нельзя.

Откатил до заводских настроек, ничего не изменилось.

Подскажите как удалить вирусы (рут есть)?

Здравствуйте!
Дабы не плодить темы.
Dr.web обнаружил вирусы:
Pendinglntent(CVE-2014-8609)
Toast Overlay(CVE-2017-0752)
Janus(CVE-2017-13156)
Они находятся в разделе "Уязвимости" и не удаляются, при нажатии на название вируса открывается его описание и ссылка на ваш сайт с более подробным описанием вируса ,больше никаких действий сделать нельзя.
Откатил до заводских настроек, ничего не изменилось.
Подскажите как удалить вирусы (рут есть)?

Здравствуйте.
Это не вирусы, это уязвимости! Они устраняются только установкой обновлении на прошивку. За обновлениями обращаться к производителю устройства.

После отката ставил последнюю прошивку

Так как устранить уязвимости? Подскажите пожалуйста!

Так как устранить уязвимости? Подскажите пожалуйста!

Если новые прошивки не выпускают, то покупкой нового смартфона.

Если новые прошивки не выпускают, то покупкой нового смартфона.

Сомневаюсь в Вашей компетентности.

Если новые прошивки не выпускают, то покупкой нового смартфона.

Сомневаюсь в Вашей компетентности.

И все-таки, против лома нет приема, а кратчайшее расстояние между двумя точками - прямая.

Либо новые прошивки, либо ой.

Тогда любой новый телефон не застрахован от тех же проблем. И сколько их придётся поменять?

Keep yourself alive

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

Хмм. 16 год возможно производитель уже "забил" на обновки для него. Напишите производителю что ответят.
Еще вариант - альтернативные прошивки.

Читал 4pda, прошивка моя на данный момент самая актуальная и стабильная. Да и производитель забил. Альтернативы тоже нет. Может ещё раз откатиться

Keep yourself alive

У мейзу с альтернативными прошивками - обычно плохо, Поэтому только кушать то, что дал вендор. И если он не выпускает заплаток для ОС, то и взять их неоткуда. Только смириться.

Вы можете воспользоваться полнофункциональной защитой Dr.Web для Android бесплатно, если приобретете лицензию на Dr.Web Security Space или Антивирус Dr.Web – онлайн или в магазинах наших партнеров. Также Dr.Web для Android в подарок предоставляется подписчикам услуги «Антивирус Dr.Web» (тариф «Dr.Web Премиум»). Обратите внимание, что количество бесплатных лицензий на Dr.Web для Android равно количеству ПК в лицензии (подписке) на продукт для защиты ПК/Mac.

Подробнее о том, как активировать лицензию для мобильных устройств Android, рассказано здесь.

Есть ли вирусы для мобильных устройств?

Вирусы для мобильных ОС являются самым быстрорастущим сегментом. Вместе с ростом популярности той или иной ОС среди пользователей растет и интерес к ней со стороны злоумышленников, главная цель которых – деньги. Особенно стремительно увеличивается количество угроз для такой популярной мобильной платформы как Android.

Есть ли опасные вредоносные программы для Android?

Есть, и количество их продолжает расти.

Получившие в последнее время широкое распространение троянцы-блокировщики (например, Android.Locker.71.origin ) шифруют файлы, блокируют зараженные мобильные устройства и требуют у пострадавших пользователей денежный выкуп.

Получают все большее распространение троянцы-бэкдоры (например, Android.BackDoor.20) — вредоносные программы, позволяющие злоумышленникам выполнять на зараженных мобильных устройствах различные действия.

Такие вредоносные программы, как Android.MailSteal.1.origin , Android.Maxbet.1.origin , Android.Loozfon.origin и Android.EmailSpy.origin , нацелены на похищение адресов электронной почты из книги контактов мобильного устройства и отправки их на удаленный сервер, что в дальнейшем позволяет злоумышленникам наладить массовую рассылку спама.

Почему необходимо обеспечивать защиту не только корпоративных компьютеров, но и личных мобильных устройств сотрудников, особенно если эти сотрудники работают с финансами (например, бухгалтеры)?

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

При этом сотрудники регулярно заходят в локальную сеть компании со своих устройств, а значит, подвергают опасности конфиденциальные данные и, конечно же, денежные средства – не только личные, но и корпоративные. До 70% случаев заражений локальных сетей происходит с личных устройств, в том числе мобильных.

Кроме того, одной из мер безопасности при работе с денежными средствами является СМС-подтверждение от банка. На данный момент существует вредоносное ПО, предназначенное для модификации СМС-подтверждений. Использование антивируса гарантирует невозможность сокрытия факта хищения денежных средств.

Я не устанавливаю вредоносных программ! Как я могу заразить свое устройство?

Для заражения не нужно что-либо устанавливать – достаточно посетить сайт, взломанный злоумышленниками. И вовсе необязательно это будет сайт с сомнительным содержимым – взлом новостных сайтов куда как выгоднее с точки зрения злоумышленников. Новостные сайты относятся к наиболее посещаемым интернет-ресурсам. Они, как правило, не вызывают подозрений ни у пользователей, ни у системных администраторов компаний, которые не блокируют доступ к этим сайтам. Именно поэтому новостные порталы – очень привлекательное «поле деятельности» для злоумышленников. Распространяя вредоносные программы через них, они могут нанести ущерб огромному количеству пользователей и компаний.

От чего защищает Dr.Web для Android?

Бесплатная версия Dr.Web для Android Light имеет только один модуль «Антивирус» и защищает только от вредоносных программ.

Полная версия Dr.Web для Android содержит следующие модули:

  • Антивирус — защита от вредоносных программ;
  • Фильтр звонков и SMS — фильтрация SMS-спама и нежелательных звонков;
  • Антивор — поможет найти утерянное устройство или уничтожить все пользовательские данные на нем дистанционно;
  • URL-фильтр — оградит от вредоносных и нежелательных сайтов;
  • Аудитор безопасности — помогает обнаружить и устранить уязвимости Android;
  • Брандмауэр (для Android 4.0 и выше) — гибкая настройка доступа приложений к сетям и защита от перерасхода мобильного Интернета.

Dr.Web для Android может защитить только мобильные устройства, так как вирусные базы для мобильного антивируса отличаются от баз антивируса для настольных компьютеров. Для защиты обычных компьютеров используйте соответствующие продукты компании «Доктор Веб».

Влияет ли антивирус на быстродействие моего устройства?

Антивирус Dr.Web занимает около 1 МБ в памяти мобильного устройства. Постоянно в оперативной памяти находится только файловый монитор, следящий за системой. Монитор требует некоторое количество ресурсов, но заметного влияния на быстродействие не оказывает.

Как узнать название моего Dr.Web для Android?

На главном экране приложения нажмите на значок меню в правом верхнем углу и выберите пункт О программе.



На открывшейся странице будут написаны название и версия используемого вами решения Dr.Web для защиты вашего устройства.

Название вашего Dr.Web также можно узнать в Менеджере лицензий на сайте.

Если по ошибке был скачан Dr.Web для Android Light вместо Dr.Web Security Space для Android , скачайте бесплатно демо для полной версии на 14 дней (демо выдается при установке) с нашего сайта. Вы также можете скачать полную версию Dr.Web с Google Play.

Что делать, если по ошибке был скачан Dr.Web для Android Light вместо Dr.Web Security Space для Android?

Скачайте бесплатно демо для полной версии (демо выдается при установке) с нашего сайта. Вы также можете скачать полную версию Dr.Web с Google Play.

Как узнать сроки действия лицензии Dr.Web?

На главном экране приложения нажмите на значок меню в правом верхнем углу и выберите пункт Лицензия.



На открывшейся странице вы можете узнать владельца лицензии, а также срок ее окончания.

Сроки действия лицензии Dr.Web также можно узнать в Менеджере лицензий на сайте.

Антивирус нашел угрозы и удалил их, но они появились снова. Что делать?

Основные признаки вредоносного ПО в системной области:

  1. Многократное появление одних и тех же угроз в одних и тех же местах, даже после удаления их антивирусом. Обычно угрозы появляются повторно после перезагрузки устройства.
  2. Предупреждения в Аудиторе безопасности Dr.Web.

Из-за особенностей реализации ОС Android избавиться от троянца в системной области стандартными средcтвами ЛЮБОГО антивируса невозможно, поскольку на нерутованном устройстве антивирус, как и любое другое приложение, не имеет административных прав: Dr.Web может обнаруживать вредоносные программы, попавшие в системную область, но не имеет прав на их удаление. Для них (как и для любых установленных приложений) также недоступна опция В карантин .

Для устранения таких уязвимостей прошивки и угроз в /system некоторые системные приложения можно остановить и отключить. Это не устранит угрозу полностью, но нейтрализует ее до тех пор, пока не получится удалить ее окончательно.

Остановить работу приложения: в списке установленных приложений на экране Настройки → Приложения выберите приложение, определенное как угроза, после чего на экране с информацией о нем нажмите кнопку Остановить .

Это действие потребуется повторять при каждой перезагрузке устройства.

Отключить приложение: в списке установленных приложений на экране Настройки → Приложения выберите приложение, определенное как угроза, после чего на экране с информацией о нем нажмите кнопку Отключить .

Если на вашем устройстве открыт root-доступ (права суперпользователя, позволяющие вносить любые изменения, в том числе в прошивку), а приложение может быть удалено без потери работоспособности устройства или вылечено, вы увидите соответствующую опцию в интерфейсе антивируса.

С root-доступом вы также можете попробовать удалить вредоносные приложения с помощью специальных сторонних утилит.

Настройка root-доступа в некоторых случаях может привести к отказу производителя от гарантийного обслуживания устройства.

Если на вашем устройстве установлена пользовательская прошивка, вы можете вернуться к официальному ПО производителя устройства самостоятельно или обратившись в сервисный центр. Если вы используете официальное ПО производителя устройства, попробуйте обратиться в компанию-производитель за дополнительной информацией об этом приложении.

Если производитель рекомендовал обновление прошивки, перед обновлением сделайте резервную копию всех пользовательских данных, а затем выполните операцию сброса настроек до заводских.

Чтобы отключить информирование об угрозах в системных приложениях, которые не могут быть удалены без потери работоспособности устройства, установите флажок Системные приложения в разделе Настройки → Общие настройки → Дополнительные опции.

Также рекомендуем ознакомиться с посвященным этой теме выпуском «Дела системные» проекта «Антивирусная правДА!». О причинах попадания троянцев в прошивки написано в выпуске «Вшито-скрыто».

Как протестировать Dr.Web для Android до покупки?

Для ознакомления с продуктом вы можете воспользоваться его демоверсией, загрузив дистрибутив с сайта «Доктор Веб» или через Google Play. Срок действия демонстрационной лицензии 14 дней. Чтобы продолжить использование Dr.Web необходимо приобрести коммерческую лицензию

Как узнать, что антивирус работает?

Запустите приложение Dr.Web для Android. В открывшемся окне обратите внимание на раздел SpIDer Guard: надпись «Монитор включен и защищает систему» означает, что все в порядке. Если там написано «Монитор выключен» — антивирусный монитор не активен. Для его включения щелкните по индикатору SpIDer Guard.

Как проверить устройство на вирусы?

  • Быстрая проверка. Сканируются только установленные приложения. Чем их меньше, тем быстрее пройдёт проверка.
  • Полная проверка. Проверяются все файлы на мобильном устройстве.
  • Выборочная проверка. Позволяет просканировать на вирусы только определённый файл или папку. Для запуска выборочной проверки необходимо отметить зелёными флажками нужные объекты и нажать кнопку Проверить.

Как посмотреть статистику работы антивируса?

Запустите приложение Dr.Web для Android, нажмите на кнопку вызова меню и выберите пункт «Статистика». В окне статистики отображается количество обработанных файлов и все действия, совершённые компонентами антивируса. Есть возможность обнулить статистику («Меню» → «Очистить статистику») или сохранить журнал в файл («Меню» → «Сохранить журнал»).

Появилось предупреждение о найденном вирусе. Что делать?

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

Что делать, если Dr.Web не может удалить вредоносную программу?

Dr.Web не сможет удалить вредоносное ПО в случае, если им заражена прошивка устройства. Обратитесь в авторизованный сервисный центр производителя устройства для замены прошивки.

Какие функции выполняет SpIDer Guard?

SpIDer Guard предназначен для постоянной защиты мобильного устройства от вирусов и других угроз. Он загружается в память при старте Android и «на лету» сканирует файлы, к которым обращается пользователь или система.

В середине апреля мы опубликовали новость о троянце Android.InfectionAds.1, который эксплуатировал несколько критических уязвимостей в ОС Android. Одна из них — CVE-2017-13156 (также известна как Janus) — позволяет вредоносной программе заражать APK-файлы, не повреждая их цифровую подпись.

Другая — CVE-2017-13315. Она дает троянцу расширенные полномочия, и тот может самостоятельно устанавливать и удалять приложения. Детальный анализ Android.InfectionAds.1 размещен в нашей вирусной библиотеке, с ним можно ознакомиться здесь. Мы же подробнее остановимся на уязвимости CVE-2017-13315 и посмотрим, что она из себя представляет.

CVE-2017-13315 относится к группе уязвимостей, получивших общее наименование EvilParcel. Они обнаруживаются в различных системных классах ОС Android. Из-за ошибок в последних при обмене данными между приложениями и системой становится возможной подмена этих данных. Вредоносные программы, эксплуатирующие уязвимости EvilParcel, получают более высокие привилегии и с их помощью могут делать следующее:

  • устанавливать и удалять приложения с любыми разрешениями без подтверждения пользователя;
  • при использовании совместно с другими уязвимостями заражать установленные на устройстве программы и подменять «чистые» оригиналы инфицированными копиями;
  • сбрасывать код блокировки экрана Android-устройства;
  • сбрасывать PIN-код блокировки экрана Android-устройства.
  • CVE-2017-0806 (ошибка в классе GateKeeperResponse), опубликована в октябре 2017 г.;
  • CVE-2017-13286 (ошибка в классе OutputConfiguration, опубликована в апреле 2018 г.;
  • CVE-2017-13287 (ошибка в классе VerifyCredentialResponse), опубликована в апреле 2018 г.;
  • CVE-2017-13288 (ошибка в классе PeriodicAdvertizingReport), опубликована в апреле 2018 г.;
  • CVE-2017-13289 (ошибка в классе ParcelableRttResults), опубликована в апреле 2018 г.;
  • CVE-2017-13311 (ошибка в классе SparseMappingTable), опубликована в мае 2018 г.;
  • CVE-2017-13315 (ошибка в классе DcParamObject), опубликована в мае 2018 г.

Предпосылки для возникновения уязвимостей EvilParcel

Давайте разберемся, как возникают уязвимости EvilParcel. Прежде всего, рассмотрим некоторые особенности работы Android-приложений. В ОС Android все программы взаимодействуют друг с другом, а также с самой операционной системой через отправку и получение объектов типа Intent. Эти объекты могут содержать произвольное количество пар «ключ-значение» внутри объекта типа Bundle.

При передаче Intent объект Bundle преобразуется (сериализуется) в байтовый массив, облаченный в Parcel, а при чтении ключей и значений из сериализованного Bundle тот автоматически десериализуется.

В Bundle ключом выступает строка, а значение может быть практически любым. Например, примитивным типом, строкой или контейнером, содержащим примитивные типы или строки. Кроме того, он может быть и объектом типа Parcelable.

Таким образом, в Bundle можно поместить объект произвольного типа, реализующий интерфейс Parcelable. Для этого потребуется реализовать методы writeToParcel() и createFromParcel() для сериализации и десериализации объекта.

В качестве наглядного примера создадим простой сериализованный Bundle. Напишем код, который поместит в Bundle три пары «ключ-значение» и сериализует его:

Bundle demo = new Bundle();
demo.putString(«String», «Hello, World!»);
demo.putInt(«Integer», 42);
demo.putByteArray(«ByteArray», new byte[]);
Parcel parcel = Parcel.obtain();
parcel.writeBundle(demo);

После выполнения этого кода мы получим Bundle следующего вида:


Рисунок 1. Структура сериализованного объекта Bundle.

Обратим внимание на следующие особенности сериализации Bundle:

  • все пары ключ-значение записаны друг за другом;
  • перед каждым значением указан его тип (13 для массива байт, 1 для Integer, 0 для строки и так далее);
  • перед данными переменной длины указан их размер (длина для строки, количество байт для массива);
  • все значения записаны с выравниванием 4 байта.

Казалось бы, в чем может быть проблема? А она – в том, что в некоторых системных классах, реализующих Parcelable, в методах createFromParcel() и writeToParcel() могут встречаться ошибки. В этих классах количество прочитанных байтов в методе createFromParcel() будет отличаться от количества записанных байтов в методе writeToParcel(). Если поместить объект такого класса внутрь Bundle, границы объекта внутри Bundle после повторной сериализации изменятся. И именно здесь создаются условия для эксплуатации уязвимости EvilParcel.

Приведем пример класса с подобной ошибкой:


Если размер массива data будет равен 0, то при создании объекта в createFromParcel() будет прочитан один int (4 байта), а в writeToParcel() будет записано два int (8 байт). Первый int будет записан явным вызовом writeInt. Второй int будет записан при вызове writeByteArray(), поскольку перед массивом в Parcel всегда записывается его длина (см. Рисунок 1).

Ситуации, когда размер массива data равен 0, возникают редко. Но даже когда это случается, программа все равно продолжает работать, если за один раз передавать в сериализованном виде только один объект (в нашем примере — объект Demo). Поэтому подобные ошибки, как правило, остаются незамеченными.

Теперь попробуем поместить объект Demo с нулевой длиной массива в Bundle:



Рисунок 2. Результат добавления объекта Demo с нулевой длиной массива в Bundle.



Рисунок 3. Объект Bundle после сериализации.

Попробуем его десериализовать:



Рисунок 4. После десериализации объекта Bundle.

Каков же результат? Рассмотрим фрагмент Parcel:



Рисунок 5. Структура Parcel после десериализации Bundle.

Из рисунков 4 и 5 мы видим, что при десериализации в методе createFromParcel был прочитан один int вместо двух записанных ранее. Поэтому все последующие значения из Bundle были прочитаны неверно. Значение 0x0 по адресу 0x60 было прочитано как длина следующего ключа. А значение 0x1 по адресу 0x64 было прочитано как ключ. При этом значение 0x31 по адресу 0x68 было прочитано как тип значения. В Parcel нет значений, тип которых равен 0x31, поэтому readFromParcel() добросовестно отрапортовал об ошибке (exception).

Как это может использоваться на практике и стать уязвимостью? Давайте посмотрим! Описанная выше ошибка в системных классах Parcelable позволяет конструировать Bundle, которые при первой и повторной десериализациях могут отличаться. Чтобы это продемонстрировать, модифицируем предыдущий пример:


Этот код создает сериализованный Bundle, который содержит в себе уязвимый класс. Посмотрим на результат выполнения данного кода:



Рисунок 6. Создание Bundle с уязвимым классом.

После первой десериализации этот Bundle будет содержать следующие ключи:



Рисунок 7. Результат десериализации Bundle с уязвимым классом.

Теперь вновь сериализуем полученный Bundle, затем опять десериализуем его и посмотрим на список ключей:



Рисунок 8. Результат повторной сериализации и десериализации Bundle с уязвимым классом.

Что мы видим? В Bundle появился ключ hidden (со строковым значением «Hi there!»), которого раньше не было. Рассмотрим фрагмент Parcel этого Bundle, чтобы понять, почему так произошло:



Рисунок 9. Структура Parcel объекта Bundle с уязвимым классом после двух циклов сериализации-десериализации.

Здесь суть уязвимостей EvilParcel становится более понятной. Возможно создать специально сформированный Bundle, который будет содержать уязвимый класс. Изменение границ такого класса позволит разместить в этом Bundle любой объект – например, Intent, который появится в Bundle только после второй десериализации. Это даст возможность скрыть Intent от механизмов защиты операционной системы.

Эксплуатация EvilParcel

Android.InfectionAds.1 с помощью CVE-2017-13315 самостоятельно устанавливал и удалял программы без вмешательства владельца зараженного устройства. Но как это происходит?

В 2013 году была обнаружена ошибка 7699048, также известная как Launch AnyWhere. Она позволяла стороннему приложению запускать произвольные activity от имени более привилегированного пользователя system. На диаграмме ниже показан механизм ее действия:



Рисунок 10. Схема работы ошибки 7699048.

С помощью этой уязвимости приложение-эксплойт может реализовать сервис AccountAuthenticator, который предназначен для добавления новых аккаунтов в операционную систему. Благодаря ошибке 7699048 эксплойт способен запускать activity на установку, удаление, замену приложений, сброс PIN-кода или Pattern Lock и делать другие неприятные вещи.

Корпорация Google устранила эту брешь, запретив запуск из AccountManager произвольных activity. Теперь AccountManager разрешает запуск только activity, исходящих от того же самого приложения. Для этого выполняется проверка и сопоставление цифровой подписи программы, инициировавшей запуск activity, с подписью приложения, в котором находится запускаемая activity. Выглядит это так:


Казалось бы, проблема решена, однако не все здесь так гладко. Оказалось, что данный фикс можно обойти, используя уже хорошо нам известную уязвимость EvilParcel CVE-2017-13315! Как мы уже знаем, после исправления Launch AnyWhere система проверяет цифровую подпись приложения. Если эта проверка выполняется успешно, Bundle передаётся в IAccountManagerResponse.onResult(). При этом вызов onResult() происходит через механизм IPC, поэтому Bundle снова сериализуется. В реализации onResult() происходит следующее:


Далее Bundle извлекается ключ intent и запускается activity уже без проверок. В результате для запуска произвольной activity с правами system достаточно лишь сконструировать Bundle таким образом, чтобы при первой десериализации поле intent было скрыто, а при повторной – появилось. А, как мы уже убедились, как раз эту задачу и выполняют уязвимости EvilParcel.

На данный момент все известные уязвимости этого типа исправлены фиксами в самих уязвимых классах Parcelable. Однако нельзя исключать повторного появления уязвимых классов в будущем. Реализация Bundle и механизм добавления новых аккаунтов по-прежнему остаются теми же, что и раньше. Они до сих пор позволяют создать точно такой же эксплойт при обнаружении (или появлении новых) уязвимых классов Parcelable. Более того, реализация этих классов все еще выполняется вручную, и за соблюдением постоянной длины сериализованного объекта Parcelable должен следить программист. А это — человеческий фактор со всеми вытекающими. Однако будем надеяться, что подобных ошибок будет как можно меньше, и уязвимости EvilParcel не станут докучать пользователям Android-устройств.

Читайте также: