Skip to main content

Remote command delivery and media streaming tool over WebRTC signaling

Project description

darkglitch

Project Description

darkglitch is a small Python proof-of-concept for remote command delivery over a WebSocket signaling channel. It supports a listener mode to register a client and an attacker mode to find online peers and send remote shell commands.

Important Notes

  • This project is educational only.
  • Use it only in authorized test environments.
  • Remote command execution can be dangerous if misused.

Requirements

  • Python 3.10+
  • requirements.txt is provided for dependency installation

Setup

From the project root:

./install.sh

This script will:

  • create a Python virtual environment at ~/Desktop/venv
  • activate that environment
  • install dependencies from requirements.txt
  • add source ~/Desktop/venv/bin/activate to your ~/.bashrc or ~/.zshrc
  • start the listener mode with main.py -l

If you prefer manual setup:

python3 -m venv ~/Desktop/venv
source ~/Desktop/venv/bin/activate
pip install -r requirements.txt

Dependencies

  • websockets
  • aiortc
  • opencv-python
  • Pillow

Project Structure

  • main.py - Entry point and command parser
  • helper.py - CLI help text
  • version.py - Version information
  • core/config.py - Signaling server settings
  • core/client.py - Client identity and username logic
  • command/
    • bash_connect.py - Send remote commands
    • listen.py - Start listener mode
    • online.py - List online peers
    • stream_connect.py - Request remote media stream
  • command_injection/injector.py - Remote command request handling
  • signaling/
    • signal.py - WebSocket signaling client
    • peer.py - WebRTC peer connection logic
  • media/
    • local_media.py - Local camera/microphone handling
    • receiver_media.py - Remote media receiver

Configuration

Edit core/config.py to set:

  • HOST - signaling server URL
  • ROOM - shared room identifier

Example:

HOST = "https://localhost:8000/"
ROOM = "test"

Usage

Show help

python darkglitch.py -h

Show version

python darkglitch.py -v

Start listener mode

python darkglitch.py -l

List online peers

python darkglitch.py -ol

Send a remote command

python darkglitch.py -c <client_id> "whoami"

Replace <client_id> with the target identifier from the online peers list.

Disclaimer

This repository is for research and learning only. Do not deploy it against systems or networks without explicit permission.

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

darkglitch-1.0.1.tar.gz (16.0 kB view details)

Uploaded Source

Built Distribution

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

darkglitch-1.0.1-py3-none-any.whl (19.6 kB view details)

Uploaded Python 3

File details

Details for the file darkglitch-1.0.1.tar.gz.

File metadata

  • Download URL: darkglitch-1.0.1.tar.gz
  • Upload date:
  • Size: 16.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for darkglitch-1.0.1.tar.gz
Algorithm Hash digest
SHA256 9a9542a253f8586c2c1d6450bcb34e3c6c1fa3179a588178a915ab144b3b4a6a
MD5 e4623292a11fb1d78fb3c9e42e8f5c75
BLAKE2b-256 1619ba24a3c541655bf2b85dcfb395f9acdf855d982258315b562a547f9da4c9

See more details on using hashes here.

File details

Details for the file darkglitch-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: darkglitch-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 19.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for darkglitch-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b230824368a5c31e5b69d8e7b6bad0047613af1f8a38676a99775a2b9fef9dcd
MD5 05f1bcb09323a7688c7acaab4c1a4de0
BLAKE2b-256 55e14c86ac2b5457fda5a7faf8ff3e81e1a7247b00f0d4fdd2229df44b126274

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