The IP Sync Tool is designed to automate IP address management across various security platforms, including InsightVM, Shodan, and InsightCloudSec. By synchronizing IP lists between these platforms, it ensures consistent and up-to-date IP tracking and threat management.
- IP Synchronization: Automates the process of adding, removing, and replacing IP addresses across different platforms based on current listings and predefined conditions.
- Logging: Provides detailed logging for auditing and troubleshooting purposes.
- Error Handling: Implements robust error handling and rate limiting strategies to ensure reliable operation.
Ensure you have Python 3.x installed on your system. Install all required dependencies using:
pip install -r requirements.txt
The main dependency is requests
for making HTTP requests.
Set up the necessary environment variables and configurations for each platform:
INSIGHTCLOUDSEC_API_KEY
: Your InsightCloudSec API key.INSIGHTCLOUDSEC_BASE_URL
: Base URL for the InsightCloudSec API.
INSIGHTVM_USERNAME
: Your InsightVM username.INSIGHTVM_PASSWORD
: Your InsightVM password.INSIGHTVM_BASE_URL
: Base URL for the InsightVM API.
SHODAN_API_KEY
: Your API key for Shodan.SHODAN_BASE_URL
: Base URL for the Shodan API, typically "https://api.shodan.io".
SHODAN_CLOUDFLARE_NET
: Network ID for Cloudflare in Shodan.SHODAN_AZURE_AWS_NET
: Network ID for Azure and AWS in Shodan.INSIGHTVM_CLOUDFLARE_SITE_ID
: Site ID for Cloudflare in InsightVM.INSIGHTVM_AZURE_AWS_SITE_ID
: Site ID for Azure and AWS in InsightVM.
To run the main program, execute:
python main.py
This script will orchestrate the process of fetching, comparing, and updating IP addresses across the platforms specified.
Contributions to this project are welcome! Please fork the repository and submit a pull request with your suggested changes.
This project is licensed under the GNU license.