- Android malware general что это
- Что такое malware? Как определить, есть ли на устройстве вредоносная программа?
- Что делает malware?
- Как определить, есть ли на устройстве malware?
- Как избежать malware?
- Иследование современного Malware Cerberus под Android
- Анализ apk пакета
- Начнём с манифеста
- Receiver
- Права администратора
- Service_fa
- Service_server
- Service_event_loop
- Класс String(s)
- Остальное
- Перейдем к практике
Android malware general что это
Краткое описание:
Мобильный антивирус MBAM для смартфонов и планшетов, который защищает ваше устройство от вредоносных приложений и файлов.
Приложение может защитить ваш смартфон или планшет от всех видов мобильных вредоносных приложений и угроз конфиденциальности.
С использованием передовых технологий, используемых в аналоге для ПК, Malwarebytes Anti-Malware Mobile можете быстро сканировать все файлы на вашем мобильном устройстве и сказать вам, если определить зараженные или подозрительные приложения, помогая вам устранить угрозу.
Функции проверки по требованию и защиты в реальном времени, обеспечивают безопасное использование Adnroid-устройства.
Основные преимущества Malwarebytes Anti-Malware Mobile
• Обнаруживает и уничтожает вредоносные приложения, включая шпионское ПО и трояны
• Сканирование ваших приложений на наличие вредоносного кода
• Останавливает несанкционированный доступ к вашим персональным данным
• Сканирует Android-устройство на наличие уязвимостей
• Определяет приложения, отслеживающее ваше местоположение
• Является бесплатным
Основные возможности Malwarebytes Anti-Malware Mobile:
Антивирус и антишпион
— Проактивно сканирует приложения и файлы на наличие вирусов и шпионского ПО.
— Сканирует памяти Android-устройства и SD-карту.
— Автоматическое сканирование по расписанию.
— Автоматическое обновление антивирусной базы данных.
Управление конфиденциальностью
— В подробностях определяет доступ каждого приложения к конфиденциальным данным.
— Разделяет приложения по следующим категориям доступа к конфиденциальным данным: Contacts, Identity Information, Simple Message Service (SMS) и Security Settings.
Аудит безопасности
— MBAM Mobile обнаруживает уязвимости, влияющие на безопасность вашего Android-устройства, предлагая исправления.
— Позволяет управлять функцией определения местоположения устройства встроенной службы Android Device Manager, так что ваш смартфон или планшет может быть удаленно обнаружен, заблокирован или сброшен на заводские настройки в случае потери или кражи.
Менеджер приложений
— Определяет какие приложения запущены в настоящий момент.
— Определяет установленные приложения.
— MBAM Mobile включает настраиваемый Белый список разрешенных приложений.
Русский интерфейс: Да
Требуется Android: 6.0+
Сообщение отредактировал iMiKED — 03.12.21, 13:51
Источник
Что такое malware? Как определить, есть ли на устройстве вредоносная программа?
Malware — это вредоносная программа. Она предназначена для нанесения ущерба системам, сетям и устройствам или для кражи данных. Вредоносные программы могут выглядеть как раздражающий рекламный банер, но на самом деле это может быть вирус, который уничтожает жесткий диск и заражает каждое устройство в вашей сети.
Что делает malware?
Вред, который вредоносная программа может нанести устройству, зависит от ее типа. Каждая из них может по-своему проникать, распространяться и заражать систему, преследую конкретные цели.
Троян. Названный в честь знаменитого троянского коня, который действует точно так же. Троян проникает в систему, замаскированную под законное программное обеспечение, а затем работает в качестве шлюза для других вредоносных программ.
Червь. Черви похожи на троянов в том, что они также используются для создания бэкдоров для последующего проникновения других вредоносных программ. Но в отличие от троянов, черви могут иметь и другие цели, например, самокопирование, размножение и захват всего жесткого диска.
На видео: На нашем канале мы рассказали о самом первом сетевом черве и к каким последствиям он привел
Шпионская программа. Как следует из названия, она используется для шпионажа. Эту программу трудно обнаружить, т.к. она работает в фоновом режиме, тихо собирая информацию о пользователе. Шпионская программа отслеживает историю просмотров, имена пользователей, пароли, а также информацию о банковских картах, которая впоследствии отправляется злоумышленнику.
Рекламная программа . Adware очень раздражает, но не всегда опасна. Она может быть использована для сбора данных о пользователе и продажи их тому, кто больше заплатит. Но главное ее назначение — показывать пользователям рекламу, которой очень много. Adware может менять домашнюю страницу в браузере, перенаправлять на случайные сайты, показывать всплывающие окна, устанавливать плагины на панели инструментов — и все это она делает без разрешения.
Вирус-вымогатель. Злоумышленники используют эту вредоносную программу для блокировки всех файлов на компьютере жертвы до тех пор, пока она не заплатит выкуп. Обычно вымогатель попадает в систему через фишинговое электронное письмо. Когда вы открываете его и нажимаете на ссылку, программа автоматически устанавливается на устройство. Обычно пользователь ничего не замечает, пока не становится слишком поздно.
Ботнет. Когда определенная вредоносная программа заражает ваше устройство, оно становится частью роботизированной сети — бот-сети. Хакеры используют бот-сети для проведения крупномасштабных кибератак, таких как рассылка спама или DDoS-атаки. Как только устройство заражается, оно передает вредоносную программу на другие устройства в сети, тем самым делая сеть еще крупнее. Десятки или даже сотни тысяч устройств могут составлять одну бот-сеть.
Вирус. Это самый распространенный тип вредоносных программ. Главное отличие состоит в том, что вирус не является автономной программой — для работы ему необходимо прикрепить себя к законному программному обеспечению. Ущерб, который вирус наносит системе или устройству, может быть разный: от создания надоедливых всплывающих окон до уничтожения жесткого диска или кражи данных пользователя.
Как определить, есть ли на устройстве malware?
Вредоносная программа не является универсальной для всех устройств и может работать и выглядеть по-разному на iPad, ПК или Android-телефоне. Но некоторые симптомы одинаковы, поэтому обязательно следите за ними:
- Браузер ведет себя странно. Если вы видите много всплывающих объявлений всякий раз, когда выходите в интернет, на панели инструментов появляются новые плагины, или происходит перенаправление на случайные сайты, — все это означает, что ваше устройство заражено.
- На диске нет свободного места. Возможно, вы обнаружите нехватку места на дисковом пространстве. Это может происходить естественно — по мере того, как файлы и программы накапливаются. Но если вы уверены, что на вашем устройстве должно остаться много свободного места, тогда стоит проверить компьютер на наличие червей. Они известны тем, что копируют сами себя и засоряют диск.
- Приложения и программы работают неправильно. Некоторые программы на вашем устройстве могут запускаться автоматически и не выключаться. Это может быть вызвано системной ошибкой, но если обновления не помогут, лучше начать предпринимать серьезные действия. Попробуйте удалить неисправное программное обеспечение, а затем выполните сканирование устройства, чтобы убедиться, что оно чистое.
- Устройство работает медленно и перегревается. Это может произойти естественным образом, но если изменение происходит внезапно и устройство нагревается, даже когда вы его не используете, то это явный признак того, что проникла вредоносная программа.
Как избежать malware?
Полное удаление вредоносных программ возможно в большинстве случаев. Но, к сожалению, иногда требуется полный сброс системы. Если вы не создадите резервную копию файлов, то все они могут быть потеряны. Поэтому проще не допускать проникновение вредоносного кода в систему, чем пытаться удалить его.
Что нужно сделать, чтобы быть в безопасности:
- Регулярное обновление системы. Это означает установку всех обновлений — не только для операционной системы, но и для всех приложений, программ и даже плагинов браузера. Время от времени появляется опасная уязвимость, и обновления ее исправят.
- Удаление неиспользуемых программ. Удаляйте все, что вы больше не используете, и всегда сканируйте антивирусом то, что загружаете и устанавливаете. Никогда не используйте сомнительные источники и всегда проверяйте, заслуживает ли разработчик доверия, прочитав отзывы в интернете.
- Установка антивирусной программы. Антивирус, брандмауэр, VPN — это все, что необходимо для обеспечения безопасности в интернете. Это особенно важно, если члены семьи используют один и тот же компьютер. Никогда не знаешь, на какую яркую рекламу они могут соблазниться и кликнуть.
- Резервная копия всего. Храните свои файлы в «облаке» или запланируйте регулярное резервное копирование. Обязательно сохраняйте ключи активации для любого купленного вами программного обеспечения, чтобы ее можно было восстановить в непредвиденном случае.
- Онлайн-безопасность. Вредоносные программы попадают на устройство в основном при переходе по вредоносным ссылкам или при загрузке поддельных программ. Поэтому:
- Никогда не нажимайте на сомнительную ссылку в электронном письме.
- При посещении сайта ищите «https» в URL-адресе и зеленый замочек рядом с ним.
- Используйте только защищенное соединение — не подключайтесь к публичному Wi-Fi.
- Убедитесь, что ваши пароли надежны — они должны быть длинными, сложными и уникальными. Их трудно запомнить, поэтому используйте менеджер паролей, чтобы безопасно хранить их в «облаке». А в сочетании с 2FA, это обеспечит безопасность ваших учетных записей в интернете, даже если ваше устройство будет взломано.
Источник
Иследование современного Malware Cerberus под Android
На носу 2020 год и сегодня мы имеем уже версию Android 9.0 Pie, где компания Google бьет себе в грудь и говорит что их продукт защищен. Но злодеи не дремлют и создают свои вредоносы для Android.
Случайным образом мне попался на руки обфусцированный apk файл, который является банковской малварью под названием «Cerberus», и появился он в 2019 году.
APK файл данного ботнета попал мне с недействительным адресом соединения с сервером, по этому часть логики работы и функционала осталась неизученной, так как данный ботнет использует «модульную» систему, и подгружает функционал напрямую со своего сервера.
Анализ apk пакета
После анализа apk-пакета, я составил структуру троянской программы:
- Receiver, autorun + alarm;
- Service, работает в цикле с интервалом 8 секунд, он отвечает за показ всплывающего сообщения для включения Accessibility Service, активации функции блокировки экрана и отключения прав администратора;
- Service, собирающий данные с датчиков девайса, таким образом малварь получал физическое активность девайса;
- Service, в цикле блокирует экран девайса;
- Service, отвечает за обмен данных с сервером;
- Activity, подгружает html код в WebView, и показывает содержимое, служит для подмены активити приложения банка;
- Activity, запрашивает опасные разрешения.
- Class, хранит в себе основные строки(String) проекта
Начнём с манифеста
Манифест у приложения достаточно интересный, и уже по нему можно определить что это не простое приложение, а обыкновенная малварь.
Например рассмотрим разрешения для приложения:
Тут можно заметить, что приложение получает доступ к СМС, контактам, звонкам, интернету, работа приложения в спящем режиме.
Идём дальше, и видим привилегии, которые позволяют приложению становиться основным для получения\отправки смс, это злодеи используют для скрытия СМС сообщений на телефонах жертв.
Ну и конечно Ресивер, он служит для автозапуска сервисов, и перехвата СМС.
Права администратора, это уже намного интереснее. Приложению они нужны для блокировки удаления приложения (при включенных правах администратора, кнопки «удалить» у приложения просто не будет), так же эти права позволят удалить всё с устройства, блокировать девайс.
Ну и самое интересное, это Accessibility Service. Он используется для того, чтобы малварь могла сама кликать по экрану, и давать себе нужные разрешения, в том числе и админ права. Через это разрешение злоумышленники отслеживают все действия пользователя на устройстве.
Ну и остальные сервисы и активити, которые не представляют особого интереса без валидного адреса сервера малвари.
В общем малварь не использует ничего сверхъестественного, в ней нету ни использования каких либо 0-day на андроид. Злоумышленникам нужно добиться от жертвы включения одного разрешения, и не более, дальше малварь всё сделает сама.
Google надо бы ограничить некоторые возможности API для приложений не из плей маркета.
Receiver
Код данного класса обфусцирован, но это не мешает его изучить.
А теперь немного пояснений по коду.
Настройки малвари хранятся XML файле, файл находится в директории /data/data/имя_пакета/shared_prefs/Settings.xml
- public String ReadXML — метод для чтения настроек
- public String SaveXML — метод для сохранения настроек
- public boolean DozeMode — Проверяет включен ли режим Doze Mode
- public class Service_fa extends Service — Сервис для сборки физической активности девайса (шаги, тряска телефона и прочее)
- public class Service_server extends Service — Сервис для соединения с сервером
- public class Service_event_loop extends Service — Сервис работающий в беcконечном цикле для выполнений некоторых функций малвари
- public void startOffDozeMode — запрос для отключения режима Doze Mode
- public void startAlarm — Запуск ресивера каждые 10 секунд
- public void interceptionSMS — Метод для работы с перехатом СМС
- public boolean isAccessibilityService — метод для проверки включен ли Accesibility Service или нет
- public boolean cis — метод, который блокирует работу малвари по странам, входящим в СНГ, а конкретно это: ua, ru, by, tj, uz, tm, az, am, kz, kg и md (сокращённые названия стран)
Я постарался привести обфусцированный код выше, в более читаемый и нормальный вид:
Так думаю код стал более понятен многим читателям.
У Receiver есть 3 триггера на срабатывание, а это при перезагрузке устройства, получении СМС или при запуске Alarmon.
Так же Receiver запускает 3 сервиса:
- Cбор физической активности девайса(Service_fa)
- Сервис для соединения с сервером(Service_server)
- Сервис работающий в беcконечном цикле для выполнений некоторых функций малвари(Service_event_loop)
В первую очередь запускается Service_fa и только после проявления активности устройства (если владелец телефона ходит, и трясёт телефон), запускаются Service_server и Service_event_loop. Они являются основным процессом малвари, таким методом малварь может отъсеять реальный девайсы от эмуляторов и девайсов ресёчеров, ав и прочих.
Так же Receiver запускает запрос отключения Doze Mode и запрос подтверждения прав администратора.
Так как малварь имеет привилегии администратора, его нельзя удалить с девайса пока не будут сняты права.
Права администратора
Давайте рассмотрим какие возможности мы имеем благодаря Admin Device.
элемент force-lock отвечает за права блокировки экрана девайса, а wipe-data за удаление раздела DATA, CACHE, и всей памяти на устройстве (его полный сброс).
Service_fa
На этом мы закончим рассматривать Receiver, и рассмотрим другие сервисы. Сервис который снимает данные с сенсорных датчиков используя класс SensorManager, этот сервис просто получает данные активности и сохраняет их в файл XML.
Благодаря этому злодеям получатся получить историю активности и произвести её анализ для отсеивания эмуляторов и особо ленивых пользователей.
Service_server
Этот поток создан для общения с сервером, данные передаются на сервер в зашифрованном виде используя алгоритм шифрования RC4 кодируя после него все в base64.
При запуске сервиса первый запрос на сервер выглядит так:
Данные отправляемые на сервер я заполнил случайным образом, по названию параметров думаю всё понятно, какой за что отвечает, по этому на их разборе останавливаться не будем.
Теперь смотрим какие могут быть ответы сервера, малварь проверяет возвращает ли пустой ответ, если да, то начинает перебирать массив доменов серверов в цикле, и отправлять этот запрос на каждый домен, и если в ответе будет строка == «
«, то малварь останавливается на этом домене и начинает работать с ним.
Мы определились с каким доменом работаем, теперь смотрим остальные ответы.
Если возвращается Response == «||youNeedMoreResources||» то сразу идет запрос на сервер для получения дополнительного модуля малвари:
gate_url?action=getModule&data=
Идем дальше, Response == «||no||»
отравляет на сервер запрос gate_url?action=registration&data=JSON:
Этот запрос служит для регистрации нового пользователя в админ панели, на этом запросы к серверу закончились.
Но ниже есть условие которое проверяет наличие файла «system.apk».
если файл присутствует, формируется JSON в виде:
В параметр response передается ответ с сервера, далее json передается в метод который находится модуле «system.apk» и с помощью класса DexClassLoader он выполняется.
Service_event_loop
Данный сервис работает в цикле и ждет команды на блокировку девайса. Девайс блокируется в цикле при помощи прав администратора.
Данный сервис умеет отключать права администратора, видимо автор малвари это решил сделать для «самоуничтожения» малвари, чтобы не оставлять следов на телефоне жертв.
Так же цикл имеет 2 скорости работы, 1 секунда и 8 секунд, если Accessibility Service отлючен, то работает на 1-й секунде и просит включить данный сервис, просто открывая Activity и заставляет включить специальные возможности, на практике подробно это рассмотрим.
В конце цикла также есть реализация как и в Service_server, а конкретне отправка команд в метод, который находится внутри подгруженного модуля «system.apk», но параметры не много другие, смотрим JSON:
tick — секунды которые считает цикл сервиса, accessibility — проверяет включен ли Accesibility Service.
Класс String(s)
Все строки внутри класс зашифрована алгоритмом RC4, после чего закодированы в base64.
зашифрованный строка: yyshybiwijujYzdkZDdkMjRlYjJmYjU5Y2Qw
где первые 12 символов страки это ключь расшифрования алгоритма RC4
Ключи: yyshybiwijuj
Зашифрованный текст: YzdkZDdkMjRlYjJmYjU5Y2Qw
Вот часть кода класса String(s)
Я написал скрипт, для преобразования данных строк в нормальный вид, это помогло мне скоротать немного времени.
Так же видим что в этом классе хранится:
URL сервера указан твиттер ресечера Lukas Stefanko(@LukasStefanko), видимо автор хотел пошутить или что-то сказать Лукасу (Это аналитик из NOD32), так же тут хранится имя Accessibility Service + то же название хранится в манифесте android:label=«Flash Player Service», и список стран, по которым не работает малварь.
Остальное
Кратко опишу работу инжектов. Она реализована просто, если включен Accessibility Service, то данный сервис просто ловит событие о запуске банковского приложения и запускает поверх активити банка свое активити, где оно имеет объект WebView который прогружает html-фейк банка, после чего получает данные с помощью JavaScript и отправляет данные на сервер малвари.
Так же в этом сервисе реализован Keylogger, блокировки удаления малвари и автоклик по подтверждениями. Было обнаружено взаимодействие отключения безопасности в приложение «com.miui.securitycenter». Это приложение называется «Безопасность» которые используется на девайсах Xiaomi, его основные задачи следить за безопасностью ваших конфиденциальных данных. Так же был обнаружен код для автоматического отключения «Google Play Protect» методом автоклика.
Перейдем к практике
Мне удалось найти твиттер злодеев и добыть скриншот админ панели
Устанавливаю apk-пакет на эмулятор с API 27.
На рабочем столе появилась иконка флеш плеера с названием «Flash Player»
Ждем по иконке, и у нас запускается малварь.
После запуска малвари, автоматический запускается Активити с требованием включения Accessibility Service, если свернуть ее, она появится снова и это происходит в цикле до тех пор пока я не включил сервис.
После включения галочки Accessibility Service, выполнился автоматический переход с настроек на рабочий стол, и больше у меня не получилось попасть в настройки Accessibility Service, также исчезла иконка с рабочего стола, через несколько секунд появился запрос отключения Doze Mode, он автоматически отключился благодаря автоклику специальных возможностей.
Cледом таким же образом было авто подтверждения прав администратора. Удалить малварь в ручном режиме не удалось так как при открытие настроек данного приложение был автоматический выход назад (GLOBAL_ACTION_BACK).
Собственно это все по первой части, в скором времени напишу вторую часть с дополнительным а возможно с основным модулем данного бота, так как найти apk файл малвари с валидной ссылкой на сервер мне не удалось.
Реверс малвари был реализован совместно с keklick1337
Источник