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.1.0.tar.gz (26.6 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.1.0-py3-none-any.whl (30.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for darkglitch-1.1.0.tar.gz
Algorithm Hash digest
SHA256 6a9eaf5e7e2f91a3fbcd01993fc56e940376bb1e7171365c79d3bc0bef4a8233
MD5 95e391aa396e487bc963e3fefa52ae92
BLAKE2b-256 47f44bcaa4954fd2031e1c114208cd44dacd8161d771a1acd0daaf9266c77492

See more details on using hashes here.

File details

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

File metadata

  • Download URL: darkglitch-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 30.4 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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 69d7b710bef9fa11acc7ac0fad50ef4a1d62e003ed074ebd2abcd938d5c82eb2
MD5 13e40db3bb8f4632d88cbde29bcc07de
BLAKE2b-256 b360d07606f71fd4ab5ecc8fa889ad907e2297057d69d29f649c11591646bf98

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