Skip to main content

LogHero 🦸‍♂️

System Log Security Analyzer

Developed by Ahmet KAHRAMAN (AhmetXHero) - Mobile Developer & Cyber Security Expert

LogHero is a powerful command-line tool designed to analyze system log files and detect suspicious security activities. It specializes in identifying SSH brute-force attacks, unauthorized root access attempts, and other security threats across Linux, Windows, and macOS systems.

🎯 Features

  • SSH Brute-Force Detection: Identifies repeated failed SSH login attempts from the same IP
  • Root Access Monitoring: Detects unauthorized attempts to gain root privileges
  • Multi-OS Support: Works with Linux, Windows, and macOS log formats
  • Real-time Analysis: Fast log parsing and threat detection
  • Detailed Reporting: Comprehensive security reports with recommendations
  • Flexible Output: Table, JSON, and CSV output formats
  • Batch Processing: Analyze multiple log files at once

🚀 Installation

pip install AhmetX-LogHero

From Source

git clone https://github.com/ahmetxhero/AhmetX-LogHero.git
cd loghero
pip install -e .

📋 Requirements

  • Python 3.7+
  • Dependencies: click, colorama, python-dateutil, tabulate

🛠 Usage

Basic Usage

# Analyze a single log file
loghero scan /var/log/auth.log

# Analyze with specific severity filter
loghero scan /var/log/secure --severity HIGH

# Output in JSON format
loghero scan /var/log/auth.log --output json

# Save detailed report
loghero scan /var/log/auth.log --save-report security_report.json

Batch Analysis

# Analyze all log files in a directory
loghero batch /var/log

# Analyze with specific pattern
loghero batch /var/log --pattern "auth*" --recursive

Command Options

loghero scan

  • --output, -o: Output format (table, json, csv)
  • --severity, -s: Filter by minimum severity (LOW, MEDIUM, HIGH, CRITICAL)
  • --threat-type, -t: Filter by specific threat type
  • --limit, -l: Limit number of results (default: 50)
  • --quiet, -q: Suppress banner and extra output
  • --save-report: Save detailed report to file

loghero batch

  • --pattern, -p: File pattern to match (default: *.log)
  • --recursive, -r: Search recursively in subdirectories

🔍 Detected Threats

SSH Brute-Force Attacks

  • Failed password attempts
  • Failed public key authentication
  • Invalid user attempts
  • Suspicious connection patterns

Root Access Violations

  • Failed su attempts to root
  • Unauthorized sudo usage
  • Direct root login attempts
  • Privilege escalation attempts

Authentication Failures

  • Repeated login failures
  • PAM authentication errors
  • System authentication violations

📊 Example Output

╔══════════════════════════════════════════════════════════════╗
║                          LogHero v1.0.0                     ║
║                  System Log Security Analyzer               ║
║              Detecting suspicious activities...             ║
╚══════════════════════════════════════════════════════════════╝

📁 Analyzing log file: /var/log/auth.log

📊 Analysis Summary:
   • Total log entries processed: 15,432
   • Total threats found: 23
   • Unique source IPs: 8

🚨 Security Threats Detected:
┌─────────────────────┬──────────┬─────────────────────┬─────────────┬──────────────────────────────────┬───────┐
│ Timestamp           │ Severity │ Type                │ Source IP   │ Description                      │ Count │
├─────────────────────┼──────────┼─────────────────────┼─────────────┼──────────────────────────────────┼───────┤
│ 2024-01-15 14:23:45 │ CRITICAL │ SSH_BRUTE_FORCE     │ 192.168.1.100│ SSH brute-force attack: 25 fail...│ 25    │
│ 2024-01-15 13:45:12 │ HIGH     │ ROOT_LOGIN_ATTEMPT  │ 10.0.0.50   │ Failed direct root login attempt│ 1     │
└─────────────────────┴──────────┴─────────────────────┴─────────────┴──────────────────────────────────┴───────┘

