https://github.com/sanix-darker/dycow
Config file to backdoor as web server
https://github.com/sanix-darker/dycow
Last synced: 6 months ago
JSON representation
Config file to backdoor as web server
- Host: GitHub
- URL: https://github.com/sanix-darker/dycow
- Owner: Sanix-Darker
- License: mit
- Created: 2020-12-11T11:10:07.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2022-01-01T01:15:35.000Z (almost 4 years ago)
- Last Synced: 2025-03-27T06:44:50.565Z (6 months ago)
- Language: Python
- Homepage:
- Size: 365 KB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Dynamic Command WebServer (dycow)
[](https://pepy.tech/project/dycow)
[](https://badge.fury.io/py/dycow)
[](https://opensource.org/licenses/MIT)A tiny web-server app with a configuration file, NO NEED TO CODE

## Introduction
This project is a small webserver that just have to get a port and a configuration file to perform preconfigurated commands.
## Disclaimer
This was a test-research project for a specific user-case on my raspberry-pi, therefore, i configurated only two methods (GET and POST)
## Why use dycow
- It's fast
- Simple to configure, you just have to create a conf file to be ready to start
- It's lightweight (The wheel is ~5Kb)## Requirements
- Python (3.x recommend)
## How to install
You just have to run :
```shell
pip install dycow
```## How to use
```shell
$ dw -h[-] dycow v0.0.9.7.
[-] Help center !
[x] Run : dw
[x] Documentation online https://github.com/sanix-darker/dycow
```You have to create a file, for example `conf` and set actions, for example :

`- GET`(or `- POST`) is the type of the request, just after it the endPoint (`/save`, `/callme?name&content`). \
`cmd` is the command line that will be executed on a request. \
`res`[NOT REQUIRED] is the response to the request. \
`var` is to specify POST variables. \Variables like `#content#` means, the content variable will be replace with the input value as parameter.
- Then run the server application:
```shell
# dw
dw 3000 conf
```It will start a small server on port `3000` and following rules you specified in the configuration file.
- You can access [API-DOC here](https://documenter.getpostman.com/view/2696027/TVmV6ZS2) .
## Tests
To run rest-api tests, i made a bash file in `./tests` directory.\
you just have to run `bash ./tests/rest-api-test.sh`
```
$ bash ./tests/rest-api-test.sh
[-] Running Endpoints tests on dycow.
[✓] GET / passed.
[✓] GET /list passed.
[✓] GET /callme?name=darker passed.
[✓] POST /save passed.
- - -
[-] Tests run :
[-] 4 tests succeed !
[-] 0 tests failed !
[-] Stopping tests Endpoints on dycow.
```## Author
- [d4rk3r](https://github.com/sanix-darker)
## LICENSE
- [MIT](./LICENSE.txt)