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.txtis 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/activateto your~/.bashrcor~/.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
websocketsaiortcopencv-pythonPillow
Project Structure
main.py- Entry point and command parserhelper.py- CLI help textversion.py- Version informationcore/config.py- Signaling server settingscore/client.py- Client identity and username logiccommand/bash_connect.py- Send remote commandslisten.py- Start listener modeonline.py- List online peersstream_connect.py- Request remote media stream
command_injection/injector.py- Remote command request handlingsignaling/signal.py- WebSocket signaling clientpeer.py- WebRTC peer connection logic
media/local_media.py- Local camera/microphone handlingreceiver_media.py- Remote media receiver
Configuration
Edit core/config.py to set:
HOST- signaling server URLROOM- 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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file darkglitch-1.0.7.tar.gz.
File metadata
- Download URL: darkglitch-1.0.7.tar.gz
- Upload date:
- Size: 26.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0317cf478a21c08a8353cdd16d3ba00c79139723d22c2bff047937533df70963
|
|
| MD5 |
f8a89df824e00849028706294cbc767a
|
|
| BLAKE2b-256 |
bf291a844163b6bf105b79b37a725392a324f7ecc34a9eccfaeee860c23b2e2e
|
File details
Details for the file darkglitch-1.0.7-py3-none-any.whl.
File metadata
- Download URL: darkglitch-1.0.7-py3-none-any.whl
- Upload date:
- Size: 30.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
965c01baec2da62dece4bd42e827d42bcaef9561910a8140e61112c31c101fe0
|
|
| MD5 |
beb3dee4d7a10c6c618cfbe465346622
|
|
| BLAKE2b-256 |
0763f1f2d322ef2d64882366860e35a5e2321cce987c341774c2c25488d9805e
|