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

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

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

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

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

Категории

Все категории
Loading categories
Инструменты/GitHubGitHub/bfurkanyildiz/android-rce-analizi
Безопасность AndroidАнализ уязвимостейЭксплуатацияCTFТестирование на ПроникновениеDevSecOpsОбучение и ОбразованиеRed TeamingРеагирование на ИнцидентыАнализ ЖурналовЛаборатории и Практика
223 месяцев назадЕщё не проверено

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
GitHub
bfurkanyildiz/android-rce-analizi

Android-rce-analizi

Android CVE-2024-0044, 43093, 23706 анализ уязвимостей и среда лаборатории PoC

Репозиторий
İstinye Üniversitesi

CVE Araştırma ve PoC Laboratuvarı — Android Güvenlik Analizi

GitHub Dil Durum Ders CI/CD Test


👨‍🏫 Информация о научном руководителе

Имя ФамилияKeyvan Arasteh
GitHub@keyvanarasteh
E-mail[email protected]
LinkedInkeyvanarasteh
Веб-сайтqline.tech

👤 Информация о студенте

Имя ФамилияBaha Furkan Yıldız
Номер студента2520****1009

📚 Информация о курсе

Название курсаТестирование на проникновение
Код курсаBGT006

🚀 Краткое описание и объем проекта

Этот проект разработан в качестве финального задания по курсу «Тестирование на проникновение» (BGT006) программы «Технологии информационной безопасности» Университета Истинье. В рамках проекта были детально проанализированы три различные актуальные уязвимости, затрагивающие экосистему Android (CVE-2024-0044, CVE-2024-43093, CVE-2024-23706), создана изолированная лабораторная среда и проведён анализ с использованием методологии кибер-детектива.

🎯 Решаемая проблема и цель проекта

Традиционные анализы безопасности Android часто ограничиваются теоретической документацией или статическими изображениями. Данный проект объединяет цикл атаки и защиты с работающим кодом, решая следующие основные проблемы:

  • Динамический анализ уязвимостей: Захватывает в реальном времени следы критических уязвимостей повышения привилегий (LPE), таких как CVE-2024-0044, на уровне логов Android (logcat).
  • Корреляция Red Team & Blue Team: Соединяет инструмент эксплуатации Red Team (exploit_sim.py) с детектором мониторинга логов Blue Team (detector.py), предоставляя полноценное подтверждение концепции (PoC) атаки и защиты.
  • Оформленные результаты безопасности: Преобразует обнаруженные тревоги в отчёты JSON/CSV в реальном времени в соответствии со стандартами SIEM и передаёт их на центральную панель мониторинга (Dashboard).

⚡ PoC, работающий одной командой (Симуляция атаки и обнаружения)

Для того чтобы пользователь, клонировавший проект, мог запустить его и увидеть результат за считанные секунды, добавлены запускающие PoC скрипты (run_poc.bat / run_poc.sh). Эти скрипты симулируют шаги эксплуатации Red Team и заставляют детектор Blue Team генерировать тревоги, записывая их в файл reports/detection_results.json. Подробные шаги по запуску смотрите в разделе Установка и запуск.

📊 Сводная таблица проанализированных уязвимостей

🔌 Интеграция с модулем курсовой работы (NetVanguard)

Агент анализа логов конечных точек src/detector.py, разработанный в рамках проекта, интегрирован с центральной панелью мониторинга и оповещения аномалий NetVanguard, созданной в качестве курсового проекта. Критические сигнатуры уязвимостей, возникающие на эмуляторе, передавались по сети на серверную часть NetVanguard, симулируя архитектуру централизованного мониторинга (SIEM).

🕵️ Архитектура работы агента анализа логов (src/detector.py)

Агент обнаружения уязвимостей (src/detector.py) — это легковесный движок мониторинга логов конечных точек, разработанный для обнаружения эксплуатационной активности на Android-устройстве.

Основные функции и режимы работы:

  1. Гибкий ввод логов (3 режима):
    • Поток live ADB logcat: Подключается напрямую к эмулятору через команду adb connect для мониторинга логов устройства в реальном времени.
    • Режим конвейера / Stdin: Может быть объединён с другими инструментами CLI через архитектуру adb logcat | python src/detector.py.
    • Отслеживание файла (Tail -f): Динамически отслеживает предварительно сохранённые файлы логов (.log) построчно.
    • Fallback (Ручной ввод): Если ADB или файл логов не установлены, фильтрует строки логов, введённые вручную для целей тестирования (модуль live-симуляции).
  2. Сопоставление сигнатур на основе правил:
    • Использует переменную DETECTION_KEYWORDS из файла .env.
    • При обнаружении критических сигнатур эксплуатации, таких как сбои Android Runtime (SIGSEGV), ошибки установки пакетов (SIGABRT) и сбой защищённых приложений (Process has died), немедленно генерирует в терминале и логах сообщение [TEHLIKE - ALARM].

🛠️ Используемые технологии


