Skip to content

Contributing

paragonsec edited this page Jul 29, 2020 · 1 revision

When contributing to this repository, please first discuss the change you wish to make via issue. This allows us to track what is being developed or modified so we don't duplicate work.

If you are wanting to contribute to an issue already existing please inform us in that issue and we will assign you to it.

What can you help us with?

  • Check the issues currently open and feel free to comment in ones you wish to take on!
  • Check projects and if an issue doesn't already exist create one and we will move the project item to in progress.
  • Open a issue for an enhancement, using the template, talking through what you are adding.

Pull Request Process

  1. Ensure any changes made work on the operating systems they have been developed for.
    1. If a C2 server enhancement it needs to work on Windows, Linux, and Darwin
    2. If an agent it needs to be OS agnostic, or if a function is specific to a OS it needs to be under /agents/resources/* similar to how current ones are.
    3. If a module it needs to work on the OS it was designed for (both the agent and server side) and if loot is involved loot.go is modified to include storage of those credentials in the DB.
  2. Make the PR to the develop branch as the master branch should match the release currently out.
  3. If frontend changes were made then make sure you build the FE using the provided build_frontend.<ext> scripts (npm must be installed in the /frontend directory) and push that to the PR as well so the PR can be fully tested.
  4. Explain in the PR what was changed and why as well as link to the issue related.
  5. If you are making a contribution to the project by adding new features (e.g. modules, agents or listeners, etc...) than please provide the handle you wish to have added to the credits section of the readme.

The owners of the repo will review each PR as quickly as they can and if approved will merge it into the develop branch. If the contribution is one that introduces new features your name will be added to the credits with the handle you specified and what feature you added.

Main

Starting

DeimosC2 Server

DeimosC2 Agents

Modules

  • Using Modules
  • Building Modules
  • Compiling Modules

Webshells

  • Generating Webshell
  • Initializing WebShell
  • WebShell CLI
  • WebShell File Browser
  • Deploying Agent through WebShell

Frontend

Misc

Clone this wiki locally