Skip to content

EvilCheetah/MonitoRing

 
 

Repository files navigation

MonitoRing

A simple demonstration allowing an attacker to passively monitor behavior in and around a Ring camera owner's home.


⚠️ Disclaimer

This tool is intended solely for educational and research purposes. Its goal is to demonstrate privacy vulnerabilities that exist even in strongly-encrypted video traffic. It is NOT a tool for unauthorized monitoring or stalking.

To prevent misuse, this tool is intentionally designed to be used only on your local network with your own Ring cameras. It requires a pre-captured PCAP file (e.g., from Wireshark) and the specific IP addresses of the camera and monitoring device.

If you find this demonstration invasive, use that insight to evaluate the privacy of your cloud-connected devices.


Prerequisites

Before running the tool, ensure you have the following installed:

  1. Python 3.10+: Download from python.org.

Important

Windows users: Ensure "Add Python to PATH" is checked during installation.

  1. Wireshark (TShark): The script uses the TShark engine to analyze network data. Download from wireshark.org.

Important

Windows users: Ensure the TShark component is selected during installation.

Important

macOS users: Ensure you allow the installer to "Install ChmodBPF" and "Add Wireshark to the system path."


Installation

Recommended Method (Using uv and task)

If you have uv and go-task installed, setup is a single command:

task dependency:install

Manual Installation

If you prefer a manual installation, follow these steps:

Windows

  1. Open PowerShell and navigate to your project folder:
    cd path\to\MonitoRing
  2. Create and activate a virtual environment:
    python -m venv venv
    .\venv\Scripts\activate
  3. Install dependencies:
    pip install -r requirements.txt

macOS / Linux

  1. Open Terminal and navigate to your project folder:
    cd path/to/MonitoRing
  2. Create and activate a virtual environment:
    python3 -m venv venv
    source venv/bin/activate
  3. Install dependencies:
    pip install -r requirements.txt

Note

For additional information regarding Virtual Environment, please refer to Python - Virtual Environments and Packages


Usage

Ensure your virtual environment is activated (you should see (venv) in your terminal prompt).

Run via Task (Recommended)

task run

Run via Python

python MonitoRing-0.2.py

Input Parameters

When started, the script will prompt for the following:

  • File Path: The path to your captured .pcap file. You can drag and drop the file into the terminal.
  • Camera IP Address: The local IP of the Ring camera (e.g., 192.168.1.50).
  • Threshold (KB/s): The data rate threshold to trigger detection. Press Enter to use the default 500 KB/s.

Troubleshooting

  • "TShark not found": On Windows, you may need to specify the TShark path manually at the top of the script:
    import pyshark
    pyshark.tshark.tshark.get_tshark_path = lambda: r"C:\Program Files\Wireshark\tshark.exe"
  • Permission Denied (macOS): If you encounter BPF device permission errors, run:
    sudo chown $USER /dev/bpf*
  • Empty Results: Ensure the IP address matches what is shown in the "Source" or "Destination" columns when inspecting the PCAP file in the Wireshark GUI.

About

A simple demonstration allowing an attacker to passively monitor behavior in and around a Ring camera owner's home.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%