Android глазами хакера

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Рассмотрена внутренняя архитектура ОС Android, используемые ею разделы и файловые системы, принцип работы механизмов обновления и внутренних инструментов безопасности. Рассказано о разграничении доступа в ОС Android, о привилегиях, методах получения прав root, кастомизации и установке нестандартных прошивок. Описаны инструменты для дизассемблирования, отладки и анализа кода мобильных приложений, приведены примеры модификации кода с целью изменения функций ПО и внедрения в приложение сторонних модулей. Даны подробные рекомендации по деобфускации кода и обходу антиотладки, а также практические советы по защите собственных приложений от декомпиляции и исследования. Приводятся сведения о вредоносных программах для платформы Android, используемых ими уязвимостях, даны примеры кода таких программ. Рассказывается об использовании стандартных функций Android в нестандартных целях и способах противодействия вредоносному ПО.

Author(s): Зобнин Е. Е.
Series: Глазами хакера
Edition: 1
Publisher: БХВ-Петербург
Year: 2021

Language: Russian
Pages: 272
City: СПб.
Tags: Security; Malware Detection; Java; Android; Malware Analysis; Static Analysis; Dynamic Analysis; Obfuscation; Disassembling; Reverse Engineering; Rootkits; Hacking

Оглавление
Введение
Что вы найдете в этой книге?
Для кого эта книга?
Условные обозначения
ЧАСТЬ I
Глава 1. Пять столпов Android. Технологии, лежащие в основе самой популярной ОС
Виртуальная машина
Многозадачность
Binder
Сервисы Google
Ядро Linux и рантайм
Android Go
Глава 2. От кнопки включения до рабочего стола
Шаг первый. Aboot и таблица разделов
Шаг второй. Раздел boot
Шаг второй, альтернативный. Раздел recovery
Шаг третий. Инициализация
Шаг четвертый. Zygote и app_process
Глава 3. Treble, А/В-разметка, динамические и модульные обновления
Treble
А/В-разметка
Динамические обновления
Виртуальная А/В-разметка
Модульные обновления
Трюк с сохранением пространства
Глава 4. Броня Android
Полномочия
Ограничения
Запрет доступа к другим приложениям
Шифрование данных
Доверенная среда исполнения
Доверенная загрузка
Защита от срыва стека
SELinux
Seccomp-bpf
Google Play Protect
Smart Lock
WebView
SafetyNet
Kill Switch
Цифровые подписи АРК
Итог
Глава 5. Альтернативные прошивки, рутинг и кастомизация
CopperheadOS
Тог
Рутинг
Super SU
Magisk
Модификации
ЧАСТЬ II
Глава 6. Основы взлома
Делаем платное бесплатным
Снаряжаемся
Вскрываем подопытного
Изучаем код
Вносим правки
Глава 7. Внедряемся в чужое приложение
Ищем точку входа
Пишем payload
Вызываем payload
Крадем данные
Периодические задачи
Глава 8. Продираемся сквозь обфусцированный код
Как работает обфускация
Упаковщики
Деобфускаторы
Небольшой пример
Глава 9. Взлом с помощью отладчика
Отладчик и реверсинг
Флаг отладки
Декомпиляция и дизассемблирование
Android Studio
Используем дизассемблированный код
Глава 10. Frida
Dynamic Instrumentation Toolkit
Первые шаги
Пишем код
Внедряемся
Ломаем CrackMe
Перехват нативных библиотек
Другие примеры применения Frida
Обход защиты на снятие скриншотов
Извлечение SSL-сертификата приложения из KeyStore
Обход детекта root
Обход упаковщиков
Выводы
Глава 11. Drozer и другие инструменты
Активности
Перехват интентов
Перехват возвращаемого значения
Content Provider
Сервисы
Другие возможности
Другие уязвимости
Выводы
Другие инструменты
Статический анализ
Jadx
JEB
Apktool
APKiD
Simplify
DeGuard
Bytecode Viewer
QARK
Динамический анализ
Objection
Inspeckage
Что еще может пригодиться?
ЧАСТЬ III
Глава 12. История вирусописательства для Android
До нашей эры, или Как написать вирус за 15 минут
Geinimi и все-все-все
DroidDream и начало борьбы за чистоту маркета
Zeus-in-the-Mobile
Первый IRC-бот
Первый полиморфный троян
Вирус-матрешка
Действительно продвинутый троян
Ransomware
Adware
Click fraud
А как же другие ОС?
Глава 13. Современные образцы вредоносных программ
Toast Amigo
Android/Banker ,GT! tr. spy
Chrysaor
Rootnik
Mandrake
Joker
MalLocker
Вредоносные библиотеки
Уязвимости, используемые троянами
StrandHogg — уязвимость с подменой приложений
Cloak & Dagger
Перекрытие диалогов запросов разрешений
Глава 14. Пишем вредоносную программу для Android
Каркас
Информация о местоположении
Список установленных приложений
Дамп SMS
Запись аудио
Съемка
Складываем все вместе
Задания по расписанию
Снимок при включении экрана
Запуск при загрузке
Запись аудио по команде
Отправка данных на сервер
Выводы
Глава 15. Используем возможности Android в личных целях
IPC
Интенты
Широковещательные сообщения
Логирование звонков
Скрытые API
Оригинальный фреймворк
Рефлексия
Какие еще скрытые API существуют?
Запрет рефлексии в Android 9
Системный API
Немного теории
Уровень доступа privileged
Уровень доступа signature
Уровень доступа development
Права администратора и сервис Accessibility
Нажимаем кнопки смартфона
Извлекаем текст из полей ввода
Блокируем устройство и защищаемся от удаления
Перехватываем и смахиваем уведомления
Права root
Запускаем команды
Получаем права суперпользователя
Несколько примеров
Сторонние библиотеки
Расширение функциональности
Плагины
API
Простейший плагин
Поиск плагинов
Запуск функций плагина
Динамическая загрузка кода
Простейший пример
Долой рефлексию
Когда модулей много
Берем модули с собой
Глава 16. Скрываем и запутываем код
Обфускация
Собственный словарь
Скрытие строк
Сохраняем строки в strings.xml
Разбиваем строки на части
Кодируем помощью XOR
Шифруем строки
Советы по использованию шифрования
Храним данные в нативном коде
«Крашим» измененное приложение
Сверяем цифровую подпись
Проверяем источник установки
Защита от реверса и отладки
Root
Magisk
Эмулятор
Отладчик
Xposed
Frida
Клонирование
Что дальше?
Предметный указатель