一键导入
osint-email
Email-based OSINT collection including breach database checks and social account enumeration
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Email-based OSINT collection including breach database checks and social account enumeration
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Interactive gap analysis against Korea's ISMS-P 102-control certification framework (management, protection, personal information)
Security log analysis and anomaly detection for access, auth, and syslog files
Analyze suspicious files through triage/static/dynamic/code phases to produce IOCs, YARA/Sigma rules, and MITRE ATT&CK mappings
File hash reputation lookup via VirusTotal API v3 for MD5/SHA1/SHA256 detection ratio, threat classification, and vendor results
OWASP Top 10 (2021) checklist-based inspection and compliance matrix generation
Multi-chain smart contract security for Solana, Algorand, Cairo, Cosmos, Substrate, and TON with pre-audit readiness checks
| name | osint-email |
| description | Email-based OSINT collection including breach database checks and social account enumeration |
| license | MIT |
| metadata | {"category":"recon","locale":"en","phase":"v1"} |
Collects OSINT information based on an email address. Performs email format validation, breach history lookup via the Have I Been Pwned API, and social/service account existence detection using holehe.
curlpip install holehe
SECSKILL_TARGET_EMAIL: email address to querySECSKILL_HIBP_API_KEY: Have I Been Pwned API key| Variable | Required | Description |
|---|---|---|
SECSKILL_TARGET_EMAIL | Required | Email address to query |
SECSKILL_HIBP_API_KEY | Required | HIBP API key (for breach history lookup) |
SECSKILL_OUTPUT_DIR | Optional | Output directory for results (default: ./output) |
SECSKILL_RUN_HOLEHE | Optional | Set to true to run holehe (default: false) |
export EMAIL="${SECSKILL_TARGET_EMAIL:?Set the SECSKILL_TARGET_EMAIL environment variable}"
export HIBP_KEY="${SECSKILL_HIBP_API_KEY:-}"
export OUTDIR="${SECSKILL_OUTPUT_DIR:-./output}"
export RUN_HOLEHE="${SECSKILL_RUN_HOLEHE:-false}"
mkdir -p "$OUTDIR"
SAFE_EMAIL=$(echo "$EMAIL" | tr '@.' '__')
OUTFILE="$OUTDIR/osint_email_${SAFE_EMAIL}.txt"
echo "===== Email OSINT: $EMAIL =====" > "$OUTFILE"
echo "Query time: $(date -u '+%Y-%m-%dT%H:%M:%SZ')" >> "$OUTFILE"
# Format validation
if echo "$EMAIL" | grep -qE '^[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}$'; then
echo "[+] Valid email format: $EMAIL" | tee -a "$OUTFILE"
DOMAIN=$(echo "$EMAIL" | cut -d'@' -f2)
USER=$(echo "$EMAIL" | cut -d'@' -f1)
echo "[*] Domain: $DOMAIN | User: $USER"
else
echo "[-] Invalid email format: $EMAIL"
exit 1
fi
echo "" >> "$OUTFILE"
echo "--- Have I Been Pwned Breach History ---" | tee -a "$OUTFILE"
if [ -z "$HIBP_KEY" ]; then
echo "[-] SECSKILL_HIBP_API_KEY not set. Skipping HIBP check." | tee -a "$OUTFILE"
else
ENCODED_EMAIL=$(python3 -c "import urllib.parse; print(urllib.parse.quote('$EMAIL'))")
HIBP_RESPONSE=$(curl -s \
-H "hibp-api-key: $HIBP_KEY" \
-H "user-agent: SecuritySkill-OSINT/1.0" \
--max-time 15 \
"https://haveibeenpwned.com/api/v3/breachedaccount/${ENCODED_EMAIL}?truncateResponse=false")
HTTP_STATUS=$?
if echo "$HIBP_RESPONSE" | grep -q '"Name"'; then
BREACH_COUNT=$(echo "$HIBP_RESPONSE" | python3 -c "import sys,json; data=json.load(sys.stdin); print(len(data))")
echo "[!] Breaches found: $BREACH_COUNT" | tee -a "$OUTFILE"
echo "$HIBP_RESPONSE" | python3 -c "
import sys, json
data = json.load(sys.stdin)
for breach in data:
print(f\" - {breach['Name']} ({breach['BreachDate']}): {', '.join(breach['DataClasses'][:5])}\")
" | tee -a "$OUTFILE"
elif echo "$HIBP_RESPONSE" | grep -q "404"; then
echo "[+] No breach history (not found in database)" | tee -a "$OUTFILE"
else
echo "[-] HIBP API response error. Check your API key or network." | tee -a "$OUTFILE"
fi
fi
if [ -n "$HIBP_KEY" ]; then
echo "" >> "$OUTFILE"
echo "--- Paste Database Check ---" | tee -a "$OUTFILE"
ENCODED_EMAIL=$(python3 -c "import urllib.parse; print(urllib.parse.quote('$EMAIL'))")
PASTE_RESPONSE=$(curl -s \
-H "hibp-api-key: $HIBP_KEY" \
-H "user-agent: SecuritySkill-OSINT/1.0" \
--max-time 15 \
"https://haveibeenpwned.com/api/v3/pasteaccount/${ENCODED_EMAIL}")
if echo "$PASTE_RESPONSE" | grep -q '"Source"'; then
PASTE_COUNT=$(echo "$PASTE_RESPONSE" | python3 -c "import sys,json; data=json.load(sys.stdin); print(len(data))")
echo "[!] Paste site exposures: $PASTE_COUNT" | tee -a "$OUTFILE"
echo "$PASTE_RESPONSE" | python3 -c "
import sys, json
data = json.load(sys.stdin)
for paste in data[:10]:
print(f\" - {paste['Source']}: {paste.get('Title','(no title)')} ({paste.get('Date','date unknown')})\")
" | tee -a "$OUTFILE"
else
echo "[+] No paste site exposures found" | tee -a "$OUTFILE"
fi
fi
echo "" >> "$OUTFILE"
echo "--- Email Domain DNS Check ---" | tee -a "$OUTFILE"
MX=$(dig "$DOMAIN" MX +short 2>/dev/null | sort)
if [ -n "$MX" ]; then
echo "[+] MX records valid - email delivery is possible" | tee -a "$OUTFILE"
echo "$MX" | tee -a "$OUTFILE"
else
echo "[-] No MX records - email address may be invalid" | tee -a "$OUTFILE"
fi
if [ "$RUN_HOLEHE" = "true" ]; then
echo "" >> "$OUTFILE"
echo "--- holehe Social Account Check ---" | tee -a "$OUTFILE"
if command -v holehe >/dev/null 2>&1; then
echo "[*] Running holehe (may take tens of seconds)..."
holehe --only-used "$EMAIL" 2>/dev/null \
| grep -E "^\[|\[\+\]|\[-\]" \
| tee -a "$OUTFILE"
echo "[+] holehe complete"
else
echo "[-] holehe not installed. Install with: pip install holehe" | tee -a "$OUTFILE"
fi
else
echo "[*] holehe skipped (enable with SECSKILL_RUN_HOLEHE=true)"
fi
echo ""
echo "===== Email OSINT Results Summary ====="
echo "Target email: $EMAIL"
echo "Output file : $OUTFILE"
echo "======================================="
cat "$OUTFILE"
SECSKILL_RUN_HOLEHE=true)| Symptom | Cause | Resolution |
|---|---|---|
| HIBP 401 error | Invalid API key | Re-verify key in HIBP dashboard |
| HIBP 429 error | Rate limit exceeded | Retry after 1 minute (API enforces 1.5-second intervals) |
| holehe error | Package dependency issue | Run pip install --upgrade holehe |
| No MX records | Invalid domain | Re-verify email address |