Skip to content

Commit 2a3eedb

Browse files
committed
Final Changes
1 parent 6a26498 commit 2a3eedb

File tree

11 files changed

+45
-79
lines changed

11 files changed

+45
-79
lines changed

.env.example

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
# Application Configuration
32

43
DUPLICATE_MATCH_PERCENTAGE_THRESHOLD=20
@@ -20,4 +19,4 @@ NEXPOSE_PASSWORD=''
2019

2120
OPENVAS_SOCKET='/var/run/openvasmd.sock'
2221
OPENVAS_USERNAME=
23-
OPENVAS_PASSWORD=
22+
OPENVAS_PASSWORD=

README.md

Lines changed: 40 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,41 @@
1-
# VulnScanner
1+
# MultiScanner
22

3-
Security Tool which scans a target using OpenVAS, Zap, and Nexpose. And consolidates the scan result.
3+
A Security Tool which scans a target using OpenVAS, Zap, and Nexpose. And consolidates the scan results.
4+
5+
---
6+
7+
## Usage
8+
9+
### Start a scan against a Target
10+
11+
`./main.py --scan-name <scan-name> --target <url>`
412

513

6-
![](/screenshots/screenshot1.png)
14+
### Get scan result
15+
16+
`./main.py --scan-name <scan-name>`
17+
18+
19+
### Pause/Resume a scan result
20+
21+
- `./main.py --scan-name <scan-name> --pause`
22+
- `./main.py --scan-name <scan-name> --resume`
23+
24+
---
25+
26+
## Screenshots
27+
28+
Scanner Options:
29+
30+
![Scanner Options](/screenshots/screenshot_0.png)
31+
32+
Scanner Report:
33+
34+
![Scanner Report](/screenshots/screenshot_1.png)
35+
36+
Final Output:
37+
38+
![Final Output](/screenshots/screenshot_2.png)
739

840
---
941

@@ -24,55 +56,40 @@ OR
2456

2557
Run in Virtual Env:
2658

27-
```
59+
```console
2860
python3 -m venv .venv
2961

3062
source .venv/bin/activate
3163

3264
pip3 install -r requirements.txt
3365
```
34-
---
3566

67+
---
3668

3769
## Configuration
3870

3971
The configuration of scanners will be in Environment File `.env`. There is sample `.env.example` file in the codebase, update the values with the proper API Keys and Credentials details before using. Rename it to `.env`.
4072

4173
---
4274

43-
44-
## Start a scan against a Target
45-
46-
`./main.py --scan-name <scan-name> --target <url>`
47-
48-
49-
## Get scan result
50-
51-
`./main.py --scan-name <scan-name>`
52-
53-
54-
## Pause/Resume a scan result
55-
56-
- `./main.py --scan-name <scan-name> --pause`
57-
- `./main.py --scan-name <scan-name> --resume`
58-
59-
6075
## Targets to Test
6176
- http://scanme.nmap.org
6277
- http://webscantest.com
6378

6479
---
6580

66-
6781
## ToDo
82+
- [ ] Dockerize
6883
- [ ] Add Nessus
6984
- [ ] Error Stack
7085
- [ ] auto reload
7186
- [ ] Remove logs
7287
- [ ] Save to CSV
7388
- [ ] Make it interactive
7489
- [ ] OOPs
90+
- [ ] Improve Scan Results and Output
7591
- [ ] Color logging
92+
7693
---
7794

7895
### Scanner Interface:

core/common_service.py

Lines changed: 0 additions & 44 deletions
This file was deleted.

main.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414

1515
load_dotenv(find_dotenv())
1616

17-
logging.basicConfig(filename='vuln-scanner.log', level=logging.INFO)
17+
logging.basicConfig(filename='scanner.log', level=logging.INFO)
1818

1919
def main(config):
2020

@@ -56,7 +56,7 @@ def main(config):
5656
parser.add_argument('-t', '--target', help='Specify the Target URL or IP')
5757
parser.add_argument('-p', '--pause', action='store_true', help='Pause a specified scan')
5858
parser.add_argument('-r', '--resume', action='store_true', help='Resume a specified scan')
59-
parser.add_argument('-v', '--version', action='version', version='VulnScanner 1.0')
59+
parser.add_argument('-v', '--version', action='version', version='MultiScanner 1.0')
6060
args = parser.parse_args()
6161

6262
config = {

scanners/nexpose_scanner.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@
1010

1111
from .scanner import Scanner
1212
from core.storage_service import StorageService
13-
from core.common_service import CommonService
1413

1514
load_dotenv(find_dotenv())
1615

@@ -25,7 +24,7 @@ class NexposeScanner(Scanner):
2524
name = 'Nexpose'
2625

2726
def __init__(self):
28-
self.nexpose_config = rapid7vmconsole.Configuration(name='VulnScanner')
27+
self.nexpose_config = rapid7vmconsole.Configuration(name='Scanner')
2928
self.nexpose_config.username = config['USERNAME']
3029
self.nexpose_config.password = config['PASSWORD']
3130
self.nexpose_config.host = config['HOST']
@@ -50,7 +49,6 @@ def __init__(self):
5049
self.nexpose_assets = rapid7vmconsole.AssetApi(api_client)
5150
self.nexpose_report = rapid7vmconsole.ReportApi(api_client)
5251
self.storage_service = StorageService()
53-
self.common_service = CommonService()
5452

5553

5654
def start(self, scan_name, target):

scanners/openvas_scanner.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313

1414
from .scanner import Scanner
1515
from core.storage_service import StorageService
16-
from core.common_service import CommonService
1716

1817
load_dotenv(find_dotenv())
1918

@@ -35,7 +34,6 @@ def __init__(self):
3534
transform = EtreeTransform()
3635
self.gmp = Gmp(connection, transform=transform)
3736
self.storage_service = StorageService()
38-
self.common_service = CommonService()
3937

4038
# Login
4139
try:

scanners/zap_scanner.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99

1010
from .scanner import Scanner
1111
from core.storage_service import StorageService
12-
from core.common_service import CommonService
1312

1413
load_dotenv(find_dotenv())
1514

@@ -29,7 +28,6 @@ class ZapScanner(Scanner):
2928
def __init__(self):
3029
self.zap = ZAPv2(apikey=API_KEY)
3130
self.storage_service = StorageService()
32-
self.common_service = CommonService()
3331

3432
def start(self, scan_name, target):
3533
print(f'[{self.name}] Starting Scan for Target: {target}')

screenshots/screenshot_0.png

205 KB
Loading

screenshots/screenshot_1.png

440 KB
Loading
File renamed without changes.

0 commit comments

Comments
 (0)