Zum Inhalt springen

h8mail

Installation

Install via pip

pip install h8mail

Install from source

git clone https://github.com/khast3x/h8mail.git
cd h8mail
pip install -r requirements.txt
python h8mail.py

Verify installation

h8mail --version

Configuration

API Key Setup

Create a ~/.h8mail_rc configuration file:

[breaches]
hibp_api_key = YOUR_HIBP_API_KEY
snusbase_auth = YOUR_SNUSBASE_TOKEN
leakcheck_api_key = YOUR_LEAKCHECK_API_KEY
emailrep_api_key = YOUR_EMAILREP_API_KEY

Or set environment variables:

export HIBP_API_KEY="your_key_here"
export SNUSBASE_AUTH="your_token_here"

Supported Breach Services

ServiceTypeAPI RequiredNotes
HaveIBeenPwned (HIBP)Breach DBYesMost comprehensive, 613M+ breaches
SnusbaseBreach DBYesLarge Russian breach database
LeakCheckBreach DBYesExtensive leak collection
EmailRepReputationYesEmail reputation & breach data
DehashedBreach DBYesDark web breach database
IntelxBreach DBYesIntelligence X platform
ScyllaBreach DBNoFree online breach search
ShodanIP LookupYesInternet-connected devices

Single Email Lookup

h8mail -e target@example.com

Search with verbose output

h8mail -e target@example.com -v

Search specific service only

h8mail -e target@example.com --only hibp

Search multiple services

h8mail -e target@example.com --only hibp,snusbase,leakcheck

Bulk Email Searching

Search from file

h8mail -l emails.txt

Email file format

target1@example.com
target2@example.com
admin@company.org
user@domain.net

Search with custom output file

h8mail -l emails.txt -o results.txt

Batch processing with rate limiting

h8mail -l emails.txt --delay 2

Local Breach File Searching

Search local breach database

h8mail -e target@example.com -ldb /path/to/breach_database.txt

Search multiple local files

h8mail -e target@example.com -ldb breaches/ passwords/

Import and index local breaches

h8mail -e target@example.com --local-only -ldb database.csv
h8mail -e target@example.com --chase

Chase mode with depth limit

h8mail -e target@example.com --chase -c 2
h8mail -e admin@company.com --chase --max-distance 3

This finds other email addresses from breaches and searches those recursively.

Output Formats

JSON output

h8mail -e target@example.com -o results.json --json

CSV output

h8mail -l emails.txt -o results.csv --csv

Plain text output (default)

h8mail -e target@example.com -o results.txt

HTML report output

h8mail -l emails.txt -o report.html --html

Searching Strategies

Company domain reconnaissance

h8mail -l company_employees.txt -o breach_report.txt

Credential hunting for penetration testing

h8mail -e target@example.com -v --paste

Combine with other data

h8mail -e leaked_email@domain.com --chase
h8mail -e ceo@company.com -v --all-providers

Advanced Options

Show all breaches (verbose)

h8mail -e target@example.com -v

Skip unresponsive services

h8mail -e target@example.com --timeout 10

Use proxies

h8mail -e target@example.com --proxy socks5://127.0.0.1:9050

Save paste dumps when found

h8mail -e target@example.com --paste -o pastes/

Disable colors in output

h8mail -e target@example.com --no-color

Check before running bulk operations

h8mail -l emails.txt --dry-run

Integration with OSINT Workflows

Combine with TheHarvester

theharvester -d example.com -b all | grep "@" | tee emails.txt
h8mail -l emails.txt -o results.txt

Combine with Maltego

Export email addresses from Maltego → Import to h8mail

Use in Shodan queries

h8mail -e admin@example.com --shodan

Parse breach data for usernames

h8mail -e user@example.com -v | grep -i "password\|username"

Automation and Scripting

Batch processing with shell loop

for email in $(cat targets.txt); do
  h8mail -e "$email" -o "results_${email}.txt"
done

Automated daily monitoring

#!/bin/bash
DATE=$(date +%Y%m%d)
h8mail -l critical_emails.txt -o "breach_report_${DATE}.txt"

Integration with bash automation

h8mail -e target@example.com --json | jq '.[] | select(.breaches | length > 0)'

Python scripting

import subprocess
import json

result = subprocess.run(
    ['h8mail', '-e', 'target@example.com', '--json'],
    capture_output=True,
    text=True
)
data = json.loads(result.stdout)

Common Workflows

Verify email in breach databases

h8mail -e suspicious@company.com

Monitor employee email safety

h8mail -l company_staff.txt -o security_audit.txt

Incident response - find compromised accounts

h8mail -e compromised@domain.com -v --all-providers

Threat hunting - trace attacker email

h8mail -e attacker@evil.com --chase -v

Credential stuffing assessment

h8mail -l internal_users.txt -o credstuffing_risk.json --json

Troubleshooting

API key not recognized

# Verify config file exists
cat ~/.h8mail_rc

# Check environment variable
echo $HIBP_API_KEY

Rate limiting errors

# Add delay between requests
h8mail -l emails.txt --delay 3

SSL certificate errors

# Disable SSL verification (use cautiously)
h8mail -e target@example.com --insecure

Timeout issues

# Increase timeout
h8mail -e target@example.com --timeout 30

Large file handling

# Process in chunks
split -l 100 emails.txt email_chunk_
for file in email_chunk_*; do h8mail -l "$file"; done

Best Practices

  • API Limits: Respect rate limits; use delays between bulk searches
  • Privacy: Only scan email addresses you have authorization to test
  • Storage: Securely store breach data and results
  • Updates: Keep h8mail updated for new breach service integrations
  • Filtering: Use —only flag to query specific services and save API quota
  • Logging: Combine -v and -o flags for detailed searchable results
  • Automation: Use JSON output for automated parsing in scripts

Resources