Skip to content

Latest commit

 

History

History
509 lines (386 loc) · 14.6 KB

File metadata and controls

509 lines (386 loc) · 14.6 KB

🕵️‍♂️ ScayOSINT

ScayOSINT Logo Version License Python FastAPI Go

Advanced Open-Source Intelligence Platform for Email Reconnaissance

GitHub stars GitHub forks GitHub issues GitHub pull requests

🚀 Quick Start🛠️ Features📖 Usage⚙️ Configuration📊 Architecture🤝 Contributing


🌟 Overview

ScayOSINT is a next-generation open-source intelligence platform designed for comprehensive email reconnaissance and threat intelligence gathering. Built with modern web technologies, it provides a sleek, user-friendly interface for conducting OSINT operations with real-time results and advanced analytics.

✨ Key Features

  • 🔍 Multi-Service Intelligence Gathering - Check emails across 7+ intelligence services
  • 🎨 Modern Web Interface - Beautiful, responsive design with real-time updates
  • Lightning Fast - Optimized for speed with async processing
  • 🔒 Secure & Private - Your data stays local and secure
  • 🛠️ Highly Configurable - Customize your intelligence gathering workflow
  • 📊 Real-Time Results - Live updates and comprehensive reporting
  • 📱 Cross-Platform - Works on Windows, macOS, and Linux
  • 🖥️ Dual Interface - Web UI and powerful CLI tool

📊 Architecture Diagram

graph TB
    subgraph "Client Layer"
        WEB[🌐 Web Browser]
        CLI[💻 CLI Tool]
    end
    
    subgraph "Application Layer"
        FE[🎨 Frontend<br/>HTML/CSS/JS]
        BE[⚙️ FastAPI Backend<br/>Python]
        GOCLI[🔧 Go CLI Engine]
    end
    
    subgraph "Service Integration Layer"
        EMAILREP[📧 EmailRep.io]
        HIBP[⚠️ HaveIBeenPwned]
        BREACH[💾 BreachDirectory]
        INTELX[🔍 IntelX]
        SPOTIFY[🎵 Spotify]
        TWITTER[🐦 Twitter]
        INSTAGRAM[📷 Instagram]
    end
    
    subgraph "Data Storage"
        CONFIG[⚙️ Config JSON]
        HISTORY[📚 Scan History]
    end
    
    WEB --> FE
    CLI --> GOCLI
    FE --> BE
    BE --> EMAILREP
    BE --> HIBP
    BE --> BREACH
    BE --> INTELX
    BE --> SPOTIFY
    BE --> TWITTER
    BE --> INSTAGRAM
    BE --> CONFIG
    BE --> HISTORY
    GOCLI --> EMAILREP
    GOCLI --> HIBP
    GOCLI --> BREACH
    GOCLI --> INTELX
    
    style WEB fill:#6366f1,stroke:#4f46e5,color:#fff
    style CLI fill:#8b5cf6,stroke:#7c3aed,color:#fff
    style FE fill:#06b6d4,stroke:#0891b2,color:#fff
    style BE fill:#10b981,stroke:#059669,color:#fff
    style GOCLI fill:#f59e0b,stroke:#d97706,color:#fff
    style EMAILREP fill:#ef4444,stroke:#dc2626,color:#fff
    style HIBP fill:#8b5cf6,stroke:#7c3aed,color:#fff
    style BREACH fill:#06b6d4,stroke:#0891b2,color:#fff
    style INTELX fill:#10b981,stroke:#059669,color:#fff
Loading

🛠️ Features

🔍 Intelligence Services

Service Description API Key Required Status
EmailRep Email reputation and validation ✅ Active
HaveIBeenPwned Data breach checking ✅ Active
BreachDirectory Comprehensive breach database ✅ Active
IntelX Advanced intelligence search ✅ Active
Spotify Account existence check ✅ Active
Twitter Social media presence ✅ Active
Instagram Social media presence ✅ Active

