
Android CVE-2024-0044, 43093, 23706 zafiyet analizi ve PoC lab ortamı
| Name and Surname | Keyvan Arasteh |
|---|---|
| GitHub | @keyvanarasteh |
| [email protected] | |
| keyvanarasteh | |
| Web Site | qline.tech |
| Name and Surname | Baha Furkan Yıldız |
|---|---|
| Student No | 2520****1009 |
| Course Name | Penetration Testing |
|---|---|
| Course Code | BGT006 |
This project was developed as the final assignment for the Penetration Testing (BGT006) course of the Information Security Technology program at İstinye University. Within the scope of the project, 3 different current vulnerabilities affecting the Android ecosystem (CVE-2024-0044, CVE-2024-43093, CVE-2024-23706) were examined in depth, an isolated lab environment was set up, and analyzed using a cyber detective methodology.
Traditional Android security analyses usually consist only of theoretical documentation or static images. This project solves the following fundamental problems by combining the attack and defense cycle with working code:
exploit_sim.py) end-to-end with the blue team log monitoring detector (detector.py).Single-command PoC launchers (run_poc.bat / run_poc.sh) have been added so that a user who clones the project can run it and see the output within seconds. These scripts simulate the red team's exploitation steps and cause the blue team detector to generate alarms and write to the reports/detection_results.json file. For detailed execution steps, please refer to the Installation and Execution section.
The endpoint log analysis agent src/detector.py developed within the project scope has been integrated into the NetVanguard central anomaly monitoring and alarm panel implemented as the midterm project. Critical vulnerability signatures generated on the emulator are transmitted over the network to the NetVanguard backend engine, simulating a centralized monitoring (SIEM) architecture.
The vulnerability detection agent (src/detector.py) is a lightweight endpoint log monitoring engine designed to detect exploitation activities performed on an Android device.
adb connect command to monitor device logs live.adb logcat | python src/detector.py architecture..log) line by line.DETECTION_KEYWORDS variable in the .env file.[DANGER - ALARM] instantly on the terminal and in logs when it captures critical exploitation signatures such as Android Runtime crashes (SIGSEGV), package installation errors (SIGABRT), and crashing security applications (Process has died).Android-rce-analizi/
├── .github/
│ └── workflows/
│ └── detector_test.yml # GitHub Actions (CI/CD) Automatic Test Configuration
├── .gitattributes # GitHub language statistics and file attributes configuration
├── README.md # Main project document
├── ROADMAP.md # Project roadmap (Phase 0-5)
├── start_dashboard.bat # Windows Web Dashboard launcher
├── start_dashboard.sh # macOS/Linux Web Dashboard launcher
├── run_poc.bat # Windows one-click PoC simulator
├── run_poc.sh # macOS/Linux one-click PoC simulator
├── .gitignore # Git untracked files
├── .env.example # Environment variables template
├── Dockerfile # Docker configuration
├── docker-compose.yml # Multi-container configuration
├── LICENSE # License file
├── mitigation/ # Vulnerability mitigation and patch files
│ ├── cve_2024_0044_patch.diff
│ ├── cve_2024_23706_mitigation.md
│ └── cve_2024_43093_mitigation.md
├── src/ # Source codes
│ ├── detector.py # Endpoint log analysis agent (Real-time detection engine)
│ ├── exploit_sim.py # Red Team vulnerability exploitation simulator
│ └── test_detector.py # Automated unit tests written for the agent
├── reports/ # Simulated scan and detection reports
│ ├── nessus_scan.csv # Simulated Nessus vulnerability scan output
│ └── detection_results.json # Real-time log outputs recorded by the detection engine
├── web/ # Web Dashboard interface
│ ├── index.html # Main dashboard HTML file
│ ├── css/style.css # Interface styles
│ └── js/main.js # Interface dynamics and terminal simulator
├── docs/ # Documentation
│ ├── assets/ # Images and media files (including Demo GIF)
│ ├── modules/ # Module documents
│ ├── references/ # Reference sources
│ └── research/ # In-depth research documents
│ ├── 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 report output
│ └── final_rapor.md # Course submission final report
└── honeypot/ # Honeypot environment files (Emulator setup guide)
Vulnerability analysis and defense simulations within the project scope were handled through a cybersecurity cycle consisting of 4 basic stages:
graph TD
A["1. Vulnerability Analysis & Static Review"] --> B["2. Isolated Lab Environment Setup"]
B --> C["3. Exploitation Simulation & Dynamic Logging"]
C --> D["4. Correlation & Visual Dashboard"]SIGSEGV) that appear when vulnerabilities are triggered were captured by filtering them with the src/detector.py vulnerability detection agent.web/ interface.# 1. Clone the repository and navigate to the directory
git clone https://github.com/bfurkanyildiz/Android-rce-analizi.git
cd Android-rce-analizi
# 2. Prepare environment variables (default settings are used without .env)
cp .env.example .env
To test the attack and detection mechanism end-to-end without any installation or emulator setup:
run_poc.bat
bash run_poc.sh
To capture real-time logcat with your Android Emulator running:
# Start the agent (starts listening for live logs via ADB)
python src/detector.py
# Trigger the attack simulator from a separate terminal
python src/exploit_sim.py
To start all dependencies in an isolated Docker container:
docker-compose up -d
To test software quality and CI/CD standards:
python -m unittest src/test_detector.py
Any user who clones the repository (git clone) can easily run the rich web interface containing analysis reports and terminal simulation locally.
You can use one of the following methods to view the interface:
To start the local HTTP server in the background and automatically open the interface in your default browser, run the command suitable for your operating system:
start_dashboard.bat file in the project root directory or run it from the terminal with this command:
start_dashboard.bat
bash start_dashboard.sh
chmod +x start_dashboard.sh
./start_dashboard.sh
To run directly without setting up any local server:
web/ directory.index.html file to open it directly in your browser.If you prefer to start the Python server manually:
python -m http.server 8080
Then go to http://localhost:8080/web/index.html in your browser.
Our project is managed with software engineering (DevSecOps) principles compliant with cybersecurity standards. For every push or pull request to the repository, GitHub Actions runs the following pipeline:
ubuntu-latest and windows-latest systems to verify cross-platform compatibility.flake8 tool.bandit tool (all false-positive cases are marked with # nosec in cybersecurity standards).exploit_sim.py | detector.py pipe is run to simulate the end-to-end exploitation-detection cycle.detection_results.json generated as a result of a successfully run PoC is uploaded as an automatic zip file to the Actions outputs.
This project is for academic and educational purposes only. All tests are performed on isolated virtual machines in a controlled laboratory environment. Any attempt to attack real devices or third-party systems is illegal and outside the scope of this project.
This project is licensed under the GNU General Public License v3.0.
| 3 ECTS |
| Prerequisites | Network Fundamentals, Linux CLI |
| Semester | 2025-2026 Spring |
| CVE Code | Vulnerability Type | CVSSv3 Score | Affected Component | Attack Vector |
|---|
| CVE-2024-0044 | Run-as UID Bypass (LPE & RCE) | 8.8 (High) | Android System Server | Local (ADB / Malicious App) |
| CVE-2024-43093 | SQLite & DocumentProvider Bypass | 7.8 (High) | Android SQLite Library | Local (Media/File Access) |
| CVE-2024-23706 | Package Manager Bypass | 7.8 (High) | Android Package Manager | Local (App Installation) |
| Technology | Purpose of Use |
|---|
| Python 3.x | Detection engine, attack simulation |
| Android SDK / ADB | Emulator management, device communication |
| Docker | Isolated lab environment containerization |
| Flask | Web monitoring panel |
| Logcat | Android system log analysis |