Авторские курсы Михаила Тарасова

0
0 отзывов

Электронная книга: «Android-хакинг с нуля реверс, патчинг и первые модификации приложений»

🔥 Как перестать бояться smali и начать ломать Android-приложения? На связи Михаил Тарасов (Timcore). Вы постоянно спрашивали, как вкатиться в мобильный ... Показать больше
Преподаватель
Mikhail Tarasov
101 Студенты Зачислен
  • Описание
  • Учебная программа
  • Отзывы

🔥 Как перестать бояться smali и начать ломать Android-приложения?

На связи Михаил Тарасов (Timcore). Вы постоянно спрашивали, как вкатиться в мобильный реверс, с чего начать писать свои тулзы и как патчить APK, чтобы ничего не развалилось.

Отвечаю: я собрал весь свой опыт и упаковал его в книгу «Android-хакинг с нуля: реверс, патчинг и первые модификации приложений».
 
Никакой академической воды. Только хардкор, реверс и практика. Я писал её так, будто сижу рядом с тобой, мы пьем кофе, и я показываю тебе, как расковырять чужую приложуху от манифеста до инъекции через Frida.
 
Что под капотом?
🛠 База без духоты: Архитектура Android, как работает песочница и зачем нам ADB.
🛠 Инструменты реверсера: JADX, Apktool, Burp Suite — собираем боевую лабу.
🛠 DEX и smali для людей: Учимся читать байткод, искать скрытую логику, ключи и feature-флаги.
🛠 Патчинг: Как изменить условия, пропатчить проверки лицензии и собрать рабочий APK обратно, не сломав подпись.
🛠 Динамический анализ: Базовые хуки на Frida. Меняем поведение приложения прямо в оперативе.

 

Объём книги: 408 страниц.
 
🎁 Лайфхак прямо из книги, чтобы ты понимал уровень:
Хочешь вытащить APK любого приложения прямо со своего телефона для анализа? Хватит искать их на левых сайтах, делай в 3 строчки через ADB:

# Ищем пакет
adb shell pm list packages | grep «имя_приложения»
# Узнаем полный путь к APK
adb shell pm path com.target.app
# Вытягиваем к себе на комп
adb pull /data/app/…/base.apk ./target.apk
И всё, клиент у тебя на компе, готов к загрузке в JADX! Таких практических кусков в книге — десятки.

«Android-хакинг с нуля реверс, патчинг и первые модификации
приложений»

Введение
— Для кого эта книга и чего ожидать
— Что читатель умеет после последней страницы
— Закон, этика и безопасная лаборатория
— Как работать с книгой: теория → демо → практика → чек-лист

Часть I. Основы Android
Глава 1. Что такое Android-хакинг
— Реверс, анализ, патчинг, моддинг: в чём разница
— Кто такой исследователь приложений
— Какие навыки реально нужны на старте
— Где используют эти знания в реальной жизни

Глава 2. Архитектура Android
— Слои системы: от ядра Linux до приложений
— Sandbox, процессы, permissions
— Роль Java/Kotlin, ART и нативных библиотек
— Как приложение взаимодействует с системой

Глава 3. Анатомия APK
— Структура APK-файла изнутри
— AndroidManifest.xml, classes.dex, resources.arsc, assets, lib
— Чем APK отличается от AAB
— Что можно понять об APK ещё до декомпиляции

Глава 4. Подготовка рабочей среды
— Установка JDK, ADB, Android Studio
— Эмулятор или физическое устройство: что выбрать
— Режим разработчика, USB debugging, logcat
— Как собрать безопасную изолированную лабораторию

Часть II. Инструменты исследователя
Глава 5. ADB: командный центр хакера
— Установка, удаление и запуск приложений из консоли
— Работа с shell, файлами и логами
— Просмотр пакетов, activity и intent
— Топ-команд для ежедневной работы

Глава 6. JADX и Apktool: декомпиляция без боли
— Чем JADX отличается от Apktool и когда что использовать
— Просмотр Java-подобного кода
— Разбор ресурсов, строк и manifest
— Ограничения декомпиляции и типичные артефакты

