Skip to content

amroffaads/Richkware-Manager-Server

 
 

Repository files navigation

Richkware-Manager-Server (RMS)

Build Status Codacy Badge

Richkware-Manager-Server (RMS) is a management service for hosts infected with malware built using the Richkware framework. It acts as a Command and Control (C2) server.

Implementation

RMS follows REST principles. The table below outlines the HTTP methods implemented for each resource:

Component GET POST PUT DELETE
device x x x
user x x
devices x x
users x
encryptionKey x

Related Projects

  • Richkware: The C++ framework for building the malware agents.
  • Richkware-Manager-Client: A client application that connects to RMS to view infected hosts and send commands.

Diagram

Requirements

  • Java 17 or higher
  • Maven
  • Docker (Recommended) or Tomcat 9+ and MySQL 8.0+

Security Configuration

IMPORTANT: Never use default credentials in production!

  1. Copy .env.example to .env
  2. Set strong passwords and encryption keys:
    DB_PASSWORD=YourStrongPassword123!
    ENCRYPTION_KEY=YourSecure32CharEncryptionKey!

Getting Started

Using Docker (Recommended)

The easiest way to build and deploy RMS is using Docker:

  1. Configure environment variables:

    cp .env.example .env
    # Edit .env with your secure credentials
  2. Build the project:

    mvn package
  3. Run with Docker Compose:

    docker-compose up -d
  4. Access RMS: Open http://localhost:8080/Richkware-Manager-Server/ in your browser.

Manual Deployment

  1. Configure the Application: Edit /src/main/resources/configuration.properties:

    • database.url: JDBC URL of the database (default: jdbc:mysql://db:3306/)
    • database.username: Database username (default: root)
    • database.password: Database password (default: richk)
    • encryptionkey: Key used to encrypt messages exchanged with Richkware and RMC (default: richktest). Important: If you change this, you must update the configuration in the malware and client as well.
  2. Deploy: Copy the generated WAR file to the webapps directory of your Tomcat server.

  3. Set environment variables (required):

    export DB_HOST=localhost
    export DB_PASSWORD=YourSecurePassword
    export ENCRYPTION_KEY=YourSecureKey

IDE Support

This project is developed using IntelliJ IDEA.

JetBrains Logo

Open Source License provided by JetBrains.

About

Service for management of hosts where is present a malware developed using Richkware framework.

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 59.8%
  • HTML 22.2%
  • JavaScript 17.2%
  • Other 0.8%