Skip to main content

StealthMon is a Python module that helps detect whether a browser is running in Normal or Incognito/Private mode and monitors search queries from the system. It is designed for privacy monitoring, parental control, cybersecurity research, and system audits.

Project description

StealthMon 🕵️‍♂️🔍

Detect Brouser Mode & Monitor Browser Search Queries

Overview

StealthMon is a Python module that helps detect whether a browser is running in Normal or Incognito/Private mode and monitors search queries from the system. It is designed for privacy monitoring, parental control, cybersecurity research, and system audits.

Features

Detect Brouser Mode – Identify when browsers like Chrome, Firefox, Edge, Brave, or Opera are running in private mode. ✅ Monitor Search Queries – Track user searches made on Google, Bing, DuckDuckGo, and more. ✅ Alert System – Configurable alerts when specific queries are detected. ✅ Multi-Threading Support – Efficient monitoring with background threads. ✅ Visual Notifications – Optional UI components for alerts and notifications. ✅ Cross-Platform – Works on Windows & Linux (Mac support coming soon). ✅ Lightweight & Easy to Use – Simple Python module with clear API.

Use Cases

🔹 Parental Control – Keep track of Incognito browsing on a child's system. 🔹 Cybersecurity & Monitoring – Detect stealth browsing behavior in workplaces or shared systems. 🔹 Forensics & Investigations – Useful for analyzing browser activity on compromised systems.

Installation

pip install stealthmon

Or install from source:

git clone https://github.com/dkydivyansh/stealthmon
cd stealthmon
pip install -e .

Dependencies

StealthMon requires the following dependencies:

  • Python 3.7+
  • psutil
  • pywin32 (Windows only)
  • tkinter (for UI components)
  • pygame (for sound alerts)

Quick Start

from stealthmon import StealthMonitor

# Initialize the monitor
monitor = StealthMonitor()

# Check for incognito mode
incognito_browsers = monitor.check_incognito()
for browser, is_incognito in incognito_browsers.items():
    print(f"{browser}: {'Incognito Mode' if is_incognito else 'Normal Mode'}")

# Start monitoring with a callback function
def handle_detection(event_type, browser, details):
    if event_type == "incognito":
        print(f"Incognito detected: {browser}")
    elif event_type == "query":
        print(f"Search query detected: {details['query']} on {details['engine']}")

# Start continuous monitoring
monitor.start_monitoring(callback=handle_detection)

# To stop monitoring
# monitor.stop_monitoring()

Advanced Usage

Tracking Specific Search Queries

# Track specific search queries
monitor = StealthMonitor()

def query_callback(browser, query, engine):
    if "python tutorial" in query.lower():
        print(f"Educational search detected: {query}")

monitor.start_query_tracking(callback=query_callback)

Customizing Detection Behavior

# Custom configuration
config = {
    "browsers_to_monitor": ["chrome", "firefox", "edge"],
    "check_interval": 3,  # seconds
    "search_engines": {
        "google": r"google\.com\/search\?.*q=([^&]+)",
        "bing": r"bing\.com\/search\?.*q=([^&]+)"
    }
}

monitor = StealthMonitor(config=config)
monitor.start_monitoring()

UI Components for Alerts

from stealthmon import StealthMonitor, create_alert_window

monitor = StealthMonitor()

def show_alert(event_type, browser, details):
    if event_type == "query" and "sensitive" in details['query'].lower():
        create_alert_window(
            title="Search Alert",
            message=f"Sensitive search detected: {details['query']}",
            duration=10  # seconds
        )

monitor.start_monitoring(callback=show_alert)

Error Handling

StealthMon includes robust error handling for various scenarios:

  • Browser detection failures
  • Privilege or permission issues
  • Missing dependencies
  • Platform compatibility issues

Contributing

We welcome contributions! If you want to enhance the project, feel free to submit issues and pull requests.

License

MIT License - See LICENSE file for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stealthmon-1.2.0.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

stealthmon-1.2.0-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file stealthmon-1.2.0.tar.gz.

File metadata

  • Download URL: stealthmon-1.2.0.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for stealthmon-1.2.0.tar.gz
Algorithm Hash digest
SHA256 b748666e03ef1f5c9408b18427fa5659cec0437c088556b5d0934e2047005b8e
MD5 8312effaa2615afcd5200715d366d5a4
BLAKE2b-256 8e0d9ad1c61d863aec7e7e59c0a9413c13f0d321649f0c23ecac13897dea3d2a

See more details on using hashes here.

File details

Details for the file stealthmon-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: stealthmon-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 10.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for stealthmon-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 53309620c4e6f3e7d982075209517ace4de2e62d89f006d12b0291a81e763780
MD5 3f898a4db2eee6184d9014e22a8f37a5
BLAKE2b-256 9e8826adfea16acece2b65f1ca9df27d2b5db51f0d5f79d1611d4de4efd65df2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page