Детальная информация

Название: Анализ android-приложений методами SAST: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_01 «Технология разработки и сопровождения качественного программного продукта»
Авторы: Пинаев Никита Дмитриевич
Научный руководитель: Коликова Татьяна Всеволодовна
Организация: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Выходные сведения: Санкт-Петербург, 2022
Коллекция: Выпускные квалификационные работы; Общая коллекция
Тематика: анализ; андроид; приложение; метод sast; sast; android; devsecops; ssdl; ci/cd
Тип документа: Выпускная квалификационная работа бакалавра
Тип файла: PDF
Язык: Русский
Уровень высшего образования: Бакалавриат
Код специальности ФГОС: 09.03.04
Группа специальностей ФГОС: 090000 - Информатика и вычислительная техника
DOI: 10.18720/SPBPU/3/2022/vr/vr22-3157
Права доступа: Доступ по паролю из сети Интернет (чтение, печать, копирование)
Ключ записи: ru\spstu\vkr\19793

Разрешенные действия:

Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Группа: Анонимные пользователи

Сеть: Интернет

Аннотация

В ходе работы был разработан инструмент для статического анализа android приложений, который можно встраивать в пайплайн CI/CD или использовать для ручного анализа локально. Была всесторонне исследована предметная область, описаны основные понятия и стандарты, произведен анализ существующих решений на предмет преимущества и недостатков. Была определена ценность созданного сканера и чем он выгодно отличается от уже существующих. Также были описаны все дефекты, автоматизированный поиск которых был реализован, были приведены примеры эксплуатации и векторы атак. Был реализован скрипт для скачивания приложений из Google Play, который помог в анализе реальных приложений. Была произведена исследовательская работа по анализу самых известных приложений в системе дистрибуции Google Play Market, в ходе которой была реализована проверка корректности работы инструмента. Также были обозначены возможные пути развития и улучшения. В итоге был получен интересный опыт, проведена большая аналитическая и исследовательская работа, поставленные цели были достигнуты.

In the graduation work I developed a tool for static analysis of android applications, which can be embedded into the CI/CD pipeline or used for manual analysis locally. The subject area was comprehensively researched, the basic concepts and standards were described, existing solutions were analyzed for advantages and disadvantages. I defined the value of the created scanner and compared it favorably to existing ones. Also, I described all the defects, which automated search was implemented, I gave examples of exploitation and attack vectors. I implemented a script for downloading applications from Google Play, which helped a lot for scanning real world applications. Research work was done while analyzing top-tier applications in the Google Play Market distribution system, during which I was convinced that my tool is working correctly. Possible ways of development and improvement were also outlined. As a result, I got an interesting experience, did huge research, create my SAST tool and achieved my goals.

Права на использование объекта хранения

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все Прочитать Печать Загрузить
Интернет Авторизованные пользователи СПбПУ Прочитать Печать Загрузить
-> Интернет Анонимные пользователи

Оглавление

  • ГЛАВА 1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ
    • 1.1 Использование в DevSecOps
    • 1.2 SAST анализ
    • 1.3 OWASP Mobile
    • 1.4 Инструменты декомпиляции APK
    • 1.5 Строение APK файла
    • 1.6 Использование REGEX
  • ГЛАВА 2 ОБЗОР СУЩЕСТВУЮЩИХ РЕШЕНИЙ
    • 2.1 Общие тенденции
    • 2.2 Мировые лидеры
    • 2.3 Российские решения
    • 2.4 Open-Source инструменты
    • 2.5 Итоги и актуальность
  • ГЛАВА 3 РЕАЛИЗАЦИЯ И ОПИСАНИЕ ДЕФЕКТОВ
    • 3.1 AndroidManifest
    • 3.2 SSL Pinning
    • 3.3 Чувствительная Информация
    • 3.4 Проверка токенов для Google API
  • ГЛАВА 4 РЕАЛИЗАЦИЯ SAST ИНСТРУМЕНТА
    • 4.1 Составление требований к SAST инстументу
    • 4.2 Основной класс для декомпиляции и обработки apk
    • 4.3 Автоматизация поиска дефектов
    • 4.4 Вариативность использования
    • 4.5 Методы дистрибуции
    • 4.6 Скрипт для скачивания apk из Google Play
  • ГЛАВА 5 ТЕСТИРОВАНИЕ И АНАЛИЗ РЕЗУЛЬТАТОВ
    • 5.1 Тестирование работы SAST инструмента
    • 5.2 Проверка на реальных приложениях
    • 5.3 Анализ корректности работы
    • 5.4 Перспективы развития
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

Статистика использования

stat Количество обращений: 6
За последние 30 дней: 0
Подробная статистика