Installation
PhantomRange requires Python 3.11+. The installer automatically creates a virtual environment and installs all dependencies.
git clone https://github.com/issu321/PhantomRange.git
cd PhantomRange
bash install.sh
On Windows, simply run:
Tip: The installer will create a venv folder, install requirements, and launch Streamlit automatically.
Usage
Once launched, the Streamlit interface opens in your browser. The sidebar provides navigation across all modules:
- Dashboard — Initialize simulations and view risk heatmaps
- Simulation Lab — Execute attack phases step by step or auto-run
- Network Graph — Inspect nodes, view vulnerabilities, and patch them live
- AI Defender — Review ML feature importance and defense logs
- Reports — Export JSON session dumps and CSV inventories
- Terminal — Real-time color-coded event stream
Simulation Overview
Each simulation runs through six safe educational phases. All attack chains are abstracted and sandboxed.
- Reconnaissance — Simulated information gathering about target infrastructure
- Scanning — Port and service enumeration on virtual nodes
- Credential Discovery — Educational weak credential detection
- Privilege Escalation — Simulated elevation of access
- Lateral Movement — Virtual traversal between network segments
- Data Exfiltration — Discovery of sensitive virtual data stores
Difficulty Levels
Choose the right challenge for your skill level:
- Easy — 5 nodes, low vulnerability density, defensive AI
- Medium — 8 nodes, balanced challenge (default)
- Hard — 12 nodes, high vulnerability density, aggressive AI
- Insane — 16 nodes, maximum difficulty, relentless defense
Predefined Scenarios
Beyond random generation, three handcrafted scenarios are included in scenarios.json:
- CyberHeist 2077 — Financial institution with legacy mainframes and cloud APIs
- Neural Hospital — Medical IoT facility with patient data servers
- Shadow Grid — Power grid control systems with SCADA nodes
Troubleshooting
- Port already in use: Streamlit will automatically prompt to run on another port.
- Module not found: Ensure the virtual environment is activated before running.
- CSS not loading: Verify that
assets/styles.css exists in the project root.
- Streamlit not found: On Kali Linux, use the full venv path or
python -m streamlit.
Folder Structure
PhantomRange/
├── app.py # Main application (backend + frontend)
├── requirements.txt # Python dependencies
├── README.md # Project documentation
├── install.sh # Linux / macOS installer
├── install.bat # Windows installer
├── inputguide.md # Usage guide
├── scenarios.json # Predefined scenarios
├── .gitignore # Git exclusions
└── assets/
└── styles.css # Cyberpunk Streamlit theme