• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

Статья Droidstat-X - Анализ Android APK

Всем привет! Сегодня рассмотрим утилиту способную анализировать APK файлы для ОС Android.

1520190552143.png


Droidstat-X – является инструментом для автоматизации задач обратного инжиниринга APK файлов.

  • Droidstat-X генерирует карту Xmind со всей собранной информацией и доказательствами возможных уязвимостей, идентифицированных с помощью статического анализа.
  • Сама карта является компонентом методологии тестирования на проникновение для Android, которая помогает тестировщикам охватить все важные области во время оценки. Это была основная цель развития инструмента.
  • Инструмент также позволяет добавлять пользовательские проверки простым способом, чтобы подтвердить существование этих шаблонов в инструкциях байт-кода dalvik.
* Dalvik — регистровая виртуальная машина для выполнения программ, написанных на языке программирования Java. Входит в мобильную операционную систему Android.

Установка (Kali Linux 2018.1):

Код:
git clone https://github.com/integrity-sa/droidstatx
cd droidstatx

1520190598492.png


Код:
python install.py

1520190624475.png


  • Установка будет загружать последнюю версию jar-версии apktool, pip install, androguard и xmind-sdk-python.
Методология проведения тестирования.

Методология Xmind структурирована в соответствии с категориями OWASP Mobile TOP 10 2016

В каждой категории есть топы, которые необходимо охватить в формате контрольного списка, чтобы выделить главные моменты. В каждом топе есть URL-адрес соответствующей главы в OWASP, и руководство по тестированию мобильной безопасности (MSTG), объясняющее уязвимость и подтверждающее ее существование.

Инструмент автоматически заполнит некоторые из топов доказательствами, основанными на анализе, чтобы подтвердить, является ли это ложным или истинным срабатыванием.

Каждый раз, когда инструмент работает с APK, если карта xmind уже существует, в рабочей книге будет создана новая вкладка. Таким образом, можно сохранить файл истории каждой новой версии и сравнить ее с предыдущими запусками.

Возвращаемая информация:

  • Package Properties
  • Package Name
  • Version Name
  • Version Code
  • File SHA256
  • Minimum SDK Version
  • Target SDK Version
  • Technology/Framework fingerprinting
  • Outsystems
  • Cordova
  • Used Plugins
  • Xamarin
  • Determine if DLL's are bundled (Automatic extraction of DLL's to output_dlls folder)
  • Determine if the backup option is enabled
  • Determine if the package has multiple dex files
  • Check for presence of secret codes
  • Permissions
  • Exported Components with respective intent-filters and permissions
  • Package Files (some extensions are filtered by default;configurable.)
  • Object Usage
  • WebViews loadUrl
  • Cryptographic Functions
  • Custom Checks (configurable.)
  • Components Security Related Evidences Checks
  • Fragment Injection
  • Lack of FLAG_SECURE or android:excludeFromRecents in activities
  • Package Security Related Evidences Checks
  • Determine if the application is debuggable
  • Determine if the application is debuggable
  • Usage of AddJavascriptInterface (Based on the minimum SDK version, the evidence will indicate RCE possibility or not)
  • Usage of Javascript Enabled
  • Usage of fileAccess Enabled
  • TLS Security Related Evidences Checks
  • Vulnerable TrustManagers
  • Vulnerable HostnameVerifiers
  • Webviews Vulnerable onReceivedSslError Method
  • Direct usage of Socket without HostnameVerifier
  • Determine the usage of NetworkSecurityConfig file
  • Determine the usage of Certificate Pinning (Custom and okHTTP)
  • Cryptography Security Related Evidences Checks
  • Usage of AES with ECB
  • Usage of DES or 3DES
  • Determine the usage of Android Keystore
Техническая спецификация:

  • Инструмент Androguard используется для сбора всей информации о пакете (свойства, компоненты, файлы и т.д.)
  • Для генерации Xmind-карт используется XMind SDK для python из Xmind.
  • Анализ статического кода выполняется с помощью apktool от Ryszard Wiśniewski и Connor Tumbleson, чтобы разобрать байт-код Dalvik, а затем использовать grep и sed для проверки шаблонов.
Анализ APK файла:

Код:
python droidstatx.py –apk antsmasher.apk

1520190726519.png


После проведения анализа APK, в папке с droidstatx появится детальная информация о декомпилированном файле.

1520190744158.png


Содержимое Android Manifest:

1520190762072.png


Отдельным плюсом хочу отметить создание интеллект карты DroidStat-X:

1520190776794.png


Открываем карту с помощью Xmind:

  • XMind — это открытое программное обеспечение для проведения мозговых штурмов и составления интеллект-карт, разрабатываемое компанией XMind Ltd. Эта программа помогает пользователю фиксировать свои идеи, организовывать их в различные диаграммы, использовать эти диаграммы совместно с другими пользователями. XMind поддерживает интеллект-карты, диаграммы Исикавы (также известные как fishbone-диаграммы или причинно-следственные диаграммы), древовидные диаграммы, логические диаграммы, таблицы.
1520190795872.png


Использование этой карты значительно упрощает проведение анализа APK.

1520190810412.png


Спасибо за внимание.

Специально для Codeby.net.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!