📂 Структура каталогов проекта

root@kitploit:~
Android-rce-analizi/
├── .github/
│   └── workflows/
│       └── detector_test.yml  # GitHub Actions (CI/CD) Автоматическая конфигурация тестов
├── .gitattributes             # Конфигурация языковой статистики и атрибутов файлов GitHub
├── README.md                  # Основной документ проекта
├── ROADMAP.md                 # Дорожная карта проекта (Фазы 0-5)
├── start_dashboard.bat        # Запуск веб-панели для Windows
├── start_dashboard.sh         # Запуск веб-панели для macOS/Linux
├── run_poc.bat                # PoC-симулятор одним кликом для Windows
├── run_poc.sh                 # PoC-симулятор одним кликом для macOS/Linux
├── .gitignore                 # Файлы, исключённые из отслеживания Git
├── .env.example               # Шаблон переменных окружения
├── Dockerfile                 # Конфигурация Docker
├── docker-compose.yml         # Многоконтейнерная конфигурация
├── LICENSE                    # Файл лицензии
├── mitigation/                # Файлы смягчения и исправления (патчи) уязвимостей
│   ├── cve_2024_0044_patch.diff
│   ├── cve_2024_23706_mitigation.md
│   └── cve_2024_43093_mitigation.md
├── src/                       # Исходные коды
│   ├── detector.py            # Агент анализа логов конечных точек (движок обнаружения в реальном времени)
│   ├── exploit_sim.py         # Симулятор эксплуатации уязвимостей Red Team
│   └── test_detector.py       # Автоматические модульные тесты для агента
├── reports/                   # Симулированные отчёты сканирования и обнаружения
│   ├── nessus_scan.csv        # Симулированный вывод сканирования уязвимостей Nessus
│   └── detection_results.json # Выводы логов, записанные движком обнаружения в реальном времени
├── web/                       # Интерфейс веб-панели
│   ├── index.html             # Основной HTML-файл панели
│   ├── css/style.css          # Стили интерфейса
│   └── js/main.js             # Динамика интерфейса и симулятор терминала
├── docs/                      # Документация
│   ├── assets/                # Изображения и медиафайлы (включая GIF-демонстрацию)
│   ├── modules/               # Документация модулей
│   ├── references/            # Справочные источники
│   └── research/              # Документы углублённых исследований
│       ├── 01_zafiyet_analizi.md
│       ├── 02_teknik_mekanizma.md
│       ├── 03_saldirgan_perspektifi.md
│       ├── cve_2024_23706.md
│       ├── cve_2024_43093.md
│       ├── detector_test_output.md  # Вывод отчёта тестирования
│       └── final_rapor.md           # Финальный отчёт для сдачи курса
└── honeypot/                  # Файлы среды Honeypot (руководство по установке эмулятора)

🔬 Методология анализа и симуляции

В рамках проекта анализ уязвимостей и симуляции защиты были рассмотрены в виде цикла кибербезопасности, состоящего из 4 основных этапов:

root@kitploit:~
graph TD
    A["1. Анализ уязвимостей и статическое исследование"] --> B["2. Настройка изолированной лабораторной среды"]
    B --> C["3. Симуляция эксплуатации и динамическое логирование"]
    C --> D["4. Корреляция и визуальная панель"]
  1. Статический и теоретический анализ: Изучены исходные коды AOSP (Android Open Source Project) для выявления логических ошибок в сопоставлении UID, ограничениях доступа к базе данных SQLite и механизмах установки пакетов.
  2. Изолированная лабораторная среда: Android-эмулятор (API 33-34) и конфигурация honeypot помещены в изолированную сеть для тестирования на проникновение с помощью контейнеров Docker.
  3. Динамическое логирование и обнаружение: Следы сбоев и обходов (например, SIGSEGV), возникающих при активации уязвимостей, были отфильтрованы и захвачены агентом обнаружения уязвимостей src/detector.py.
  4. Визуализация на панели: Собранные данные были обогащены матрицами рисков, графиками цепочки атак и симуляциями живого терминала, понятными для администраторов и аналитиков, и выведены в интерфейс web/.

Установка и запуск

Предварительные требования

  • Python 3.8+
  • Android SDK (API Level 33-34)
  • Docker и Docker Compose
  • ADB (Android Debug Bridge)

Шаг 1: Подготовка

root@kitploit:~
# 1. Клонируйте репозиторий и перейдите в каталог
git clone https://github.com/bfurkanyildiz/Android-rce-analizi.git
cd Android-rce-analizi

# 2. Подготовьте переменные окружения (без .env используются настройки по умолчанию)
cp .env.example .env

Шаг 2: Варианты запуска

🚀 Вариант A: Симуляция PoC в один клик (Самый быстрый способ)

Для тестирования механизма атаки и обнаружения «из конца в конец» без какой-либо установки или настройки эмулятора:

  • Windows (Двойной щелчок или CMD):
    root@kitploit:~
    run_poc.bat
    
  • macOS / Linux (Терминал):
    root@kitploit:~
    bash run_poc.sh
    
