Вирусы под андроид. Урок №1 (Начало начал)

Статья от нашего друга allmore

Как стать “хакером” андроида?

Да тут особо ни чего мудрить не надо. Просто идем по шагам.
1. Устанавливаем java для разработчиков с офф сайта. (скачать)
2. Качаем android studio (скачать) Качаем полную рекомендованную. Сейчас мы не будем вдаваться в эти все подробности. Оно нам надо?
3. Запасаемся бубликами и пивом. Ведь сейчас придется все это поставить и настроить.
4. Тыкаем в основном далее, не вдумываясь что там написано. Незачем забивать голову 🙂
5. После чего как мы установили все это. Запускаем студию. Ищем сверху значок SDK Manager. Он где-то справа. Нажимаем, ставим везде галки, соглашаемся с условиями и нажимаем инсталл.
6. Опять грызем бублики и пьем великолепное пиво. Тут процесс по дольше, так как будут выкачиваться виртуалки и всяческие тулзы.
7. Ну вот собственно и все.

Как все начиналось?

Мы все поставили, теперь стоит и подумать, а как тут теперь вирус написать 🙂 А для этого мы идем в File -> New -> New project. И тут нам предлагают придумать название проекта и домен сайта компании. Вводим что взбредёт в голову. На основе этих данных генерируется package имя. Которое используется как уникальный идентификатор нашего APK. Жмем далее. Тут нам предлагают выбрать платформу под наш проект. Ну тут мы выбираем только Phone. Остальное рассмотрим позже. Далее. И теперь нам предлагают выбрать как будет выглядеть наше окошечко (Activity) стартовое, главное. Тут есть важная особенность. Чтобы запустить какой либо код сразу после установки, нужно чтобы было какой либо из окошек при старте. Поэтому выбираем любое кроме No Activity. Лучше всего выбрать Empty. Будет легче его вычищать, от ненужного мусора. Далее. Пишем название окошку и нажимаем Finish.

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

Эй, ты слишком жирный!

Пробуем собрать проект наш. Build -> Generate signed apk.. И что мы видим? APK с 1 окошком и приложением которое ни чего не делает. Занимает 1 мегабайт. Надо с этим что-то делать, а именно отказывать от библиотек (AppCompat). Это красивая графика, которая нам не нужна.
Переходи в файл MainActivity.java
Заменяем

на

Удаляем

Заходим в настройки проекта и во вкладке Dependes удаляем строку с AppCompat. Далее переходим к файлу values.xml и styles.xml. Удаляем их.
Заходим в androidManifest.xml и
меняем

на

Собираем наше приложение, ура! размер меньше 40 кб. Уже есть с чем работать.

Почему ты не прячешься?

Далее, нам нужно спрятать нашего зверька. Чтобы иконка не была видна в списке менеджера приложений. А так же надо закрыть наше приложение.
Вставляем после setContentView(R.layout.activity_main) Следующий код:

Этот код скроет нашу иконку с глаз И после всего этого пишем:

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

Тук, тук, открывайте, полиция!

Теперь мы должны сделать так, чтобы наш чудесный APK начал стучать в админку. Тут я уже полагаю, что админка где-то написана. И от нас требуется только стучать. Возьмем самый простой метод, он не будет работать корректно на андроидах выше 4.х. Но с чего-то надо же учиться. Я же не за вас работу делаю. Нам нужно создать сервис. Для этого мы создаем файл с новым class. (Правой тыкаем в проекте, на папку Java). Название класса пишем к примеру Network. Нажимаем окей. Удаляем все содержимое файла кроме первой строки где прописан package и заменяем на

Это код описывает класс сервиса, в котором при запуске, запускает таймер и каждые 10 секунд отправляет GET запрос наURL и запрашивает ответ. Но это не все. Этот код не будет работать если мы объявим наш сервис в манифесте и не дадим права выходить в интернет нашему приложению. Идем в манифест.
Добавляем

и в описание application

Осталось запустить наш сервис. Идем в MainActivity и перед finish() вставляем запуск сервиса

Финишная линия

Теперь у нас есть апк, который сам себя скрывает после запуска и запускает процесс отстука в админ панель. Где написано // Обработка result : там происходит обработка ответа и команд админки. Не сложно, правда? Но пока мы пили пиво. Мы совсем забыли, что если телефон перезагрузят. То наше приложение уже ни когда не запустится. Для этого мы идем опять в манифест.
Добавляем права на запуск после ребута:

Добавляем обязательно обработчик в описание application

Теперь после перезапуска у нас вызовется класс Boot. И сейчас мы его создадим. Все делаем как я писал выше. Создали и удалили все кроме package.

Конец, и пару слов.

Если есть вопросы, задавайте. В окончании у нас появился прям такой игрушечный бот (APK). Что послужит вам хорошей базой и внесет немного понимания, как это все работает. Спасибо за внимание. Надеюсь будет продолжение 🙂 Сильно не пинайте, опыт первый, да и еще ночью пришлось писать. А вот критику хотелось бы услышать, чтобы след урок получился лучше.

5 thoughts on “Вирусы под андроид. Урок №1 (Начало начал)

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