Details

Title Анализ android-приложений методами SAST: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_01 «Технология разработки и сопровождения качественного программного продукта»
Creators Пинаев Никита Дмитриевич
Scientific adviser Коликова Татьяна Всеволодовна
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Imprint Санкт-Петербург, 2022
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects анализ ; андроид ; приложение ; метод sast ; sast ; android ; devsecops ; ssdl ; ci/cd
Document type Bachelor graduation qualification work
File type PDF
Language Russian
Level of education Bachelor
Speciality code (FGOS) 09.03.04
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2022/vr/vr22-3157
Rights Доступ по паролю из сети Интернет (чтение, печать, копирование)
Record key ru\spstu\vkr\19793
Record create date 1/18/2023

Allowed Actions

Action 'Read' will be available if you login or access site from another network

Action 'Download' will be available if you login or access site from another network

Group Anonymous
Network Internet

В ходе работы был разработан инструмент для статического анализа 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.

Network User group Action
ILC SPbPU Local Network All
Read Print Download
Internet Authorized users SPbPU
Read Print Download
Internet Anonymous
  • ГЛАВА 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 Перспективы развития
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

Access count: 10 
Last 30 days: 0

Detailed usage statistics