Вместе с Android
реверс и программирование, обсуждение и обзоры
IntSystem.org | Веб-разработка, все о ней

«Удачная» продажа 20.12.2014

Добрый день, и сегодня мы вместе начинаем шествие по просторам сети Интернет в поисках всяких вкусняшек для операционной системы Android. Мне несказанно повезло сегодня, даже дважды: сегодня пятница, и вкусняшка нашла меня сама. Нашла меня на Авито. Решился от барахла в праздник избавиться, а тут счастье привалило… весит 763983 байт, md5-сумма e0d50226def5da4e5cd81d7abee95636. А привалило в виде смс следующего содержания:

Screenshot_2014-12-19-15-30-06

«Кто-то считает себя умнее других» — сразу подумал я, но и мысли не было, что сразу кинут ссылку на малварь. Думал на платную подписку какую-нибудь ссылка…

Итак, распаковываем малварь с помощью apktool, попутно переводим dex в jar (для простоты понимания картины в целом). Открываем AndroidManifest.xml и с самого начала видим типичную конфигурацию вредоносного ПО:

Вполне себе обычное «загружаюсь при включении, шлю смс, веду и отсылаю логи». В остальном в манифесте ничего интересного: сервисы с говорящими именами, да бутресиверы, в общем, типичный бот для Android. Весь вредоносный код лежит в пакете com.avito (какая ирония). Исходя из манифеста, при запуске начинает свою работу com.avito.MainActivity_. Который кстати, использует AlarmManager в качестве таймера для отстука в админку. Так вот, вредонос добавляется в админы и делает запрет на отключение Wifi. Если пойти вниз по потомкам, то наткнемся на метод a() в классе com.avito.StartActivity. Непонятно, зачем нужно было столько лишних наследований. Возможно, программист ходил сбить детект или запутать себя реверсера.

По таймеру бот стучится на сервер для запроса и выполнения команд. Полный URL выглядит так: http://xxx/admav7/get.php. Данные передаются методом POST, содержащий две переменные: id и info. Значения переменных, как и всего остального в коде, носит говорящие имена. id получается следующим кодом:

На выходе метод возвращает кучу системных настроек формата name:value,{space}… куда попадает страна, IMEI, модель устройства, изготовитель, версия ОС и т.д. А в info попадает Build.VERSION.RELEASE.

В результате запроса бот получает команду. Возможные команды: отправка смс, набор номера, ussd-запрос, логирование и отправка всех смс на сервер. Команды закодированы в base64. После выполнения каждой команды бот отчитывается перед админкой. (http://xxx/admav7/set_result.php).  Для вызгрузки смс бот обращается к скрипту load_sms.php.

Помимо вышеупомянутого имеется форма для перехвата данных банка Comerzbank (не понятно правда зачем). Судя по алгоритму бот необходим для отправки платных смс и/или взаимодействие с банками через ussd. Возможно, еще и распространение через свой список контактов. Решив погуглить команды в надежде побольше узнать о «чудо-программисте» я нашел статью на хабре обзором того же вредоноса, сделанном в августе 2014. Видимо, не нашли.


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Яндекс.Метрика