Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
ARTist — Фреймворк инструментирования с открытым исходным кодом для Android-приложений и Java-промежуточного ПО, изменяющий код во время компиляции на устройстве с помощью компилятора ART. Сохраняет подписи приложений и позволяет проводить модульный анализ безопасности. | Kitploit
Инструменты/GitHubGitHub/project-artist/artist
Безопасность AndroidОбратная инженерияМобильная безопасностьАнализ Бинарных ФайловСтатьи и ИсследованияОбучение и Образование
GitHubproject-artist/artist

ARTist

Фреймворк инструментирования с открытым исходным кодом для Android-приложений и Java-промежуточного ПО, изменяющий код во время компиляции на устройстве с помощью компилятора ART. Сохраняет подписи приложений и позволяет проводить модульный анализ безопасности.

Репозиторий
118277 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Сайт

ARTist - Набор инструментов для инструментирования и безопасности Android Runtime

Gitter

ARTist — это гибкий фреймворк с открытым исходным кодом для инструментирования приложений Android и Java-промежуточного ПО. Он основан на компиляторе Android Runtime (ART) и изменяет код во время компиляции на устройстве. В отличие от существующих фреймворков инструментирования, он сохраняет оригинальную подпись приложения и работает на уровне инструкций.

Этот репозиторий представляет собой ядро экосистемы ARTist, фактическую реализацию фреймворка инструментирования. Он интегрирован в проект AOSP Android Runtime (ART) для создания специализированной версии компилятора dex2oat на устройстве и предоставляет разработчикам Module API, дающий полный контроль над полным исходным кодом Java целевого приложения, представленным в промежуточном представлении компилятора. ARTist позволяет конечным пользователям использовать уже доступные модули, разработчикам — создавать собственные инструментирования для приложений и системы Android, а исследователям — анализировать и расширять поведение приложений и системы.

ARTist может быть развернут двумя способами: во-первых, как обычное приложение с использованием нашего проекта ArtistGui, который позволяет выполнять неинвазивное инструментирование приложений на рутированных устройствах; во-вторых, как системный компилятор для кастомных прошивок, где он может дополнительно инструментировать системный сервер (Package Manager Service, Activity Manager Service, ...) и классы фреймворка Android (boot.oat). Он поддерживает версии Android, начиная с Marshmallow 6.0 (включительно).

Подробные руководства и более глубокую информацию об экосистеме ARTist можно найти в нашей официальной документации. Присоединяйтесь к нашему чату Gitter.

Независимость от версий

В коде могут встречаться проверки на конкретные версии Android, поскольку некоторые используемые нами внутренние API могут меняться от версии к версии. Проект ART постоянно развивается, поэтому мы стараемся изолировать весь зависящий от версий код либо в нашем форке ART, либо скрывать его за более удобными, не зависящими от версий API. Общая цель — скрыть зависимость от версий от разработчиков модулей, чтобы полученные модули были совместимы со всеми выпусками Android, поддерживаемыми ARTist.

Создание модулей

В текущей предбета-версии модули создаются в папке modules и компилируются с помощью ARTist. Однако наш предстоящий бета-релиз (см. ниже) будет включать специальный SDK, который позволит разрабатывать модули независимо от исходного кода ARTist, так что AOSP больше не потребуется, и вам не нужно жёстко прописывать модули — вы сможете динамически выбирать, какие модули использовать для конкретной цели.

Сборка ARTist

Если вы просто хотите создавать собственные инструментирования, вам не нужно беспокоиться о сборке ARTist. Следуйте пояснениям выше. Однако если вы хотите работать над самим фреймворком инструментирования, следующая информация поможет вам начать:

ARTist является расширением компилятора ART dex2oat, поэтому он встроен как подмодуль в наш кастомизированный форк ART. Для сборки ARTist необходимо собрать форк ART как часть AOSP. Под версией ARTist dex2oat мы подразумеваем бинарный файл dex2oat плюс несколько библиотек (например, libart-compiler), которые вместе образуют наш инструментирующий компилятор. Проект ArtistGui содержит готовые скрипты для сборки ART и ARTist, а также копирования полученных бинарных файлов и библиотек в правильные папки ArtistGui для загрузки на устройство для тестирования.

Предстоящий бета-релиз

Мы скоро входим в бета-фазу, которая принесёт множество изменений во всю экосистему ARTist, включая специальный ARTist SDK для упрощённой разработки модулей, схему релизов и версионирования, вдохновлённую семантическим версионированием, улучшенную и обновлённую онлайн-документацию, отличные новые модули и множество других улучшений. Однако, особенно в переходный период, некоторая информация, например в файлах README.md репозиториев и документации на https://artist.cispa.saarland, может быть слегка устаревшей. Приносим извинения за неудобства и с радостью принимаем отзывы на Gitter. Чтобы быть в курсе текущего прогресса, следите за бета-вехами репозиториев Project: ARTist и проверяйте новые сообщения в блоге на https://artist.cispa.saarland.

Вклад в проект

Мы надеемся создать активное сообщество разработчиков, исследователей и пользователей вокруг проекта ARTist и поэтому рады любым вкладам и отзывам. Есть много способов участвовать и помогать проекту: тестирование и написание модулей, предоставление отзывов о том, какие функции являются ключевыми или отсутствуют, сообщение об ошибках и других проблемах, или просто обсуждение вашего опыта. Команда активно следит за Gitter и, конечно, за репозиториями, и мы рады общаться и обсуждать. У нас пока нет полноценного руководства по внесению вклада, но оно появится в ближайшее время (см. объявление о бета-версии выше).

Академические работы

ARTist основан на статье под названием ARTist - The Android Runtime Instrumentation and Security Toolkit, опубликованной на 2-м Европейском симпозиуме IEEE по безопасности и конфиденциальности (EuroS&P'17). Полный текст статьи доступен здесь. Если вы цитируете ARTist в своих исследованиях, пожалуйста, используйте следующую запись в библиографии:

root@kitploit:~
@inproceedings{artist,
  title={ARTist: The Android runtime instrumentation and security toolkit},
  author={Backes, Michael and Bugiel, Sven and Schranz, Oliver and von Styp-Rekowsky, Philipp and Weisgerber, Sebastian},
  booktitle={2017 IEEE European Symposium on Security and Privacy (EuroS\&P)},
  pages={481--495},
  year={2017},
  organization={IEEE}
}

Существует последующая статья, в которой мы использовали ARTist для удаления библиотек рекламы из сторонних приложений, перемещения библиотеки в отдельное приложение (собственный субъект безопасности) и повторного соединения обоих с помощью пользовательского протокола Binder IPC, сохраняя при этом визуальную точность путём отображения удалённой рекламы в виде плавающих видов поверх теперь очищенного от рекламы приложения. Полный текст статьи The ART of App Compartmentalization: Compiler-based Library Privilege Separation on Stock Android, опубликованной на конференции ACM SIGSAC по компьютерной и коммуникационной безопасности (CCS'17), доступен здесь.

Скачать инструмент