🎨 Modern Interface

  • Responsive Design - Works perfectly on desktop, tablet, and mobile
  • Dark Theme - Easy on the eyes with cyberpunk aesthetics
  • Real-Time Updates - Live progress indicators and status updates
  • Interactive Elements - Smooth animations and user feedback
  • Toast Notifications - Clear success/error messaging
  • Scan History - Track all your previous operations

📊 Advanced Analytics

  • Comprehensive Results - Detailed reports for each service
  • Scan History - Track all your previous operations
  • Export Capabilities - Save results in multiple formats
  • Visual Indicators - Success/failure status with icons

🚀 Quick Start

Prerequisites

  • Python 3.8+ installed on your system
  • Git for cloning the repository
  • Modern web browser (Chrome, Firefox, Safari, Edge)
  • Go 1.21+ (optional, for CLI version)

Installation

  1. Clone the repository

    git clone https://github.com/Scayar/ScayOSINT.git
    cd ScayOSINT
  2. Install Python dependencies

    cd backend
    pip install -r requirements.txt
  3. Start the application

    python main.py
  4. Open your browser Navigate to http://localhost:8080


📖 Usage

🌐 Web Interface (Recommended)

The web interface provides the most user-friendly experience with all features accessible through a modern browser.

Starting the Web Interface

Option 1: Using PowerShell (Windows)

# Navigate to the project directory
cd ScayOSINT

# Start the backend server
cd backend
python main.py

Option 2: Using the Launcher Script

# Run the PowerShell launcher
.\start-scayosint.ps1

Option 3: Using the Batch File

# Run the batch launcher
start-scayosint.bat

Option 4: Using the HTML Launcher

  • Double-click launch-scayosint.html in the project folder
  • Click "Launch ScayOSINT" when the launcher opens

Using the Web Interface

  1. Open your browser and go to http://localhost:8080
  2. Enter an email address in the input field
  3. Select intelligence services you want to use
  4. Click "Launch Intelligence Scan"
  5. View results in real-time as they appear

💻 Command Line Interface

For advanced users, ScayOSINT also provides a command-line interface.

Running from PowerShell

# Navigate to the project directory
cd ScayOSINT

# Run the Go-based CLI tool
cd v3
go run cmd/scayosint/main.go

# Or build and run the executable
go build -o scayosint.exe cmd/scayosint/main.go
.\scayosint.exe

CLI Commands

# Basic email scan
scayosint scan email@example.com

# Scan with specific services
scayosint scan email@example.com --services email_rep,haveibeenpwned

# Verbose output
scayosint scan email@example.com --verbose

# Save results to file
scayosint scan email@example.com --output results.json

⚙️ Configuration

API Keys Setup

To unlock the full potential of ScayOSINT, you'll need API keys for premium services:

1. EmailRep.io

  • Visit EmailRep.io
  • Sign up for a free account
  • Get your API key from the dashboard

2. HaveIBeenPwned

  • Visit HaveIBeenPwned
  • Subscribe to the API service
  • Generate your API key

3. BreachDirectory

  • Visit BreachDirectory
  • Sign up for RapidAPI
  • Subscribe to the BreachDirectory API

4. IntelX

Adding API Keys

  1. Open the web interface at http://localhost:8080
  2. Click on "Settings" in the navigation
  3. Enter your API keys in the respective fields
  4. Click "Save Configuration"

Configuration File

API keys are stored in backend/config.json:

{
  "services": {
    "email_rep": {
      "api_key": "your_emailrep_api_key",
      "enabled": true
    },
    "haveibeenpwned": {
      "api_key": "your_hibp_api_key",
      "enabled": true
    },
    "breach_directory": {
      "api_key": "your_breachdirectory_api_key",
      "enabled": true
    },
    "intelx": {
      "api_key": "your_intelx_api_key",
      "enabled": true
    },
    "spotify": {
      "enabled": true
    },
    "twitter": {
      "enabled": true
    },
    "instagram": {
      "enabled": true
    }
  }
}

📊 Architecture

System Architecture

