⚠ This page is served via a proxy. Original site: https://github.com
This service does not collect credentials or authentication data.
Skip to content

Scrapes a list of Payload Domains, IOC's & C2 IPs from from various feeds for easy blacklisting.

License

Notifications You must be signed in to change notification settings

rynmon/malScraper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

150 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

malScraper v2.0.7

GitHub stars GitHub forks GitHub issues GitHub release GitHub license Rust License: MIT

Cross-platform tool to scrape malware domains, IOCs, and C2 IPs from various feeds for easy blacklisting.

Note: The Python and Bash versions have been deprecated. This project now uses Rust exclusively for better performance, security, and distribution.

Quick Start

Download Pre-built Binaries

Windows:

  • Download malscraper-x86_64-pc-windows-msvc.exe from Releases
  • Rename to malscraper.exe and run

macOS:

  • Download malscraper-x86_64-apple-darwin or malscraper-aarch64-apple-darwin from Releases
  • Make executable: chmod +x malscraper-*
  • Run: ./malscraper-*

Linux:

  • Download malscraper-x86_64-unknown-linux-gnu or malscraper-aarch64-unknown-linux-gnu from Releases
  • Make executable: chmod +x malscraper-*
  • Run: ./malscraper-*

Build from Source

Prerequisites:

  • Rust 1.70+
  • Visual Studio Build Tools (Windows) or GCC/Clang (Linux/macOS)

Build:

cd rust
cargo build --release

The binary will be at rust/target/release/malscraper (or .exe on Windows).

Features

Core Features

  • High Performance: 3-5x faster than Python version
  • Single Binary: No runtime dependencies required
  • Cross-Platform: Windows, macOS, and Linux
  • Tab Completion: Built-in command completion (press TAB)
  • Async Downloads: Fast parallel downloads with progress bars
  • Memory Safe: Rust's ownership system prevents common bugs
  • Auto-Updates: Built-in update checking via GitHub Releases

New in v2.0.0

Analysis & Intelligence

  • Statistics Dashboard (STATS) - View comprehensive metrics and analytics for all reports
  • Search & Filter (SEARCH, FILTER) - Search across reports with regex support
  • Report Comparison (COMPARE) - Compare two reports side-by-side to see differences
  • Historical Tracking (DIFF, CHANGES) - Track changes over time and identify new indicators

Data Management

  • Deduplication (DEDUPE, UNIQUE) - Remove duplicates across all reports and create unified master lists
  • Validation (VALIDATE) - Validate IP addresses and domains, check if domains are still active
  • Whitelist Management (WHITELIST) - Whitelist false positives and exclude known-good indicators

Export & Integration

  • Export Formats (EXPORT) - Export to multiple formats:
    • Firewall rules: iptables, Windows Firewall, pfSense
    • SIEM formats: JSON, CSV with metadata
    • Threat intelligence: STIX/TAXII

Customization & Automation

  • Custom Feeds (FEEDS) - Add, list, and remove your own custom feed URLs
  • Non-Interactive Mode - CLI arguments for automation and scripting
    malscraper quick-scan --output-dir ./reports
    malscraper export iptables payload
    malscraper search malware.com
  • Automatic Updates (UPDATE, INSTALL) - Automatically download and install updates with platform detection

Usage

  1. Run the tool:

    malscraper
  2. Available commands:

    Basic Operations:

    • FULL or FULL-SCAN - Complete scan of all feeds
    • QUICK or QUICK-SCAN - Quick scan (most recent 100 domains)
    • OPEN or REOPEN - Open a previously downloaded report
    • UPDATE - Check for and install updates
    • HELP - Show help menu
    • TUTORIAL - Show tutorial
    • QUIT or EXIT - Exit the application

    Analysis Features:

    • STATS - View statistics dashboard
    • SEARCH <term> - Search for specific terms across reports
    • FILTER [feed_type] [pattern] - Filter reports by criteria
    • COMPARE <report1> <report2> - Compare two reports
    • DIFF or CHANGES - Compare current scan with previous scan

    Data Management:

    • DEDUPE or UNIQUE - Deduplicate all reports into master list
    • VALIDATE <report> - Validate IP addresses and domains
    • WHITELIST ADD <indicator> [reason] - Add to whitelist
    • WHITELIST LIST - List all whitelisted indicators
    • WHITELIST REMOVE <indicator> - Remove from whitelist

    Export & Integration:

    • EXPORT <format> <report> - Export to firewall/SIEM formats
      • Formats: iptables, windows, pfsense, json, csv, stix, taxii
      • Reports: payload, amp, c2, hex, haus, phish, top100

    Customization:

    • FEEDS ADD <url> [name] [description] - Add custom feed
    • FEEDS LIST - List all custom feeds
    • FEEDS REMOVE <name_or_url> - Remove custom feed
  3. Press TAB for command auto-completion!

Non-Interactive Mode (CLI)

For automation and scripting, use CLI arguments:

# Quick scan with custom output directory
malscraper quick-scan --output-dir ./reports

# Full scan
malscraper full-scan --output-dir ./reports

# Export to iptables format
malscraper export iptables payload

# Search across reports
malscraper search malware.com

# View statistics
malscraper stats

# See all available commands
malscraper --help

File Locations

Reports are saved to:

  • Windows: %USERPROFILE%\Documents\malScraper\
  • macOS/Linux: ~/Desktop/malScraper/

Antivirus Warning

Some reports (especially PayloadReport.txt) may be flagged by antivirus software because they contain known malware indicators. These files are for research and defensive use only.

  • You'll be prompted to obfuscate or zip the payload report
  • Consider adding an exclusion for the report directory

Migration from Python/Bash Versions

If you were using the Python or Bash versions:

  1. Download the Rust binary from Releases
  2. Your existing reports will still be in the same location
  3. Commands are identical - no learning curve!
  4. Better performance - downloads and processing are faster

Development

# Clone the repository
git clone https://github.com/rynmon/malScraper.git
cd malScraper/rust

# Build
cargo build --release

# Run tests
cargo test

# Format code
cargo fmt

# Lint
cargo clippy

Performance Comparison

Metric Python Rust
Startup Time ~1-2s <100ms
Download Speed Baseline 2-3x faster
Memory Usage ~50-100MB ~10-20MB
Binary Size N/A ~5-10MB
Dependencies Python + packages Single binary

Contributing

Contributions are welcome! Please feel free to:

  • Open issues for bugs or feature requests
  • Submit pull requests
  • Improve documentation

License

This project is licensed under the MIT License.

Note: Python and Bash versions are deprecated. Please use the Rust version for the best experience and continued support.