
proof-of-concept mass scanner targeting JetBrains TeamCity instances affected by CVE-2024-27198
Author: EynaExp Scope: Research / Defensive Validation / Authorized Testing Only
This repository contains a proof-of-concept mass scanner targeting JetBrains TeamCity instances affected by CVE-2024-27198, an authentication bypass vulnerability that may lead to full administrative compromise and remote code execution (RCE).
The tool is designed to detect vulnerable TeamCity servers, validate administrative access, and optionally verify remote command execution (RCE) using multiple techniques depending on server version and configuration.
It supports multi-threaded scanning, optional proxying, and structured output logging.
Detects TeamCity instances and extracts version information
Exploits authentication bypass to create an admin user
Generates and retrieves API tokens automatically
OS detection (Linux / Windows / macOS)
Multiple RCE validation methods:
Thread-safe logging and colored console output
Optional HTTP/HTTPS proxy support
Mass scanning via target list
app="JET_BRAINS-TeamCity"
http.component:"teamcity"
⚠️ Behavior and exploitability depend on TeamCity version, hardening, and network exposure.
requests
urllib3
faker
Install dependencies:
pip install -r requirements.txt
python teamcity_scanner.py -l targets.txt -t 20 -o results.txt
| Flag |
|---|
Successful detections include:
whoami execution result (if RCE validated)Example log entry:
Target: http://example.com
Version: 2023.05
User: x8k2m9qz
Pass: ********
Method: Debug Endpoint
Whoami: teamcity
--------------------------------------------------
Primary CVE: CVE-2024-27198
Identify TeamCity endpoint
Attempt authentication bypass
Create admin-level user
Generate API token
Detect operating system
Validate execution via:
This project is provided for educational and security research purposes only.
🔗 Other PoCs by EynaExp https://github.com/EynaExp
🔗 Related Repository https://github.com/EynaExp/CVE-2025-55182-POC
This project is released under the MIT License.
Use responsibly.
| Description |
|---|
-l, --list | File containing target URLs or IP:PORT entries |
-o, --output | File to store vulnerable results (optional) |
-t, --threads | Number of concurrent threads (default: 10) |
--proxy | Proxy URL (e.g. http://127.0.0.1:8080) |