ip2vulns
An IP to vulnerabilities utility. This tool is able to retrieve information related to given IP(s). This tool takes advantage of Shodan InternetDB API.
For CVE information, this tool retrieve CVE information from a github repo nvd-json-data-feed
Disclaimer
By using this, you also agree to the term of use of the APIs used.
Installation
Install with pip
Using the following pip command to install: pip install ip2vulns
Usage
usage: ip2vulns [-h] [-i INPUT [INPUT ...]] [--cvedict CVEDICT] [-s CVSS] [-o OUT] [--nostdout] [-v]
IP 2 vulnerability tools
options:
-h, --help show this help message and exit
-i INPUT [INPUT ...], --input INPUT [INPUT ...]
Query information from https://internetdb.shodan.io/
support multiple ip and cidr, separate using space, e.g. -i 8.8.8.8 51.83.59.99 192.168.0.0/24
--cvedict CVEDICT Config CVE database integrate with go-cvedict, checkout at: https://github.com/BoxHezi/go-cvedict
-s CVSS, --cvss CVSS Enable cvss score filter, required a number
If 0 is given, targets found with no CVE information will be filtered out. And all CVEs will be checked.
When 0 is given, the process can be slow if huge amount of CVEs are founded.Not Recommend to pass 0 in.
-o OUT, --out OUT Define output file, default print to stdout
Available option: stdout (default), csv, json
For csv: please specify filename
For json: a directory out_json will be created
--nostdout Disable print result to stdout
IP with unsuccessful querying (i.e. Exception happened) will still be printed
-v, --version Print current version
Output to file
When output to csv file, please specify the filename.
For example, ip2vulns -i 1.1.1.1 -o 1.1.1.1.csv, the output file will be 1.1.1.1.csv.
When output to json file, a directory out_json will be created. Results will be stored using <ip>.json.
For example, ip2vulns -i 1.1.1.1 -o json, then a directory out_json will be created. And the output filename will be 1.1.1.1.json.
To disable print to stdout, apply --disable-stdout in command line argument
Example
ip2vulns -i <ip address> <cidr> <input file>ip2vulns -i <ip address> <cidr> <input file> -s 7echo "<ip address>" | ip2vulnsecho "<ip address>" | ip2vulns -s 7cat <input file> | ip2vulns
Use ip2vulns in Python script
from ip2vulns import ip2vulns_scan
# s => success list
# f => failure list
s, f = ip2vulns_scan("[<ip address>]") # ip address need to be passed in as a LIST
Metadata
Release files for ip2vulns 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| ip2vulns-1.1.0.tar.gz | 12.5 kB | Without provenance | Details for ip2vulns-1.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| ip2vulns-1.1.0-py3-none-any.whl | Python 3 | none | any | Details for ip2vulns-1.1.0-py3-none-any.whl |
Total release size: 27.6 kB
Release files / ip2vulns-1.1.0.tar.gz
| Download URL | ip2vulns-1.1.0.tar.gz |
|---|---|
| Size | 12.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
33e09736bc86f3a147939e647c4d7c6cec1092fcffd58220f8ae81e84c902c06
|
|
BLAKE2b-256 checksum How to use checksums |
05ab7a6124d60925b287616d126a150f144995763debbd49a681b5cb34ff45d1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.1
|
Release files / ip2vulns-1.1.0-py3-none-any.whl
| Download URL | ip2vulns-1.1.0-py3-none-any.whl |
|---|---|
| Size | 15.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fb56562854e98114aabc1b2a45a1733d1d0f5983aa6e00b69bb4618c901ee9da
|
|
BLAKE2b-256 checksum How to use checksums |
52ae33e50f4d08a8709726fc1b16c0da424de3000c71e3398916f8feaa2f08bd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.1
|
Security for ip2vulns 1.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.