• Stars
    star
    386
  • Rank 108,958 (Top 3 %)
  • Language
    Python
  • License
    Other
  • Created over 9 years ago
  • Updated almost 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A python library for using the new Nessus REST API.

ness6rest.py - a REST interface to Nessus 6

Build Status PyPI Version

Dependencies:

  • Nessus 6.4.x
  • Python 2.7+ or 3.3+
  • requests module (install via pip)
  • The dependencies can be satisfied via pip install -r requirements.txt

Quick Install

pip install nessrest

Features:

  • Logins

    scan = ness6rest.Scanner(url="https://nessusscanner:8834", login="username", password="password")
    
    creds = [credentials.WindowsPassword(username="administrator", password="foobar"),
             credentials.WindowsPassword(username="administrator", password="barfoo"),
             credentials.SshPassword(username="nessususer", password="foobar")]
    
    scan.policy_add_creds(credentials=creds)
  • Build policies

    scan.upload(upload_file="file.audit")
    scan._policy_add_audit(category="Windows", filename="file.audit")
    scan.policy_add(name="Scripted Scan", plugins="21156")
  • Launch scans

    scan.scan_add(targets="192.168.0.1")
    scan.scan_run()
  • Schedule scans

    scan.scan_add(targets="192.168.0.1", start="YYYYMMDDTHHMMSS")
  • Parse scan results

    scan.scan_results()
  • Download KB for target

    kbs = scan.download_kbs()
    
    for hostname in kbs.keys():
        f = open(hostname, "w")
        f.write(kbs[hostname])
        f.close()
  • Output for ticketing/wiki format

Feature Requests:

  • Deleting of a schedule
  • Ability to change "tag" from CLI via config/CLI arg
  • Enforce supported versions of Nessus

Notes:

  • Proxies are not supported, although transparent proxies should work... transparently

nessrest - an example client

Suggested installation:

  • Find the path to your "site-packages" with: python -c "import sys; print(sys.path)"
  • Symlink ness6rest.py in the Git repo in the "site-packages" or "dist-packages" directory.
  • Test by issuing import ness6rest inside the Python interactive interpreter.

Specifying a ca_bundle

If you are using a corporate or self-signed SSL certificate, you can specify the path to a ca_bundle to use for verification by passing it to the Scanner initializer:

scan = ness6rest.Scanner(url="https://nessusscanner:8834", login="username", password="password", ca_bundle="/path/to/ca_bundle.pem")

If you are using the ness_rest client, you can pass this path on the command line using the --ca_bundle option.

Self-signed certificates

If you're running Nessus with a self-signed certificate, and you wish to disable SSL certificate checking, you can pass insecure=True to the Scanner initializer:

scan = ness6rest.Scanner(url="https://nessusscanner:8834", login="username", password="password", insecure=True)

If you're using the nessrest example client, it has an --insecure option that will do this.

Note that this will disable invalid SSL cerficate errors and should be used with caution.

Configuration file:

  • Copy ness_rest.conf.example to ness_rest.conf and configure for your scanner.
  • There are several valid paths for the location of the config file(in order):
  • The path passed from the CLI with --config
  • A permanent config file is searched for in the following locations:
    • $HOME/.ness_rest.conf
    • $HOME/.ness_rest/ness_rest.conf
    • /etc/ness_rest.conf
    • /etc/ness_rest/ness_rest.conf
    • $PWD/ness_rest.conf

Building modules:

  • To build a package to install via pip or easy_install, execute:
    • python setup.py sdist
  • The resulting build will be in $PWD/dist/nessrest-<version>.tar.gz

More Repositories

1

terrascan

Detect compliance and security violations across Infrastructure as Code to mitigate risk before provisioning cloud native infrastructure.
Go
4,472
star
2

poc

Proof of Concepts
Python
1,181
star
3

routeros

RouterOS Security Research Tooling and Proof of Concepts
C++
838
star
4

pyTenable

Python Library for interfacing into Tenable's platform APIs
Python
332
star
5

ghidra_tools

A collection of Ghidra scripts, including the GPT-3 powered code analyser and annotator, G-3PO.
Python
288
star
6

awesome-llm-cybersecurity-tools

A curated list of large language model tools for cybersecurity research.
278
star
7

pi_sniffer

The pocket-sized wireless sniffer
C++
202
star
8

router_badusb

BadUSB in Routers
Shell
190
star
9

upnp_info

A simple script for discovery and analysis of UPnP servers
Python
158
star
10

