Commit Graph

445 Commits

Author SHA1 Message Date
Marek Wolan
858406c4a3 update more tests to new actions schema 2025-01-17 14:38:59 +00:00
Marek Wolan
fb5242bd78 Merge agents and actions branches + fix import / subclass errors 2025-01-14 11:34:01 +00:00
Charlie Crane
3cca3d4a5c #2912 - Actioning review comments. Identifiers have been removed from AbstractActions, _legacy folder has been deleted and correction to IPV4Address type hints 2025-01-13 16:12:16 +00:00
Charlie Crane
e653afaa4c #2912 - Merge in changes on target branch 2025-01-03 14:48:18 +00:00
Charlie Crane
ab2dd6ca27 Revert "#2912 - Actioning Review Comments"
This reverts commit b11678a128.
2025-01-03 14:41:45 +00:00
Charlie Crane
b11678a128 #2912 - Actioning Review Comments 2025-01-03 14:40:00 +00:00
Marek Wolan
c5f81708ce Merge remote-tracking branch 'origin/4.0.0a1-dev' into feature/2913_Extensible_Rewards 2025-01-02 15:11:25 +00:00
Marek Wolan
491de6fc47 Revert pre-commit deleting files 2025-01-02 15:11:02 +00:00
Marek Wolan
41dc7b5b29 Merge remote-tracking branch 'origin/4.0.0a1-dev' into feature/2913_Extensible_Rewards 2025-01-02 15:05:35 +00:00
Marek Wolan
bf32271ddd Change copyright to 2025 2025-01-02 15:05:06 +00:00
Charlie Crane
e40fd053f7 #2912 - Removing print statements left in from debugging 2024-12-11 10:32:15 +00:00
Nick Todd
97094aba79 #2913: Pre-commit changes. 2024-10-30 11:15:39 +00:00
Nick Todd
9fd862763b #2913: Ensure optional software in config file is enabled. 2024-10-30 11:11:07 +00:00
Nick Todd
3c1bb2d546 #2913: Integration test fixes. 2024-10-29 16:57:11 +00:00
Nick Todd
6f6e4131b4 #2913: Handle case where server_ip_address is None 2024-10-29 16:54:19 +00:00
Marek Wolan
5282cb0294 #2899 - Make software manager always show() all software 2024-09-27 10:56:48 +01:00
Marek Wolan
203ec5ec85 Add tests for port and protocol validation and update changelog 2024-09-26 16:00:59 +01:00
Marek Wolan
f2b6d68b14 Fix Port scan 2024-09-26 15:35:50 +01:00
Marek Wolan
f1b911bc65 Change port and protocol to annotated validators 2024-09-25 16:28:22 +01:00
Marek Wolan
695891f55c Add port and protocol custom validators 2024-09-20 11:21:28 +01:00
Marek Wolan
08f1cf1fbd Fix airspace and remaining port problems from refactor 2024-09-19 15:06:29 +01:00
Marek Wolan
dd931d900b port refactor - eod commit, airspace still broken 2024-09-18 16:02:25 +01:00
=
310876cd3b 2755 Add ability to extend HostNode, NetworkNode, Service and Application outside PrimAITE. 2024-09-04 15:49:37 +01:00
Marek Wolan
a1553fb1b4 Backport core changes from internal 2024-08-28 10:20:32 +01:00
Marek Wolan
71ec71e400 Fix incorrect removal of last_query_response from database client 2024-08-20 15:46:54 +00:00
Archer Bowen
bceedbf72d Merged PR 504: Command and Control Full PR
## Summary
Implements the Command and Control applications to the quality and capability needed for the TAP001 expansion and lays the foundations for all the features required for TAP002 (Next Release).

The C2C suite contains three new applications:

**1. Abstract C2**

Base class for the C2 Server and the C2 Beacon. Controls the main internal logic of both applications but with a couple of abstract methods which each class defines differently.

**2. C2 Server**

The C2 Server takes red agent actions and converts the action options into C2 Commands which are then passed to the C2 Beacon.
The output of these commands is sent back to the C2 Server and then returned back to the red agent.

**3. C2 Beacon**

The C2 beacon uses the Terminal and the Ransomware Applications to perform different commands which it receives these commands and executes them and returns the output.

The C2 beacon can also be configured by the Red Agent to configure the current networking behaviour.

For a much more detailed description please refer to the .rst documentation and the notebook which demonstrate and describe the functionality very explicitly.

Lastly the wiki page also provides more information around the design work for this feature.

