https://github.com/sheepreaper/sheep.commandandcontrol
Multi purpose command and control server with api and documentation, technology demonstration
https://github.com/sheepreaper/sheep.commandandcontrol
Last synced: about 1 year ago
JSON representation
Multi purpose command and control server with api and documentation, technology demonstration
- Host: GitHub
- URL: https://github.com/sheepreaper/sheep.commandandcontrol
- Owner: SheepReaper
- License: gpl-3.0
- Created: 2019-05-30T19:54:44.000Z (about 7 years ago)
- Default Branch: main
- Last Pushed: 2024-04-13T10:02:35.000Z (about 2 years ago)
- Last Synced: 2024-04-13T21:52:02.451Z (about 2 years ago)
- Language: C#
- Size: 329 MB
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Prototype Command and Control Server with UI and API
This project originated as a coding challenge: given an implant communication specification, write a CnC server.
I will not share the specification, nor a sample implant.
The utility of this software merits sharing it, and is also a demonstration of various technologies working together:
- ASP.Net Core (Api Server)
- Vue.js
- Vue-router
- Modern browser fetch api
- Docker
- EntityFramework Core
- Swashbuckle
- SwaggerUI
This is nowhere near a production quality application. It was put together in less than 12 hours, but I will consider cleaning it up in future.
Also, parts of the application are currently broken, but this was originally intended for a one-time demonstration.
## Installation
Assuming this will all run on your own system:
- I used VS 2019 Community Edition as my IDE. I feel if you already don't have a copy, [then go get one](https://visualstudio.microsoft.com/)
- I also used VS Code for the Vue App, because Visual Studio doesn't get on well with what I needed (So it's optional)
- You will also need npm [get it gere](https://nodejs.org/en/)
- and Docker
- and hyper-V, because Docker (on windows, but i don't know the requirements for other systems)
- Open the solution file with visual studio.
- As long as docker-compose is set as the startup item, it should all kick off when you hit F5
**Leave all build configurations on Debug! I didn't get everything working on Release**
- The Api Server should be running on https://localhost:5001
- Then PowerShell over to the project root of the ListeningPostWebUi project (from the repo root it's: /src/ListeningPostWebUi)
- Then just call
```PowerShell
npm run dev
```
- The Web UI should now be running on http://localhost:8080 (notice the non-TLS scheme)
### Caveats
You may need to copy a certificate from the root of this repository: *.pfx to C:\tmp (yes, i realize it's tmp instead of temp).
the docker container may need to read it to start correctly. If you need to trust it or something, the password is: "thisisnotasecurepassword" (minus quotes)
### Screen Shots
In the event you can't get this running for some reason, here are some screen shots:
#### Dispatcher Screen
![alt text][screen1]
#### Swagger UI Documentation Screen
![alt text][screen2]
#### File Manager (broken) Screen
![alt text][screen3]
[screen1]: docs/img/CnCscreen1.png "Screen Shot - Dispatcher Screen"
[screen2]: docs/img/CnCscreen2.png "Screen Shot - Api Documentation Screen"
[screen3]: docs/img/CnCscreen3.png "Screen Shot - File Manager Screen"