Skip to main content

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 7
  • echo "<ip address>" | ip2vulns
  • echo "<ip address>" | ip2vulns -s 7
  • cat <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)

Source distribution for ip2vulns 1.1.0
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)

Table of built distributions (wheels) for ip2vulns 1.1.0
File Interpreter ABI Platform Actions
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.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page