[Command and Control](/Welcome-to-PrimAITE!/Design/[~In-Progress~]/Command-and-Control)

Worth noting that some changes were needed that were unseen during the design page but the overall goals of the feature have been accomplished.

## Test process
Tested via notebooks and a series of e2e tests.

## Checklist
- [x] PR is linked to a **work item**
- [x] **acceptance criteria** of linked ticket are met
- [x] performed **self-review** of the code
- [x] written **tests** for any new functionality added with this PR
- [x] updated the **documentation** if this PR changes or adds functionality
- [x] written/updated **design docs** if this PR implements new functionality
- [x] updated the **change log**
- [x] ran **pre-commit** checks for code style
- [x] attended to any **TO-DOs** left in the code (One remaining but unsure if it should be handled in this PR)

Related work items: #2689, #2720, #2721, #2779
2024-08-20 13:16:22 +00:00
Marek Wolan
98f5454f04 Merge remote-tracking branch 'origin/dev' into feature/2736-instantaneous-rewards 2024-08-20 10:40:48 +01:00
Archer Bowen
5bba4ed20e Merge remote-tracking branch 'origin/dev' into feature/2689-command-and-control 2024-08-20 09:30:43 +01:00
Archer Bowen
7b1584ccb7 #2689 Updated following PR 2024-08-19 15:24:24 +01:00
Marek Wolan
f344d292db #2736 - Fix up broken reward tests 2024-08-19 13:59:35 +01:00
Archer Bowen
2413a2f6a8 #2689 Fixing oversight on method call 2024-08-19 13:10:35 +01:00
Archer Bowen
f595f44ce9 #2689 Implemented fixes to _check_connection following PR 2024-08-19 13:08:31 +01:00
Marek Wolan
aeca5fb6a2 #2769 - Clean up incorrect names and commented out code [skip ci] 2024-08-19 10:28:39 +01:00
Marek Wolan
05f9751fa8 #2736 - implement instantaneous rewards 2024-08-19 10:17:39 +01:00
Archer Bowen
83b8206ce0 #2689 Added C2 Sequence diagram to docs and added additional ftp_client request tests. 2024-08-16 11:51:38 +01:00
Archer Bowen
849cb20f35 #2689 Addressed more PR comments & fixed an bug with command parsing in _command_terminal (c2 beacon) 2024-08-16 10:24:53 +01:00
Archer Bowen
e5be392ea8 #2689 Updated documentation and docustrings following PR comments. 2024-08-15 17:47:33 +01:00
Archer Bowen
7d086ec35e #2689 Implemented pydantic model validation on C2 Server setup method + updated E2E notebook with data exfiltration. 2024-08-15 17:08:10 +01:00
Archer Bowen
f32b3a931f #2689 Addressed failing tests + updated c2_suite.rst to include the Data exfil command. 2024-08-15 14:41:35 +01:00
Archer Bowen
c50b005c37 #2689 Improved terminal session handling. 2024-08-15 13:10:47 +01:00
Archer Bowen
e53ac84666 #2689 Fixed small bugs, added pydantic class validation and divided the data_Exfil command on c2 beacon into two separate methods. 2024-08-15 11:36:55 +01:00
Archer Bowen
6a28f17f1b #2689 Initial draft of File exfiltration. 2024-08-14 19:49:58 +01:00
Archer Bowen
559f480062 #2689 Fixed .rst formatting issues and removed unnecessary comments. 2024-08-13 16:47:40 +01:00
Archer Bowen
d6e2994d6b Apply suggestions from code review 2024-08-13 15:43:21 +00:00
Archer Bowen
845a4c6bd6 #2689 Final docustring updates before PR. 2024-08-13 10:18:56 +01:00
Archer Bowen
6c7376ab4b #2681 Updated to include yaml file tests + include listening on multiports. 2024-08-13 09:37:11 +01:00
Archer Bowen
27ec06658f #2689 Majorly updated the command and control notebook to demonstrate more configuration options and more text to explain the code cells. 2024-08-12 19:25:30 +01:00
Archer Bowen
cbf02ebf32 #2689 Updated documentation and moved _craft_packet into abstract C2 2024-08-12 14:16:21 +01:00
Marek Wolan
929bd46d6d #2769 - Make changing password disconnect remote sessions 2024-08-12 14:16:04 +01:00
Archer Bowen
ce3805cd15 #2689 Updated c2 tests significantly and improved quality of debug logging. 2024-08-12 10:47:56 +01:00