Sentinel Scan is a security automation platform designed to accelerate the initial phases of a penetration test by over 90%. It combines a web-based Command & Control (C2) server with a remote Python agent to create a unified, automated reconnaissance workflow.
- C2 Web Dashboard: A simple Flask-based dashboard to initiate and manage scans from any browser.
- Automated Workflow: Integrates Nmap, Nikto, DNS enumeration, VirusTotal, and Shodan into a single, sequential scan.
- Actionable Reporting: Automatically generates detailed PDF reports with a high-level executive summary and actionable remediation steps for each finding.
- Resilient & Secure: Built with a professional Python virtual environment and secure, environment-variable-based key management.
The system uses a client-server model:
- C2 Server (
c2_server.py): The Flask "brain" that serves the web dashboard and manages tasking via a simpletask.txtfile. - Remote Agent (
scanner_engine.py): The "hands" of the operation. A Python script that reads tasks from the C2 and executes the scan workflow on a Kali Linux environment.
- Python 3.10+
- A Kali Linux or other Debian-based OS for the agent.
-
Clone the repository:
git clone [https://github.com/mayur-3112/Sentinel-Scan.git](https://github.com/mayur-3112/Sentinel-Scan.git) cd Sentinel-Scan -
Create and activate a virtual environment:
python3 -m venv venv source venv/bin/activate -
Install dependencies:
pip install -r requirements.txt
-
Set API Keys:
export VT_API_KEY="YOUR_VIRUSTOTAL_KEY" export SHODAN_API_KEY="YOUR_SHODAN_KEY"
-
Run the C2 Server:
python3 c2_server.py
Access the dashboard at http://<your-kali-ip>:5000.