🕵️ Вариант B: Ручной режим live ADB

Для захвата logcat в реальном времени при запущенном Android-эмуляторе:

root@kitploit:~
# Запустите агент (начинает прослушивание живых логов через ADB)
python src/detector.py

# В отдельном терминале запустите симулятор атаки
python src/exploit_sim.py
🐳 Вариант C: Контейнерный режим с Docker

Для запуска всех зависимостей в изолированном контейнере Docker:

root@kitploit:~
docker-compose up -d

Шаг 3: Запуск автоматических тестов

Для тестирования качества программного обеспечения и стандартов CI/CD:

root@kitploit:~
python -m unittest src/test_detector.py

🖥️ Интерфейс веб-панели

Любой пользователь, клонировавший проект, может легко запустить на своём локальном компьютере богатый веб-интерфейс, содержащий отчёты анализа и симуляцию терминала.

Предварительный просмотр панели (Демо)

Демонстрация веб-панели

Для просмотра интерфейса вы можете использовать один из следующих методов:

1. Автоматические скрипты запуска (Рекомендуется)

Чтобы запустить локальный HTTP-сервер в фоновом режиме и автоматически открыть интерфейс в вашем браузере по умолчанию, выполните команду, соответствующую вашей операционной системе:

  • Windows (PowerShell / CMD): Дважды щёлкните файл start_dashboard.bat в корневом каталоге проекта или выполните его из терминала:
    root@kitploit:~
    start_dashboard.bat
    
  • macOS / Linux (Bash): Для запуска непосредственно из терминала (без необходимости в правах на выполнение):
    root@kitploit:~
    bash start_dashboard.sh
    
    или, предварительно предоставив файлу права на выполнение:
    root@kitploit:~
    chmod +x start_dashboard.sh
    ./start_dashboard.sh
    

2. Офлайн-запуск (без сервера)

Для запуска напрямую без настройки локального сервера:

  1. Перейдите в каталог web/.
  2. Дважды щёлкните файл index.html, чтобы открыть его непосредственно в браузере.

3. Запуск с ручным сервером

Если вы хотите запустить Python-сервер вручную:

root@kitploit:~
python -m http.server 8080

Затем в браузере перейдите по адресу http://localhost:8080/web/index.html.

🔄 CI/CD и автоматические проверки безопасности/качества

Наш проект управляется в соответствии с принципами DevSecOps, соответствующими стандартам кибербезопасности. При каждом push или pull request в репозиторий GitHub Actions выполняет следующий конвейер (pipeline):

  1. Поддержка нескольких операционных систем (Matrix Build): Код агента тестируется на системах ubuntu-latest и windows-latest для проверки кроссплатформенной совместимости.
  2. Статический анализ кода (Linter): С помощью инструмента flake8 проверяется соответствие стандартам написания Python (PEP 8).
  3. Статический анализ безопасности (Bandit Scan): С помощью инструмента bandit автоматически сканируются возможные критические шаблоны уязвимостей в коде (все случаи ложных срабатываний отмечены # nosec в соответствии со стандартами кибербезопасности).
  4. Интеграционное тестирование конвейера: Запускается конвейер exploit_sim.py | detector.py для симуляции цикла эксплуатации и обнаружения «из конца в конец».
  5. Вывод отчёта (Artifacts): Созданный в результате успешного выполнения PoC файл detection_results.json автоматически загружается в виде zip-файла в артефакты Actions.

Предварительный просмотр вывода PoC в терминале:

Скриншот терминала PoC


⚠️ Юридическое предупреждение

Этот проект предназначен исключительно для академических и образовательных целей. Все тесты проводятся в контролируемой лабораторной среде на изолированных виртуальных машинах. Любые попытки атак на реальные устройства или сторонние системы незаконны и выходят за рамки данного проекта.


📄 Лицензия

Этот проект лицензирован в соответствии с GNU General Public License v3.0.

Скачать инструмент
Кредиты3 ECTS
Предварительные требованияОсновы сетей, Linux CLI
Семестр2025-2026 Весенний
Код CVEТип уязвимостиОценка CVSSv3Затронутый компонентВектор атаки
CVE-2024-0044Обход Run-as UID (LPE & RCE)8.8 (Высокий)Android System ServerЛокальный (ADB / Вредоносное приложение)
CVE-2024-43093Обход SQLite и DocumentProvider7.8 (Высокий)Библиотека Android SQLiteЛокальный (Доступ к медиа/файлам)
CVE-2024-23706Обход Package Manager7.8 (Высокий)Android Package ManagerЛокальный (Установка приложений)
ТехнологияНазначение
Python 3.xДвижок обнаружения, симуляция атак
Android SDK / ADBУправление эмулятором, связь с устройством
DockerКонтейнеризация изолированной лабораторной среды
FlaskВеб-панель мониторинга
LogcatАнализ системных логов Android