Глава 7. Анализ сетевого трафика
— Как приложение общается с сервером
— Настройка прокси и перехват HTTP/HTTPS
— Работа с сертификатами
— Первая практика: анализ запросов тестового APK

Глава 8. Frida: хуки без компиляции
— Что такое динамический анализ и чем он отличается от статического
— Подключение к приложению во время работы
— Написание первых хуков методов
— Когда Frida удобнее, чем ручная правка smali

Часть III. Реверс-инжиниринг APK
Глава 9. Как читать чужой код
— С чего начинать разбор незнакомого APK
— Поиск entry point и ключевых классов
— Навигация по пакетам и именам
— Как быстро отсеять мусорный код

Глава 10. AndroidManifest.xml как карта приложения
— Activity, Service, BroadcastReceiver, ContentProvider
— Exported-компоненты и точки входа через IPC
— Intent-filter: что это говорит об архитектуре
— Что manifest может рассказать до единой строки декомпилированного
кода

Глава 11. DEX и smali: читаем байткод
— Что такое smali и почему его не надо бояться
— Регистры, методы, условия, вызовы
— Сопоставление smali и декомпилированного Java-кода
— Самые важные инструкции для начала работы

Глава 12. Поиск интересных мест в коде
— Проверки логина, лицензии и локальных условий
— Скрытые Activity, debug-режимы и feature-флаги
— Строки, URL, API-ключи, конфиги
— Быстрые паттерны поиска для новичка

Глава 13. Защиты приложений: первое знакомство
— Что делает обфускация с кодом
— Root detection, anti-debug, certificate pinning: как они выглядят
— Как распознать защитный код среди обычного
— Почему не нужно паниковать, если код «нечитаем»

Часть IV. Патчинг и модификации
Глава 14. Первые правки в smali
— Замена строк и констант
— Изменение условий, флагов и возврата методов
— Как не сломать логику одной лишней инструкцией
— Практика: первая рабочая правка в учебном APK

Глава 15. Сборка, подпись и установка
— Пересборка APK через Apktool
— Подпись модифицированного приложения
— Почему APK может не запускаться после правок
— Диагностика: типичные ошибки и их быстрое исправление

Глава 16. Динамический патчинг через Frida
— Подмена логики без перепаковки APK
— Перехват аргументов и возвратов методов
— Изменение поведения приложения на лету
— Практика: обход простой проверки без касания файлов

Глава 17. Введение в native-слой
— Что такое JNI и .so-библиотеки
— Где заканчивается Java и начинается native-код
— Первое знакомство с Ghidra: установка и базовый разбор
— Поиск простых проверок в нативном коде

Глава 18. Тестирование, отладка и контроль версий
Как проверять правки пошагово
— Ведение заметок и фиксация изменений
— Диффы, откаты, рабочие снапшоты
— Как не потерять рабочую версию APK

Часть V. Практика и рост
Глава 19. Полный разбор учебного APK
— Первичный осмотр и постановка цели
— Анализ manifest и структуры кода
— Поиск нужной логики
— Внесение изменений и проверка результата
— Разбор по шагам с комментариями

Глава 20. Мини-лаборатории
— Лаб 1: Найти и запустить скрытую Activity
— Лаб 2: Изменить локальную проверку через smali
— Лаб 3: Подменить значение через Frida-хук
— Лаб 4: Исправить текст и поведение интерфейса

Глава 21. Ошибки новичков и как их избежать
— Попытка понять сразу весь проект
— Путаница между исходником и результатом декомпилятора
— Поломка подписи и ресурсов
— Хаотичное тестирование без фиксации шагов

Глава 22. Куда расти дальше
— Автоматизация рутинного анализа APK
— Более глубокий динамический анализ и Frida-скрипты
— Углублённый native reversing
— CTF, тренировочные APK, bug bounty и исследовательские стенды

Приложения
Приложение А. Шпаргалка по ADB-командам
Приложение Б. Шпаргалка по smali-инструкциям
Приложение В. Ошибки при сборке и подписи APK
Приложение Г. Набор учебных лабораторных заданий