Эксперты рассказали, как Android-вредоносы проникают в Google Play Store

Эксперты рассказали, как Android-вредоносы проникают в Google Play Store

Эксперты рассказали, как Android-вредоносы проникают в Google Play Store

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

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

Встречаются также и сложные трояны вроде Joker, которым удаётся не только пройти слои безопасности Google Play Store, но и заставить сотни тысяч пользователей установить себя в систему.

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

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

Исследователи компании Bitdefender опубликовали отчёт (PDF), в котором перечислены основные методы проникновения в Google Play Store.

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

Проверка временных интервалов. Довольно любопытная техника: жестко закодированная временная метка даёт понять адваре, когда нужно начинать отображать рекламные объявления. Здесь решаются две задачи: приложение проходит проверку Google Play Store и заодно пользователь не может сразу вычислить причину появления навязчивой рекламы.

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

Библиотеки с открытым исходным кодом. Такие библиотеки могут использоваться для запуска задач в фоновом режиме. С их же помощью можно отображать рекламу и использовать функции вроде «ShowAdsHideIcon».

Изначально безобидные SDK. Тоже известная техника — злоумышленник может загрузить в Play Store абсолютно легитимную версию приложения, после чего добавить к ней вредоносные функции через механизм обновления.

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

Создатель Диспетчера задач объяснил, почему загрузка CPU в Windows врёт

Бывший инженер Microsoft Дэйв Пламмер, приложивший руку к таким знаковым вещам, как поддержка ZIP в Windows и меню «Пуск» в Windows NT, рассказал, как на самом деле Диспетчер задач считает загрузку процессора. И заодно объяснил, почему цифры в этом инструменте иногда кажутся немного странными, особенно если сравнивать их с тем, как компьютер ощущается в реальной работе.

По словам Пламмера, идея просто показать, насколько занят процессор на деле куда сложнее, чем кажется.

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

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

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

Вместо этого он заложил в Диспетчер задач другой принцип. Утилита запрашивает, сколько процессорного времени каждый процесс суммарно использовал с момента запуска (отдельно в пользовательском и системном режимах).

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

Звучит не очень просто, но именно такой метод, по словам Пламмера, даёт более точный результат, чем грубый расчёт по таймеру. Проблема в другом: современные процессоры стали намного сложнее, чем во времена, когда создавался классический Диспетчер задач.

Сегодня на работу CPU влияют динамическое изменение частоты, турбобуст, тепловые ограничения, глубокие режимы простоя и другие механизмы. Из-за этого один и тот же процент загрузки уже не всегда означает один и тот же объём реально выполненной работы. Пламмер привёл образное сравнение: современная загрузка CPU больше похожа не на пройденное расстояние, а на загруженность шоссе. Полупустая трасса с быстрыми спорткарами может перевезти больше, чем полностью забитая дорога со старыми грузовиками.

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

RSS: Новости на портале Anti-Malware.ru