🎯 Top Threatening IPs:
┌─────────────────┬─────────┬───────┬─────────────────────┐
│ IP Address      │ Threats │ Score │ Types               │
├─────────────────┼─────────┼───────┼─────────────────────┤
│ 192.168.1.100   │ 25      │ 100   │ SSH_BRUTE_FORCE     │
│ 10.0.0.50       │ 3       │ 9     │ ROOT_LOGIN_ATTEMPT  │
└─────────────────┴─────────┴───────┴─────────────────────┘

💡 Security Recommendations:
   1. Consider implementing fail2ban to automatically block IPs
   2. Use SSH key authentication instead of passwords
   3. Disable direct root login via SSH
   4. Implement SSH rate limiting
   5. Set up real-time alerts for security events

🗂 Supported Log Formats

Linux

  • /var/log/auth.log (Debian/Ubuntu)
  • /var/log/secure (RedHat/CentOS)
  • /var/log/syslog
  • Custom syslog formats

macOS

  • /var/log/system.log
  • /var/log/auth.log
  • Console app logs

Windows

  • Security Event Logs
  • Application Event Logs
  • System Event Logs

🔧 Configuration

LogHero works out of the box with sensible defaults, but you can customize detection thresholds:

SSH Brute-Force Detection

  • Default threshold: 5 failed attempts
  • Default time window: 300 seconds (5 minutes)

Root Access Detection

  • Monitors all su, sudo, and direct root login attempts
  • Flags suspicious administrative commands

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

Development

Test PyPI'dan install et

pip install --index-url https://test.pypi.org/simple/ AhmetX-LogHero/loghero.git cd loghero pip install -e ".[dev]"

Running Tests

pytest tests/

📄 License

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

🆘 Support

🙏 Acknowledgments

  • Thanks to the cybersecurity community for threat intelligence
  • Inspired by fail2ban and other security monitoring tools
  • Built with love for system administrators and security professionals

👨‍💻 About the Developer

Ahmet KAHRAMAN (AhmetXHero) is a Mobile Developer & Cyber Security Expert with 10+ years of experience in Public Sector IT. He specializes in:

  • 📱 Mobile Development: iOS, Android, Flutter, React Native
  • 🔒 Cybersecurity: Digital Forensics, Penetration Testing, Security Analysis
  • 🎓 Education: Master's in Forensic Informatics, Multiple certifications
  • 🌐 Connect: Portfolio | YouTube | LinkedIn

"Security first, innovation always" 🚀


⚠️ Security Notice: LogHero is a detection tool. Always implement proper security measures like firewalls, intrusion prevention systems, and regular security updates alongside log monitoring.

Metadata

Release files for AhmetX-LogHero 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for AhmetX-LogHero 1.0.0
File Size Uploaded Provenance
ahmetx_loghero-1.0.0.tar.gz 14.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for AhmetX-LogHero 1.0.0
File Interpreter ABI Platform
ahmetx_loghero-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 29.5 kB

Release files / ahmetx_loghero-1.0.0.tar.gz

Download URL ahmetx_loghero-1.0.0.tar.gz
Size 14.1 kB
Tags Source
SHA-256 checksum
How to use checksums
061bf456bfa084d5b8be8449f510fd9126a8f7d48021b6abf431ce773a537598
BLAKE2b-256 checksum
How to use checksums
924de5fb2d47d66ca404088fbdec1b86b10cc521985d7c9a48ab0c398f17aa0d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.7

Release files / ahmetx_loghero-1.0.0-py3-none-any.whl

Download URL ahmetx_loghero-1.0.0-py3-none-any.whl
Size 15.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cbfc749f6a9c825aff6aa7bd4763d795ea350824693ae30d8b1e1c7efebcc4ee
BLAKE2b-256 checksum
How to use checksums
bf37dc401b15a1a4cdceeb02e853e7d5e610dc67e12055cfd38b67d39bb70490
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.7

Security for AhmetX-LogHero 1.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page