This Python script is designed to assist in cyber threat intelligence analysis and research activities. 🕵️♀️💻
- Retrieves domains/IPs from multiple sources:
- 🌐 urlscan.io
- 🔎 FOFA
- 🌍 Censys
- 🖧 Shodan
- ⌨️ Direct input
- Searches for articles related to the found domains/IPs using:
- 🔍 Bing Search API
- 🔎 Google Custom Search API
- 🧐 Analyzes search results to find mentions of domains/IPs on other websites
- ✅ Verifies the presence of domains/IPs in article texts, considering various escaping techniques
- 💾 Option to save results to a text file
- 🚀 Efficient Data Gathering: Quickly collect information on multiple domains or IPs from various sources.
- 🧩 Context Enrichment: Find existing research and articles mentioning your targets, providing additional context.
- ⏱️ Time-Saving: Automate the process of searching multiple sources and analyzing results.
- 🌐 Comprehensive Coverage: Leverage multiple data sources and search engines for a broader view.
- 🔍 Result Verification: Automatically check if the domain/IP is mentioned in the article text, reducing false positives.
- 🐍 Python 3.x
- 📚 Libraries:
requests,python-dotenv
Before running the script, configure the API keys:
- 📁 Create a
.envfile in the same directory as the script - 🔑 Add your API keys to the
.envfile in the following format:URLSCAN_API_KEY=your_urlscan_api_key_here BING_API_KEY=your_bing_api_key_here FOFA_API_KEY=your_fofa_api_key_here CENSYS_API_KEY=your_censys_api_key_here SHODAN_API_KEY=your_shodan_api_key_here GOOGLE_API_KEY=your_google_api_key_here GOOGLE_SEARCH_ENGINE_ID=your_google_search_engine_id_here RESULT_LIMIT=100 - 🔐 Obtain API keys from:
- urlscan.io for URLSCAN_API_KEY
- Bing Search API for BING_API_KEY
- FOFA for FOFA_API_KEY
- Censys for CENSYS_API_KEY
- Shodan for SHODAN_API_KEY
- Google Custom Search API for GOOGLE_API_KEY and GOOGLE_SEARCH_ENGINE_ID
The script will automatically read the API keys and settings from the .env file.
- 🖥️ Run the script:
python bulk_search.py - 🔢 Select the search source (URLScan, FOFA, Censys, Shodan, or Direct Input)
- 🔤 Enter the search query or domains/IPs when prompted
- 🔍 Choose the search engine for articles (Bing or Google)
- 👀 Review the displayed results
- 💾 Optionally save the results to a file
For each found domain/IP, the script will display:
- 📌 Article title
- 📝 Article snippet
- 🔗 Article URL
Only articles with confirmed mentions of the domain/IP are shown. 👍