β οΈ Warning OSINT Toolkit is not production ready yet. This is an early prototype that still needs some work to be done.
OSINT Toolkit is a self-hostable, on-demand analysis platform designed for security specialists. It consolidates various security tools into a single, easy-to-use environment, streamlining everyday tasks. Optimized for single-user operation, OSINT Toolkit runs locally in a Docker container and is not intended for long-term data storage or management. Instead, it focuses on accelerating daily workflows, such as news aggregation and analysis, IOC and email investigations, and the creation of threat detection rules. To further enhance efficiency, OSINT Toolkit integrates generative AI capabilities, providing additional support for analysis and decision-making.
- Features
- Integrated Services
- Tech Stack
- Architecture
- Prerequisites
- Installation
- Configuration
- API Keys Setup
- Usage
- Development
- License
- Contributing
The Newsfeed module keeps you up to date about the latest cybersecurity news by aggregating articles from trusted sources such as Wired, The Hacker News, Security Magazine, Threatpost, TechCrunch Security, and Dark Reading. Stay up-to-date with industry trends and potential threats without having to visit multiple websites or subscribe to numerous newsletters. The module extracts IOCs automatically from the news articles and lets you analyze news in no time using AI.
Key Capabilities:
- RSS feed aggregation from multiple security news sources
- Automatic IOC extraction from articles
- AI-powered news analysis
- Keyword-based filtering
- Scheduled news updates
The IOC Tools module helps you analyze different types of indicators of compromise (IOCs) such as IP addresses, hashes, email addresses, domains, and URLs. It leverages services like VirusTotal, AlienVault, AbuseIPDB, and social media platforms like Reddit and Twitter to gather information about the IOCs. The module automatically detects the type of IOC being analyzed and utilizes the appropriate services to provide relevant information, enabling you to identify potential threats and take necessary actions to protect your organization.
Sub-modules:
- Single Lookup - Analyze individual IOCs
- Bulk Lookup - Analyze multiple IOCs at once
- Extractor - Extract IOCs from text or files
- Defang/Fang - Safely format IOCs for sharing
The Email Analyzer module allows you to analyze .eml files for potential threats. Simply drag and drop an .eml file into the module, and it will parse the file, perform basic security checks, extract indicators of compromise (IOCs), and analyze messages with the help of AI.
Key Capabilities:
- EML file parsing
- Header analysis
- Security checks (SPF, DKIM, DMARC)
- IOC extraction (URLs, IPs, domains, hashes)
- Email routing/hop analysis
- Attachment analysis
- AI-powered message analysis
The Domain Finder module helps you protect your organization from phishing attacks by searching for recently registered domains that match specific patterns. By utilizing the URLScan.io API, you can view screenshots of websites associated with domains without visiting them directly. Additionally, you can check each domain and its resolved IP against multiple threat intelligence services.
Key Capabilities:
- Domain search by patterns/keywords
- URLScan.io integration for screenshots
- Multi-service threat intelligence lookup
- Historical domain analysis
- IP reputation checking
The AI Templates module provides powerful AI-based solutions for log data analysis, email text analysis, and source code explanation. It lets you create templates for AI tasks and supports you in the prompt engineering process.
Key Capabilities:
- Custom AI prompt templates
- Log analysis
- Email text analysis
- Source code explanation
- Multiple LLM provider support (OpenAI, Anthropic, Google Gemini)
- Template management and sharing
The CVSS Calculator module allows you to calculate the CVSS 3.1 score of a vulnerability and export the calculation as a markdown or JSON file.
Key Capabilities:
- CVSS 3.1 base score calculation
- Environmental score adjustment
- Temporal score adjustment
- Export to Markdown/JSON
- Visual score display
The Detection Rules module is a GUI for creating Sigma, YARA and Snort/Suricata rules.
Key Capabilities:
- Sigma rule creation
- YARA rule creation
- Snort/Suricata rule creation
- Rule validation
- Rule templates
OSINT Toolkit integrates with over 20+ threat intelligence and security services:
| IPs | Domains | URLs | Emails | Hashes | CVEs |
|---|---|---|---|---|---|
| AbuseIPDB | AlienVault | AlienVault | Emailrep.io | AlienVault | GitHub |
| AlienVault | CheckPhish.ai | CheckPhish.ai | GitHub | GitHub | NIST NVD |
| CheckPhish.ai | GitHub | GitHub | Hunter.io | Maltiverse | |
| CrowdSec | Maltiverse | Google Safe Browsing | Have I Been Pwned | Pulsedive | |
| GitHub | Pulsedive | Maltiverse | |||
| IPQualityScore | Shodan | Pulsedive | ThreatFox | ||
| Maltiverse | ThreatFox | Shodan | |||
| Pulsedive | ThreatFox | Virustotal | |||
| Shodan | |||||
| URLScan | |||||
| ThreatFox | Virustotal | URLScan | |||
| Virustotal | |||||
| Virustotal |
- Threat Intelligence: AlienVault OTX, Maltiverse, Pulsedive, ThreatFox, VirusTotal, CrowdSec, URLhaus, MalwareBazaar
- Security Scanning: CheckPhish.ai, Google Safe Browsing, IPQualityScore, URLScan.io
- Network Infrastructure: Shodan, BGPView
- Social Media: Reddit, Twitter/X
- Email Identity: EmailRep.io, Have I Been Pwned, Hunter.io
- Development/Research: GitHub, NIST NVD
- Framework: FastAPI
- Database: SQLAlchemy (SQLite)
- AI/ML: LangChain (OpenAI, Anthropic, Google Gemini)
- Task Scheduling: APScheduler
- HTTP Client: aiohttp
- RSS Parsing: Feedparser
- Framework: React 18
- UI Library: Material UI (MUI)
- State Management: Recoil
- Routing: React Router
- Charts: Recharts, Nivo
- Markdown: React Markdown, React MD Editor
- Containerization: Docker & Docker Compose
- Web Server: Nginx (Frontend)
- ASGI Server: Uvicorn (Backend)
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β OSINT Toolkit β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β βββββββββββββββββββββββ βββββββββββββββββββββββββββ β
β β Frontend β β Backend β β
β β (React + MUI) βββββΊβ (FastAPI) β β
β β β β β β
β β - React Router β β - API Routes β β
β β - Recoil State β β - SQLAlchemy ORM β β
β β - Recharts/Nivo β β - LangChain LLM β β
β β - Nginx β β - APScheduler β β
β βββββββββββββββββββββββ βββββββββββββ¬ββββββββββββββ β
β β β
β ββββββββββββββββββββββββββββββββββββββββΌβββββββββββββββββ β
β β Data Layer (SQLite) β β
β β - Settings, API Keys, Templates, Newsfeed Cache β β
β βββββββββββββββββββββββββββββββββββββββββββββββββββββββββ β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
- Docker Engine 20.10+
- Docker Compose 2.0+
- 4GB RAM minimum
- 10GB disk space
-
Clone or download the repository
git clone https://github.com/trickest/osint-toolkit.git cd osint-toolkit -
Start the application
docker-compose up -d
-
Access the application
- Open your browser to:
http://localhost:4000
- Open your browser to:
# Build and start containers
docker-compose up -d --build
# View logs
docker-compose logs -f
# Stop containers
docker-compose downThe application uses default configurations. For production use, you may want to customize:
| Variable | Description | Default |
|---|---|---|
BACKEND_PORT |
Backend port | 8000 |
FRONTEND_PORT |
Frontend port | 4000 |
DATA_DIR |
Data directory | ./data |
All data is stored in the ./data directory:
- SQLite database
- Uploaded files
- Cached data
OSINT Toolkit requires API keys for full functionality. Configure keys through the web interface:
- Navigate to Settings β API Keys in the sidebar
- Enter your API keys for the services you want to use
- Save your configuration
| Feature | Required Services |
|---|---|
| Newsfeed | OpenAI (optional for AI analysis) |
| IOC Lookup | VirusTotal, AlienVault, AbuseIPDB, etc. |
| Email Analyzer | OpenAI (optional for AI analysis) |
| Domain Finder | URLScan.io |
| AI Templates | OpenAI, Anthropic, or Google Gemini |
- VirusTotal: https://www.virustotal.com/gui/join-us
- AlienVault OTX: https://otx.alienvault.com/api
- AbuseIPDB: https://www.abuseipdb.com/account/api
- Shodan: https://account.shodan.io/
- URLScan.io: https://urlscan.io/docs/api/
- OpenAI: https://platform.openai.com/api-keys
- Anthropic: https://console.anthropic.com/
- Google Gemini: https://aistudio.google.com/app/apikey
Note: Many services offer free tiers. Start with free services and add paid keys as needed.
- Configure API Keys - Set up at least one threat intelligence service
- Explore Features - Try each module from the sidebar
- Customize Settings - Adjust modules, keywords, and CTI profile
- Go to IOC Tools β Single Lookup
- Enter an IOC (IP, domain, hash, URL, email)
- View results from multiple services
- Go to Email Analyzer
- Drag and drop an
.emlfile - Review extracted IOCs and security checks
- Go to Domain Finder
- Enter domain patterns to search
- Review screenshots and threat intelligence
osint-toolkit/
βββ backend/
β βββ app/
β β βββ core/ # Core functionality
β β β βββ database/ # Database models
β β β βββ settings/ # Configuration
β β β βββ alerts/ # Alerting system
β β β βββ scheduler/ # Task scheduling
β β βββ features/ # Feature modules
β β β βββ newsfeed/
β β β βββ ioc_tools/
β β β βββ email_analyzer/
β β β βββ domain_lookup/
β β β βββ llm_templates/
β β βββ utils/ # Utilities
β βββ main.py # Application entry
β βββ requirements.txt # Python dependencies
β
βββ frontend/
β βββ src/
β β βββ components/ # React components
β β βββ api.js # API client
β β βββ App.js # Main app
β β βββ sidebarConfig.js
β βββ package.json # Node dependencies
β βββ nginx.conf # Nginx config
β
βββ data/ # Data persistence
βββ docker-compose.yaml # Docker orchestration
βββ README.md # This file
# Backend (requires Python 3.10+)
cd backend
pip install -r requirements.txt
uvicorn main:app --reload
# Frontend (requires Node.js 18+)
cd frontend
npm install
npm startSee LICENSE.md for details.
Contributions are welcome! Please read our contributing guidelines before submitting PRs.
- Report bugs
- Suggest new features
- Improve documentation
- Add new integrations
- Fix issues
- Issues: https://github.com/trickest/osint-toolkit/issues
- Discussions: https://github.com/trickest/osint-toolkit/discussions
Built with β€οΈ for the security community
The CVSS Calculator module allows you to calculate the CVSS 3.1 score of a vulnerability and export the calculation as a markdown or JSON file.
The Detection Rules module is a GUI for creating Sigma, Yara and Snort/Suricate rules.
- Download the repository and extract the files
- Navigate to the directory where the
docker-compose.yamlfile is located - Run the following command:
docker-compose up -d - Once the container is running, you can access the application in your browser at http://localhost:4000