esp32_image_parser

A toolkit for helping you reverse engineer ESP32 firmware.
Python
137
star
11

DiscordClient

Python
96
star
12

Posh-Nessus

PowerShell Module for automating Tenable Nessus Vulnerability Scanner.
PowerShell
88
star
13

KaiMonkey

KaiMonkey provides vulnerable infrastructure as code (IaC) to help explore and understand common cloud security threats exposed via IaC.
HCL
85
star
14

Tenable.io-SDK-for-Python

Tenable.io SDK offers a scalable and safe way to integrate with the Tenable.io platform.
Python
83
star
15

EscalateGPT

An AI-powered tool for discovering privilege escalation opportunities in AWS IAM configurations.
Python
81
star
16

audit_scripts

Scripts to help work with configuration audit files
Python
76
star
17

Burp-extension-for-GPT

an extension for Burp Suite to allow researchers to utilize GPT for analys is of HTTP requests and responses
Python
74
star
18

integration-jira-cloud

Python
65
star
19

yara-rules

Repository of yara rules
YARA
55
star
20

terrascan-action

Terrascan GitHub action. Scan infrastructure as code including Terraform, Kubernetes, Helm, and Kustomize file for security best practices.
Shell
47
star
21

nasl

A parser for NASL.
Ruby
43
star
22

flask-logging-demo

Demo files for 'The Boring Stuff - Flask Logging' blog post
Python
34
star
23

mIDA

C++
32
star
24

audit_files

Nessus Audit files
31
star
25

Security-Hub

For use in our Tenable.IO to AWS Security Hub integration
Python
24
star
26

terrascan-rego-editor

Visual Studio Code extension for writing Terrascan Rego policies
TypeScript
18
star
27

nasldoc

A documentation generator for NASL.
Ruby
17
star
28

pedant

A static analysis framework for NASL.
Ruby
14
star
29

sublimetext-nasl

13
star
30

accurics-action

The Accurics GitHub Action scans Infrastructure as Code files checked into the respository to help ensure that cloud resources are secure and compliant from creation.
Shell
13
star
31

Kastle

A purely functional, effectful, resource-safe, kafka library for Scala
Scala
12
star
32

csup

Tenable.io Container Security Uploading and Reporting Commandline Tool
Python
11
star
33

microfrontend-demo-app

JavaScript
11
star
34

SinCity

Python
11
star
35

integration-asc

Python
10
star
36

vim-nasl

Vim extensions for programming in NASL
Vim Script
9
star
37

runterrascan.io

CSS
8
star
38

golden-ami-pipeline-with-tenable-sample

The golden AMI pipeline enables creation, distribution, verification, launch-compliance, and decommissioning of the golden AMI out of the box. This version of the pipeline integrates with Tenable.io for vulnerability assessments.
6
star
39

container-security-action

Tenable's Container security action which helps scan docker images.
Python
6
star
40

notepadpp-nasl

5
star
41

integration-cef

Python
5
star
42

was-action

Github action to trigger WAS
Python
5
star
43

cloud-snapshot-automation

Templates for creating Cloud Snapshots
HCL
4
star
44

splunk-app-pvs

This app provides Splunk dashboards and reporting for Tenable PVS
HTML
4
star
45

presentations

4
star
46

integrations-ibm-cloudpak-for-security

Python
4
star
47

Tenable.ad-EventsLogs-Subscriber

Tenable.ad IOA module event logs listener
Rust
4
star
48

entra-id-federation-abuse-research-required-roles

PowerShell
4
star
49

UncoverDCShadow

PowerShell
3
star
50

integration-cscc

Tenable.io to Google Cloud Security Command Center Bridge
Python
3
star
51

emacs-nasl

Emacs Lisp
3
star
52

tenablecs_demo

HCL
2
star
53

asm-python-examples

Bit Discovery REST API scripts
Python
2
star
54

labs

1
star
55

accurics-vscode

TypeScript
1
star
56

WSUSpendu

PowerShell
1
star
57

nasl-layer

Spacemacs layer for NASL
1
star
58

asm-asset-importer

Scripts to integrate BitDiscovery data with Tenable
Python
1
star
59

atom-grammar-nessuskb

Grammar file for Nessus KB files.
CoffeeScript
1
star
60

accurics-orb

The Accurics CircleCI Orb scans IaC (Infrastructure as Code) to help identify vulnerabilities prior to cloud deployment.
Shell
1
star
61

helm-charts

Smarty
1
star