TNSCM
TNSCM (Tenable Nessus CLI Manager) by LimberDuck is a CLI tool which enables you to perform certain actions on Nessus by (C) Tenable, Inc. via Nessus API.
Main features
Initial version of TNSCM lets you perform actions like:
- plugin family list
- policy
- list
- delete
- scan
- list
- delete
- server info
- status
- licensed IPs
- version
- advanced settings list
- user list
To filter data to specific values you can use JMESPath.
Installation
Note: It's advisable to use python virtual environment for below instructions. Read more about python virtual environment in The Hitchhiker’s Guide to Python!
Read about virtualenvwrapper in The Hitchhiker’s Guide to Python!: virtualenvwrapper provides a set of commands which makes working with virtual environments much more pleasant.
-
Install TNSCM
pip install tnscmTo upgrade to newer version run:
pip install -U tnscm -
Run TNSCM
tnscm
Commands
| option / command | plugin |
policy |
scan |
server |
settings |
user |
|---|---|---|---|---|---|---|
--help |
yes | yes | yes | yes | yes | yes |
--list |
yes | yes | yes | yes | ||
--list-family |
yes | |||||
--delete |
yes | yes | ||||
--filter |
yes | yes | yes | yes | yes | |
--format |
yes | yes | yes | yes | yes | |
--status |
yes | |||||
--ips |
yes | |||||
--version |
yes |
Example filters
To check possible keys and values by returning only first entry:
--filter "[] | [0]" --format json
To get only name and id columns:
--filter "[].{id: id, name: name}"
To sort by id column:
--filter "sort_by([], &id)[].{id: id, name: name}"
To filter returned data to these items which name contain exampl:
--filter "[? contains(name, 'exampl')].{id: id, name: name}"
To filter returned data to these items which name contain exampl1 or exampl2:
--filter "[? contains(name, 'exampl1') || contains(name, 'exampl2')].{id: id, name: name}"
To filter returned data to item which id is equal to number 10:
--filter '[?id==`10`].{id: id, name: name}'
To filter returned data to item which name is equal to string test name:
--filter "[?name == 'test name'].{id: id, name: name}"
To filter returned data to items which name is different than string test name:
--filter "[?name != 'test name'].{id: id, name: name}"
Meta
Change log
See CHANGELOG.
Licence
MIT: LICENSE.
Authors
Damian Krawczyk created TNSCM (Tenable Nessus CLI Manager) by LimberDuck.
Release files for tnscm 0.0.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tnscm-0.0.7.tar.gz | 12.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tnscm-0.0.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.4 kB
Release files / tnscm-0.0.7.tar.gz
| Download URL | tnscm-0.0.7.tar.gz |
|---|---|
| Size | 12.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
470333f5709b2740e8e83dacd87e5ea2bf88efe40146b6b97969ebff5d3cea66
|
|
BLAKE2b-256 checksum How to use checksums |
284056bfa7736e20c551716856370ff3412b22fe5b6661f1ba572b201ec3cb60
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.9.23
|
Release files / tnscm-0.0.7-py3-none-any.whl
| Download URL | tnscm-0.0.7-py3-none-any.whl |
|---|---|
| Size | 11.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c1ceade43fd6b6ce9bf52c0e9f2cccc19fe7849e29e96fadd5c2a627d40e684c
|
|
BLAKE2b-256 checksum How to use checksums |
266b18302ae8b3a32b52ffbc8e77eb9b14ce9a43d29736b57b7bc03555185efe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.9.23
|