Jakob Friedl
|
84e8730b1e
|
Implemented profile embedding via patching a placeholder in the agent executable. Agent correctly deserializes and parses the profile and listener configuration.
|
2025-08-18 22:05:23 +02:00 |
|
Jakob Friedl
|
023a562be5
|
Implemented server output encoding for task retrieval.
|
2025-08-17 17:01:50 +02:00 |
|
Jakob Friedl
|
739faf781e
|
Added more randomization. The profile now supports setting keys to an array of strings, from which a random one is chosen each time (useful for e.g. Host header, etc.)
|
2025-08-17 16:27:48 +02:00 |
|
Jakob Friedl
|
22c15dd82c
|
Added randomization to profile strings by replacing '#' with random alphanumerical chars.
|
2025-08-15 16:18:15 +02:00 |
|
Jakob Friedl
|
c7980d219d
|
Added profile system to agent communication. Randomized URL endpoints/request methods and dynamic data transformation based on C2 profile. Profile is defined as compile-time string for now.
|
2025-08-15 15:42:57 +02:00 |
|
Jakob Friedl
|
5a73c0f2f4
|
Improved working with profiles by adding helper retrieval functions.
|
2025-08-14 19:33:32 +02:00 |
|
Jakob Friedl
|
714360ef24
|
Updated profile system, including dynamic parsing of hidden heartbeats and setting of response headers.
|
2025-08-14 15:53:58 +02:00 |
|
Jakob Friedl
|
e403ac1c07
|
Refactored utility functions to make them more readable and removed separate register endpoint.
|
2025-08-14 12:25:06 +02:00 |
|
Jakob Friedl
|
ee93445739
|
Refine profile structure.
|
2025-08-13 21:42:58 +02:00 |
|
Jakob Friedl
|
415cd7ebf8
|
Started implementing profile system.
|
2025-08-13 19:32:51 +02:00 |
|
Jakob Friedl
|
b7622dd72f
|
Updated C2 communication to hide heartbeat data in JWT token.
|
2025-08-13 13:38:39 +02:00 |
|
Jakob Friedl
|
0e205d34d3
|
Updated sequence number to uint32
|
2025-08-06 14:28:54 +02:00 |
|
Jakob Friedl
|
ea00e67e80
|
Updated ps command output.
|
2025-08-06 12:46:53 +02:00 |
|
Jakob Friedl
|
dfcafa9c24
|
Implemented basic "ps" and "env" commands.
|
2025-08-01 13:16:12 +02:00 |
|
Jakob Friedl
|
0d54b3e64b
|
Cleaned up parts of the serialization by removing redundant code.
|
2025-07-28 21:29:47 +02:00 |
|
Jakob Friedl
|
882579b3cb
|
Implemented sequence tracking.
|
2025-07-26 18:20:54 +02:00 |
|
Jakob Friedl
|
a6039172b2
|
Updated README.md
|
2025-07-25 16:51:18 +02:00 |
|
Jakob Friedl
|
6979c3aa8b
|
Removed utility function.
|
2025-07-25 16:47:45 +02:00 |
|
Jakob Friedl
|
7bf135750c
|
Rework module system. Now modules/commands are defined in a single file each, with both the function executed by teh agent and the definition for server-side argument parsing.
|
2025-07-25 16:41:29 +02:00 |
|
Jakob Friedl
|
ad31b90687
|
Added .gitkeep to data/keys directory.
|
2025-07-24 22:37:30 +02:00 |
|
Jakob Friedl
|
dcf6285a2a
|
Updated key management to create a new private key file if no existing one is found.
|
2025-07-24 22:34:12 +02:00 |
|
Jakob Friedl
|
3e9178ec34
|
Reworked key exchange, now using direct C imports from monocypher instead of nimble modules/libraries.
|
2025-07-24 17:26:48 +02:00 |
|
Jakob Friedl
|
b6c720ccca
|
Implemented ECDH key exchange using ed25519 to share a symmetric AES key without transmitting it over the network.
|
2025-07-24 15:31:46 +02:00 |
|
Jakob Friedl
|
cf4e4a7017
|
Updated database to store session key (still unencrypted)
|
2025-07-23 15:25:19 +02:00 |
|
Jakob Friedl
|
cb16a9c571
|
Updated message flags.
|
2025-07-23 13:56:43 +02:00 |
|
Jakob Friedl
|
0f065f41a2
|
Implemented AES256-GCM encryption of all network packets. Requires some more refactoring to remove redundant code and make it cleaner.
|
2025-07-23 13:47:37 +02:00 |
|
Jakob Friedl
|
36719dd7f0
|
Changed variable names for clearer structure.
|
2025-07-22 21:31:18 +02:00 |
|
Jakob Friedl
|
725696ffa5
|
Implemented Heartbeat/Checkin request with agentId/listenerId in request body to simplify listener URLs
|
2025-07-22 21:00:39 +02:00 |
|
Jakob Friedl
|
1a3724a2fd
|
Updated .gitignore with .gitkeep files to keep directory structure
|
2025-07-21 22:16:09 +02:00 |
|
Jakob Friedl
|
581af47395
|
Merge commit '9f15026fd1f35346300f65bb6ef04ca023b62ee2'
|
2025-07-21 22:13:37 +02:00 |
|
Jakob Friedl
|
9f15026fd1
|
Implemented agent registration to match new binary structure instead of json.
|
2025-07-21 22:07:25 +02:00 |
|
Jakob Friedl
|
99f55cc04f
|
Implemented communication with custom binary structure instead of JSON requests
|
2025-07-19 16:49:27 +02:00 |
|
Jakob Friedl
|
d22ad0bd0c
|
Agent fetches serialized task data from prologue web server and successfully parses it.
|
2025-07-18 18:47:57 +02:00 |
|
Jakob Friedl
|
5825ec91a1
|
Started rewriting JSON task to custom binary structure. Parsed and serialized task object into seq[byte]
|
2025-07-18 14:24:07 +02:00 |
|
Jakob Friedl
|
310ad82cc5
|
Updated README
|
2025-07-16 14:48:21 +02:00 |
|
Jakob Friedl
|
99b017f57f
|
Cleanup types.nim to only contain type definitions.
|
2025-07-16 14:45:45 +02:00 |
|
Jakob Friedl
|
292b947a4e
|
Split task functionality into multiple files.
|
2025-07-16 12:32:01 +02:00 |
|
Jakob Friedl
|
aae35ef59d
|
Updated directory structure
|
2025-07-16 10:33:13 +02:00 |
|
Jakob Friedl
|
668a4984d1
|
Updated directory structure.
|
2025-07-15 23:26:54 +02:00 |
|
Jakob Friedl
|
453971c0db
|
Cleaned up agent command parsing
|
2025-07-15 22:38:01 +02:00 |
|
Jakob Friedl
|
b8b276d887
|
Refactored agent command handling to remove redundant boiler-plate code. Commands are parsed dynamically based on a single definition. Command-specific actions might still need distinct implementations.
|
2025-07-14 22:14:27 +02:00 |
|
Jakob Friedl
|
2d2c94ed38
|
Implemented move and copy command. Needs to be reworked to work without `-f' and '-t' flags but with spaces.
|
2025-07-09 15:13:37 +02:00 |
|
Jakob Friedl
|
bb56ed42f2
|
Updated task structure to use a JSON string instead of seq[string], making it possible to use multiple differently typed arguments
|
2025-07-09 14:38:30 +02:00 |
|
Jakob Friedl
|
71ff092975
|
Refactor redundant code for better extensibility with new commands.
|
2025-07-08 23:10:19 +02:00 |
|
Jakob Friedl
|
1f73cf142d
|
Updated config.nims to nim.cfg
|
2025-07-08 22:04:21 +02:00 |
|
Jakob Friedl
|
6b095fbd05
|
Deleted tui.nim
|
2025-07-08 22:02:25 +02:00 |
|
Jakob Friedl
|
8230061478
|
Added basic test with GUI library (owlkettle). Found that i need to run the app in a VM since it doesnt work on Windows
|
2025-07-08 22:01:19 +02:00 |
|
Jakob Friedl
|
4a5f3baaa4
|
Implemented 'rm' and 'rmdir' commands
|
2025-07-08 21:09:50 +02:00 |
|
Jakob Friedl
|
92da6f1288
|
Merge ls, pwd and cd into a single 'filesystem' file
|
2025-07-08 20:36:43 +02:00 |
|
Jakob Friedl
|
061f198461
|
Added more TODOs
|
2025-07-07 21:41:47 +02:00 |
|