
Android CVE-2024-0044, 43093, 23706 취약점 분석 및 PoC 랩 환경
| 성명 | Keyvan Arasteh |
|---|---|
| GitHub | @keyvanarasteh |
| 이메일 | [email protected] |
| keyvanarasteh | |
| 웹사이트 | qline.tech |
| 성명 | Baha Furkan Yıldız |
|---|---|
| 학번 | 2520****1009 |
| 강의명 | 침투 테스트 |
|---|---|
| 강의 코드 | BGT006 |
| 학점 | 3 ECTS |
이 프로젝트는 이스틴예 대학교 정보 보안 기술 프로그램 침투 테스트(BGT006) 강의의 기말 과제로 개발되었습니다. 프로젝트 범위 내에서 Android 생태계에 영향을 미치는 3가지 다른 최신 취약점(CVE-2024-0044, CVE-2024-43093, CVE-2024-23706)을 심층적으로 분석하고, 격리된 랩 환경을 구축하여 사이버 탐정 방법론으로 분석하였습니다.
전통적인 Android 보안 분석은 일반적으로 이론적 문서나 정적 이미지에 불과합니다. 이 프로젝트는 공격 및 방어 사이클을 실행 코드와 결합하여 다음과 같은 근본적인 문제를 해결합니다:
exploit_sim.py)와 블루 팀 로그 모니터링 탐지기(detector.py)를 종단 간 연결하여 완전한 공격-방어 PoC(Proof of Concept)를 제공합니다.프로젝트를 클론한 사용자가 몇 초 안에 실행하여 결과를 볼 수 있도록 원클릭 PoC 실행기(run_poc.bat / run_poc.sh)가 추가되었습니다. 이 스크립트들은 레드 팀의 익스플로잇 단계를 시뮬레이션하고 블루 팀 탐지기가 알람을 생성하여 reports/detection_results.json 파일에 기록하도록 합니다. 자세한 실행 단계는 설치 및 실행 섹션을 참조하세요.
프로젝트 범위 내에서 개발된 src/detector.py 엔드포인트 로그 분석 에이전트는 중간 프로젝트로 구현된 NetVanguard 중앙 이상 징후 모니터링 및 알람 패널에 통합되었습니다. 에뮬레이터에서 발생하는 중요한 취약점 서명이 네트워크를 통해 NetVanguard 백엔드 엔진으로 전송되어 중앙 모니터링(SIEM) 아키텍처를 시뮬레이션했습니다.
취약점 탐지 에이전트(src/detector.py)는 Android 장치에서 수행되는 익스플로잇 활동을 탐지하기 위해 설계된 경량 엔드포인트 로그 모니터링 엔진입니다.
adb connect 명령으로 연결하여 장치 로그를 실시간 모니터링합니다.adb logcat | python src/detector.py 아키텍처로 다른 CLI 도구와 파이프 연결 가능합니다..log)을 동적으로 줄 단위로 추적합니다..env 파일의 DETECTION_KEYWORDS 변수에서 제공됩니다.SIGSEGV), 패키지 설치 오류(SIGABRT), 보안 앱 충돌(Process has died)과 같은 중요한 익스플로잇 서명을 감지하면 즉시 터미널과 로그에 [TEHLIKE - ALARM]을 생성합니다.Android-rce-analizi/
├── .github/
│ └── workflows/
│ └── detector_test.yml # GitHub Actions (CI/CD) Otomatik Test Yapılandırması
├── .gitattributes # GitHub dil istatistikleri ve dosya nitelikleri yapılandırması
├── README.md # Proje ana belgesi
├── ROADMAP.md # Proje yol haritası (Faz 0-5)
├── start_dashboard.bat # Windows için Web Dashboard başlatıcı
├── start_dashboard.sh # macOS/Linux için Web Dashboard başlatıcı
├── run_poc.bat # Windows için tek tıkla çalışan PoC simülatörü
├── run_poc.sh # macOS/Linux için tek tıkla çalışan PoC simülatörü
├── .gitignore # Git takip dışı dosyalar
├── .env.example # Ortam değişkenleri şablonu
├── Dockerfile # Docker yapılandırması
├── docker-compose.yml # Çoklu konteyner yapılandırması
├── LICENSE # Lisans dosyası
├── mitigation/ # Zafiyet azaltma ve düzeltme (patch) dosyaları
│ ├── cve_2024_0044_patch.diff
│ ├── cve_2024_23706_mitigation.md
│ └── cve_2024_43093_mitigation.md
├── src/ # Kaynak kodlar
│ ├── detector.py # Uç nokta log analiz ajanı (Gerçek zamanlı tespit motoru)
│ ├── exploit_sim.py # Kırmızı Takım (Red Team) zafiyet istismar simülatörü
│ └── test_detector.py # Ajan için yazılmış otomatik birim (unit) testleri
├── reports/ # Simüle edilmiş tarama ve tespit raporları
│ ├── nessus_scan.csv # Simüle edilmiş Nessus zafiyet tarama çıktısı
│ └── detection_results.json # Tespit motorunun anlık olarak kaydettiği log çıktıları
├── web/ # Web Dashboard arayüzü
│ ├── index.html # Ana dashboard HTML dosyası
│ ├── css/style.css # Arayüz stilleri
│ └── js/main.js # Arayüz dinamikleri ve terminal simülatörü
├── docs/ # Dokümantasyon
│ ├── assets/ # Görseller ve medya dosyaları (Demo GIF dahil)
│ ├── modules/ # Modül belgeleri
│ ├── references/ # Referans kaynakları
│ └── research/ # Derinlemesine araştırma belgeleri
│ ├── 01_zafiyet_analizi.md
│ ├── 02_teknik_mekanizma.md
│ ├── 03_saldirgan_perspektifi.md
│ ├── cve_2024_23706.md
│ ├── cve_2024_43093.md
│ ├── detector_test_output.md # Test rapor çıktısı
│ └── final_rapor.md # Ders teslim final raporu
└── honeypot/ # Honeypot ortam dosyaları (Emülatör kurulum rehberi)
프로젝트 범위 내에서 취약점 분석 및 방어 시뮬레이션은 4가지 기본 단계로 구성된 사이버 보안 사이클로 다루어졌습니다:
graph TD
A["1. Zafiyet Analizi & Statik İnceleme"] --> B["2. İzole Lab Ortamı Kurulumu"]
B --> C["3. İstismar Simülasyonu & Dinamik Loglama"]
C --> D["4. Korelasyon & Görsel Dashboard"]
SIGSEGV 등)을 src/detector.py 취약점 탐지 에이전트가 필터링하여 포착했습니다.web/ 인터페이스로 전송했습니다.# 1. Repoyu klonlayın ve dizine gidin
git clone https://github.com/bfurkanyildiz/Android-rce-analizi.git
cd Android-rce-analizi
# 2. Ortam değişkenlerini hazırlayın (.env olmadan varsayılan ayarlar kullanılır)
cp .env.example .env
별도의 설치나 에뮬레이터 설정 없이 공격 및 탐지 메커니즘을 종단 간 테스트하려면:
run_poc.bat
bash run_poc.sh
Android 에뮬레이터가 실행 중일 때 실시간 logcat을 캡처하려면:
# Ajanı başlatın (ADB üzerinden canlı logları dinlemeye başlar)
python src/detector.py
# Ayrı bir terminalden saldırı simülatörünü tetikleyin
python src/exploit_sim.py
모든 종속성을 격리된 Docker 컨테이너에서 시작하려면:
docker-compose up -d
소프트웨어 품질 및 CI/CD 표준을 테스트하려면:
python -m unittest src/test_detector.py
프로젝트를 클론한 모든 사용자는 분석 보고서와 터미널 시뮬레이션이 포함된 풍부한 웹 인터페이스를 로컬에서 쉽게 실행할 수 있습니다.
인터페이스를 보려면 다음 방법 중 하나를 사용할 수 있습니다:
로컬 HTTP 서버를 백그라운드에서 시작하고 기본 브라우저에서 자동으로 인터페이스를 열려면 운영 체제에 맞는 명령을 실행하세요:
start_dashboard.bat 파일을 더블 클릭하거나 터미널에서 다음 명령으로 실행할 수 있습니다:
start_dashboard.bat
bash start_dashboard.sh
chmod +x start_dashboard.sh
./start_dashboard.sh
로컬 서버를 설치하지 않고 직접 실행하려면:
web/ 디렉토리로 이동합니다.index.html 파일을 더블 클릭하여 브라우저에서 직접 엽니다.Python 서버를 수동으로 시작하려면:
python -m http.server 8080
그런 다음 브라우저에서 http://localhost:8080/web/index.html로 이동합니다.
이 프로젝트는 사이버 보안 표준에 부합하는 소프트웨어 엔지니어링(DevSecOps) 원칙으로 관리됩니다. 리포지토리에 푸시하거나 풀 리퀘스트가 있을 때마다 GitHub Actions가 다음 파이프라인을 실행합니다:
ubuntu-latest 및 windows-latest 시스템에서 모두 테스트되어 플랫폼 간 호환성을 확인합니다.flake8 도구를 사용하여 Python 코딩 표준(PEP 8)을 검사합니다.bandit 도구를 사용하여 코드에서 발생할 수 있는 중요한 취약점 패턴을 자동으로 검사합니다(모든 오탐(false positive)은 사이버 보안 표준에 따라 # nosec로 표시됨).exploit_sim.py | detector.py 파이프를 실행하여 종단 간 익스플로잇-탐지 사이클을 시뮬레이션합니다.detection_results.json이 자동으로 zip 파일로 압축되어 Actions 출력에 업로드됩니다.
이 프로젝트는 오직 학술 및 교육 목적으로만 제작되었습니다. 모든 테스트는 통제된 연구실 환경, 격리된 가상 머신에서 수행됩니다. 실제 장치나 타사 시스템에 대한 공격 시도는 불법이며 이 프로젝트의 범위를 벗어납니다.
이 프로젝트는 GNU General Public License v3.0에 따라 라이선스가 부여됩니다.
| 선수 과목 | 네트워크 기초, Linux CLI |
| 학기 | 2025-2026 봄 |
| CVE 코드 | 취약점 유형 | CVSSv3 점수 | 영향 받는 구성 요소 | 공격 벡터 |
|---|
| CVE-2024-0044 | Run-as UID 우회 (LPE & RCE) | 8.8 (높음) | Android System Server | 로컬 (ADB / 악성 앱) |
| CVE-2024-43093 | SQLite 및 DocumentProvider 우회 | 7.8 (높음) | Android SQLite 라이브러리 | 로컬 (미디어/파일 접근) |
| CVE-2024-23706 | Package Manager 우회 | 7.8 (높음) | Android Package Manager | 로컬 (앱 설치) |
| 기술 | 사용 목적 |
|---|
| Python 3.x | 탐지 엔진, 공격 시뮬레이션 |
| Android SDK / ADB | 에뮬레이터 관리, 장치 통신 |
| Docker | 격리된 랩 환경 컨테이너화 |
| Flask | 웹 모니터링 패널 |
| Logcat | Android 시스템 로그 분석 |