Update README.md
This commit is contained in:
26
README.md
26
README.md
@@ -1,12 +1,33 @@
|
||||
# Conquest
|
||||
|
||||
Conquest is an advanced, extensible and malleable command & control/post-exploitation framework developed for penetration testing and adversary simulation. Conquest's team server, operator client and agent have all been written using the Nim programming language and are designed with modularity and flexibility in mind. It features custom C2 communication via binary packets over HTTP, a client UI developed using Dear ImGui and the `Monarch` agent, which can be equipped with numerous specialized modules.
|
||||
Conquest is an advanced, extensible and malleable command & control/post-exploitation framework developed for penetration testing and adversary simulation. Conquest's team server, operator client and agent have all been written using the Nim programming language and are designed with modularity and flexibility in mind. It features custom C2 communication via binary packets over HTTP, a client GUI developed using Dear ImGui and the `Monarch` agent, a modular C2 implant aimed at Windows targets.
|
||||
|
||||

|
||||
|
||||
> [!CAUTION] Disclaimer
|
||||
> [!CAUTION]
|
||||
> Conquest is designed to be only used for educational purposes, research and authorized security testing of systems that you own or have an explicit permission to attack. The author provides no warranty and accepts no liability for misuse.
|
||||
|
||||
## Getting Started
|
||||
|
||||
1. Install Nim
|
||||
|
||||
2. Build the Conquest team server and client
|
||||
|
||||
```
|
||||
nimble server
|
||||
nimble client
|
||||
```
|
||||
|
||||
3. Start the team server with a C2 profile
|
||||
```
|
||||
bin/server -p data/profile.toml
|
||||
```
|
||||
|
||||
4. Connect to the team server using the client (localhost by default)
|
||||
```
|
||||
bin/client
|
||||
```
|
||||
|
||||
## Architecture
|
||||
|
||||
TBD
|
||||
@@ -27,6 +48,7 @@ TBD
|
||||
- Wide selection of built-in post-exploitation modules
|
||||
- Looting and loot management
|
||||
- Logging of all operator activity
|
||||
- Self-deletion
|
||||
|
||||
## Screenshots
|
||||
|
||||
|
||||
@@ -30,4 +30,5 @@ requires "zippy >= 0.10.16"
|
||||
requires "mummy >= 0.4.6"
|
||||
requires "whisky >= 0.1.3"
|
||||
requires "native_dialogs >= 0.2.0"
|
||||
requires "pixie >= 5.1.0"
|
||||
requires "pixie >= 5.1.0"
|
||||
requires "cligen >= 1.9.3"
|
||||
@@ -14,7 +14,7 @@ switch "app", "gui"
|
||||
# Select static link or shared/dll link
|
||||
when defined(windows):
|
||||
const STATIC_LINK_GLFW = false
|
||||
const STATIC_LINK_CC = true #libstd++ or libc
|
||||
const STATIC_LINK_CC = false #libstd++ or libc
|
||||
if TC == "vcc":
|
||||
switch "passL","d3d9.lib kernel32.lib user32.lib gdi32.lib winspool.lib"
|
||||
switch "passL","comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib"
|
||||
|
||||
@@ -56,7 +56,7 @@ let module* = Module(
|
||||
Command(
|
||||
name: protect("enable-privilege"),
|
||||
commandType: CMD_ENABLE_PRIV,
|
||||
description: protect("enable a token privilege."),
|
||||
description: protect("Enable a token privilege."),
|
||||
example: protect("enable-privilege SeImpersonatePrivilege"),
|
||||
arguments: @[
|
||||
Argument(name: protect("privilege"), description: protect("Privilege to enable."), argumentType: STRING, isRequired: true)
|
||||
@@ -66,7 +66,7 @@ let module* = Module(
|
||||
Command(
|
||||
name: protect("disable-privilege"),
|
||||
commandType: CMD_DISABLE_PRIV,
|
||||
description: protect("disable a token privilege."),
|
||||
description: protect("Disable a token privilege."),
|
||||
example: protect("disable-privilege SeImpersonatePrivilege"),
|
||||
arguments: @[
|
||||
Argument(name: protect("privilege"), description: protect("Privilege to disable."), argumentType: STRING, isRequired: true)
|
||||
|
||||
Reference in New Issue
Block a user