ScayOSINT is built with a modern, modular architecture:

Backend (FastAPI)

  • FastAPI - Modern, fast web framework
  • Async Processing - Non-blocking operations
  • RESTful API - Clean, documented endpoints
  • Static File Serving - Integrated frontend hosting
  • Error Handling - Graceful failure management

Frontend (HTML/CSS/JavaScript)

  • Vanilla JavaScript - No framework dependencies
  • Modern CSS - Flexbox, Grid, and animations
  • Responsive Design - Mobile-first approach
  • Real-time Updates - Live data streaming
  • Progressive Enhancement - Works without JavaScript

CLI (Go)

  • Cobra CLI - Powerful command-line framework
  • Worker Pool - Concurrent service execution
  • Color Output - Beautiful terminal formatting
  • Configuration Management - YAML-based config

Services Integration

  • HTTP Requests - Async API calls
  • Error Handling - Graceful failure management
  • Rate Limiting - Respectful API usage
  • Timeout Management - Prevents hanging requests

🏗️ Project Structure

ScayOSINT/
├── backend/                 # FastAPI backend
│   ├── main.py             # Main application
│   ├── requirements.txt    # Python dependencies
│   ├── config.json        # Configuration file (gitignored)
│   └── scan_history.json  # Scan history (gitignored)
├── frontend/               # Web interface
│   ├── index.html         # Main HTML file
│   ├── style.css          # Styling
│   └── script.js          # JavaScript logic
├── v3/                    # Go CLI version
│   ├── cmd/               # Command-line tools
│   │   └── scayosint/    # Main CLI entry point
│   ├── internal/          # Internal packages
│   │   ├── config/       # Configuration handling
│   │   ├── output/       # Output formatting
│   │   ├── runner/       # Scan runner
│   │   └── spinner/      # Progress indicators
│   └── pkg/               # Public packages
│       ├── dns/          # DNS lookup
│       ├── engine/      # CLI engine
│       ├── services/    # OSINT services
│       ├── social/      # Social media checks
│       └── verification/ # Email verification
├── launch-scayosint.html  # Web launcher
├── start-scayosint.ps1    # PowerShell launcher
├── start-scayosint.bat    # Batch launcher
├── config.yaml            # Example configuration
├── LICENSE                # MIT License
└── README.md             # This file

🔧 Development

Running in Development Mode

# Backend development
cd backend
python main.py

# Frontend development (edit files directly)
cd frontend
# Edit index.html, style.css, or script.js

# Go CLI development
cd v3
go run cmd/scayosint/main.go

API Endpoints

Endpoint Method Description
/ GET Main web interface
/api/config GET Get configuration
/api/config POST Update configuration
/api/scan POST Scan email address
/api/history GET Get scan history

🤝 Contributing

We welcome contributions from the community! Here's how you can help:

🐛 Reporting Bugs

  1. Check existing issues first
  2. Create a new issue with detailed information
  3. Include steps to reproduce the bug
  4. Add system information and error logs

💡 Suggesting Features

  1. Open a feature request issue
  2. Describe the feature and its benefits
  3. Provide use cases and examples
  4. Discuss implementation approach

🔧 Contributing Code

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

📝 Code Style

  • Follow PEP 8 for Python code
  • Follow Go Code Review Comments for Go code
  • Use meaningful variable names
  • Add comments for complex logic
  • Include docstrings for functions

For more details, see CONTRIBUTING.md.


📄 License

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


🙏 Acknowledgments

  • EmailRep.io - Email reputation service
  • HaveIBeenPwned - Data breach checking
  • BreachDirectory - Breach database
  • Intelligence X - Intelligence search platform
  • FastAPI - Modern web framework
  • Font Awesome - Icons and graphics

📞 Support & Contact

Getting Help


👤 Credits

Author

Scayar


⭐ Star History

Star History Chart


Made with ❤️ by Scayar

Website Email Telegram Buy Me a Coffee

If you find ScayOSINT useful, please consider giving it a ⭐ star on GitHub!