Jose E. Rodriguez 89f936cfd7 Update 'README.md' | 1 месяц назад | |
---|---|---|
Dockerfile | 1 месяц назад | |
README.md | 1 месяц назад | |
createTargers.py | 1 месяц назад | |
docker-compose.yml | 1 месяц назад | |
networkdiscovery.py | 1 месяц назад | |
portscanner.py | 1 месяц назад | |
starttask.py | 1 месяц назад | |
taskmaker.py | 1 месяц назад |
This project automates network discovery, port scanning, target creation, task management, and report generation using OpenVAS and Python scripts. It also includes a web application for visualizing reports and provides instructions for accessing OpenVAS via the web interface and API.
bash
sudo apt install nmap # For Ubuntu/Debian
brew install nmap # For MacOS
bash
sudo apt install docker-compose # Ubuntu/Debian
brew install docker-compose # MacOS
Install the required Python libraries:
pip install pandas dash plotly gvm-tools psutil nmap
docker
directory:
bash
cd docker
bash
docker compose build
bash
docker compose up -d
https://localhost:9392
(or replace localhost
with your server’s IP address).admin
admin
(or the password you set during installation).9390
(default).gvm-cli
or Python’s gvm-tools
library to interact with the API.Run the scripts in the following order:
Run networkdiscovery.py
to identify active hosts on the network:
sudo python networkdiscovery.py
This script:
active_hosts.csv
containing the discovered hosts.Run portscanner.py
to scan open ports on the discovered hosts:
sudo python portscanner.py
This script:
active_hosts.csv
file.ports.csv
.Run createtargets.py
to create OpenVAS targets for each active host:
python createtargets.py
This script:
active_hosts.csv
file.target_id.csv
.Run taskmaker.py
to create OpenVAS tasks for each target:
python taskmaker.py
This script:
target_id.csv
.task_id.csv
.Run starttask.py
to start all the created OpenVAS tasks:
python starttask.py
This script:
task_id.csv
.Run getreports.py
to check task statuses and generate reports:
python getreports.py
This script:
task_id.csv
.consolidated_reports.csv
.Run webapp.py
to launch the web interface for visualizing reports:
python webapp.py
This script:
http://127.0.0.1:8050
or replace 127.0.0.1
with your server’s IP address.active_hosts.csv
:
networkdiscovery.py
.csv
IP,Discovery Timestamp
192.168.0.1,2024-11-20 15:16:09
ports.csv
:
portscanner.py
.csv
IP,Port,Service
192.168.0.1,80,HTTP
target_id.csv
:
createtargets.py
.csv
IP,Target ID
192.168.0.1,abc123
task_id.csv
:
taskmaker.py
.csv
Target ID,Task ID
abc123,task001
task_reports.csv
:
getreports.py
.csv
Task ID,Report File
task001,report_task001.csv
consolidated_reports.csv
:
getreports.py
.csv
Task ID,Host,Port,Vulnerability,Severity
task001,192.168.0.1,80,Example Vulnerability,High
task_id.csv
exists before running starttask.py
.getreports.py
script might take time to execute, depending on the number of tasks and their completion status.bash
docker logs <container_name>
9392
.sudo
.