Skip to main content

A professional command-line tool for searching IP addresses using Shodan API

Project description

SIPG - Shodan IP Grabber

PyPI version Python 3.7+ License: MIT

SIPG Banner

A professional command-line tool for searching IP addresses using the Shodan API. SIPG provides an intuitive interface for security researchers, penetration testers, and network administrators to discover and analyze internet-connected devices.

✨ Features

  • 🔍 Advanced Search: Powerful query syntax with support for all Shodan search filters
  • 📊 Rich Output: Beautiful tables and detailed information display
  • 💾 Flexible Export: Save results to files in various formats
  • Rate Limiting: Built-in API rate limiting to respect Shodan's limits
  • 🔐 Secure Configuration: Secure API key storage in user's home directory
  • 🌍 Cross-Platform: Works on Windows, macOS, and Linux
  • 📈 Progress Tracking: Real-time progress indicators for long searches
  • 🎯 Multiple Output Formats: Simple IP lists, detailed results, or formatted tables

🚀 Quick Start

Installation

From PyPI (Recommended)

pip install sipg

From Source

git clone https://github.com/emptymahbob/sipg.git
cd sipg
pip install -e .

Configuration

  1. Get your Shodan API key from shodan.io
  2. Configure SIPG with your API key:
sipg configure

Basic Usage

# Search for IPs with SSL certificates from Uber
sipg search 'ssl:"Uber Technologies Inc"'

# Search with detailed information
sipg search 'http.server:Apache' --details

# Display results in a table format
sipg search 'port:80' --table

# Save results to a file
sipg search 'country:"United States"' -o results.txt

# Limit results and add delay
sipg search 'product:"nginx"' -m 50 -d 2.0

📖 Commands

sipg configure

Configure your Shodan API key securely.

sipg search <query>

Search for IP addresses using Shodan.

Options:

  • -o, --output FILE: Save results to file
  • -m, --max-results N: Maximum number of results
  • -d, --delay SECONDS: Delay between API requests
  • --details: Show detailed results
  • --table: Display results in table format

sipg info

Show information about your Shodan API key and usage.

sipg examples

Display example search queries.

sipg clear

Clear the stored API key.

🔍 Search Query Examples

# SSL certificates
sipg search 'ssl:"Uber Technologies Inc"'
sipg search 'ssl.cert.subject.CN:"*.uber.com"'

# HTTP servers
sipg search 'http.server:Apache'
sipg search 'http.status:200'

# Geographic location
sipg search 'country:"United States"'
sipg search 'city:"New York"'

# Port scanning
sipg search 'port:80'
sipg search 'port:443'

# Products and services
sipg search 'product:"nginx"'
sipg search 'product:"MySQL"'

# Organizations
sipg search 'org:"Amazon"'
sipg search 'org:"Google"'

# Complex queries
sipg search 'ssl:"Uber Technologies Inc" http.status:200'
sipg search 'port:80 -http.title:"Invalid URL"'

🛠️ Development

Setup Development Environment

git clone https://github.com/emptymahbob/sipg.git
cd sipg
pip install -e ".[dev]"

Run Tests

pytest

Code Formatting

black sipg/

Type Checking

mypy sipg/

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📞 Support

⚠️ Disclaimer

This tool is for educational and authorized security research purposes only. Always ensure you have proper authorization before scanning any networks or systems. The authors are not responsible for any misuse of this tool.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sipg-2.0.2.tar.gz (100.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sipg-2.0.2-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file sipg-2.0.2.tar.gz.

File metadata

  • Download URL: sipg-2.0.2.tar.gz
  • Upload date:
  • Size: 100.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for sipg-2.0.2.tar.gz
Algorithm Hash digest
SHA256 9c0b01d34ae89f8e3e49ca9e495b10ee031457dd02138e44b59735aab0f45217
MD5 f5531180140b88cb49cb60b21d3d8e74
BLAKE2b-256 11208e004bc3ca7eae5c2005129315585a92b757468b53f251ce655b608d3662

See more details on using hashes here.

File details

Details for the file sipg-2.0.2-py3-none-any.whl.

File metadata

  • Download URL: sipg-2.0.2-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.3

File hashes

Hashes for sipg-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 754e32bb1e747042dae3fd1d2a02287685638bac4abe0b5e88b58bbe01de0770
MD5 89e60f005ab454e91d9cd03a4cf0a5e5
BLAKE2b-256 517e2d879ce0ea97afcc79ac69d469c5cdbdc9e2901a35160e9597cb00a6bae7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page