
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 |
| 선수 과목 | 네트워크 기초, Linux CLI |
| 학기 | 2025-2026 봄 |
이 프로젝트는 이스틴예 대학교 정보 보안 기술 프로그램 침투 테스트(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 파일에 기록하도록 합니다. 자세한 실행 단계는 설치 및 실행 섹션을 참조하세요.
| 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 | 로컬 (앱 설치) |
프로젝트 범위 내에서 개발된 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]을 생성합니다.| 기술 | 사용 목적 |
|---|---|
| Python 3.x | 탐지 엔진, 공격 시뮬레이션 |
| Android SDK / ADB | 에뮬레이터 관리, 장치 통신 |
| Docker | 격리된 랩 환경 컨테이너화 |
| Flask | 웹 모니터링 패널 |
| Logcat | Android 시스템 로그 분석 |
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