Commit Graph

6848 Commits

Author SHA1 Message Date
Mike Salvatore bf0e5f098b Agent: Make minor code quality improvements to AutomatedMaster 2021-12-02 11:51:29 -05:00
Mike Salvatore 4fc18ae750 Agent: Improve responsiveness of AutomatedMaster shutdown 2021-12-02 11:51:29 -05:00
Mike Salvatore 9279d82adf Agent: Add a Timer class 2021-12-02 11:51:29 -05:00
Mike Salvatore 73bf93050f Agent: Implement _collect_system_info in AutomatedMaster 2021-12-02 11:51:29 -05:00
Mike Salvatore 9809fc2a41 Agent: Implement _run_simulation() that calls stubbed methods 2021-12-02 11:51:29 -05:00
Mike Salvatore a2bba6a025 Agent: Implement _check_for_stop() in AutomatedMaster 2021-12-02 11:51:29 -05:00
Mike Salvatore 0456d695c4 Agent: Add an AutomatedMaster that implements start() and terminate() 2021-12-02 11:51:27 -05:00
Mike Salvatore 418b5ce9ec
Merge pull request #1631 from guardicore/1595-new-agent-setup
Implement Agent setup function
2021-12-02 09:20:05 -05:00
VakarisZ ce7362e278 Agent: add a waiting timer to allow exploited machines to connect to the tunnel (in agent cleanup) 2021-12-02 14:26:10 +02:00
VakarisZ e4bdc96410 Agent: move _set_propagation_depth and _add_default_server_to_config from constructor to start
Moved because these methods don't initialize the parameters, they change the global WormConfiguration object which is logic/behavior
2021-12-02 11:51:14 +02:00
VakarisZ 1e9c9ab823 Agent: move _set_propagation_depth and _add_default_server_to_config from constructor to start
Moved because these methods don't initialize the parameters, they change the global WormConfiguration object which is logic/behavior
2021-12-02 11:25:59 +02:00
Mike Salvatore f074b3e388 Agent: Pass agent_id to ControlChannel constructor 2021-12-01 12:18:32 -05:00
Mike Salvatore 1944040328 Agent: Remove unnecessary control_channel_server() from IControlChannel 2021-12-01 12:14:58 -05:00
Mike Salvatore 13e16b9dea Agent: Revert "legacy" in dropper start() and cleanup() functions 2021-12-01 11:26:05 -05:00
Mike Salvatore 48782e79d4 Swimm: update exercise Add a new configuration setting to the Agent ⚙ AzD8XysWg1BBXCjCDkfq 2021-12-01 11:26:00 -05:00
Mike Salvatore eaf27a7b92 Merge branch '1576-simplify-server-config-json' into agent-refactor 2021-12-01 11:18:27 -05:00
VakarisZ ad6b309523 Agent: readability and style changes in monkey.py: refactored back from raising exceptions to logging and returning, not storing part of island config options as separate parameters, etc. 2021-12-01 18:13:27 +02:00
VakarisZ 81e61dcea5 Agent: improve the readability of InfectionMonkey constructor by decoupling cmd argument parsing from object parameter setting 2021-12-01 17:08:32 +02:00
VakarisZ 793bb33c8c Agent: use the refactored startup instead of legacy methods (monkey.start() instead of monkey.legacy_start(), etc.) 2021-12-01 17:04:45 +02:00
Mike Salvatore 1d7c80bfec Changelog: Add changelog entry for #1576 2021-12-01 07:40:30 -05:00
Mike Salvatore e61bac0895 Tests: Test get_server_config() instead of internal _extract_config() 2021-12-01 07:39:19 -05:00
VakarisZ 6e7ddbc6c7 Agent: improve the readability of island_config_options.py 2021-12-01 14:35:37 +02:00
VakarisZ 0806afed1a Agent: rename PlannedShutdownException to PlannedShutdownError
This will stay consistent with python and our own codebase
2021-12-01 12:49:50 +02:00
VakarisZ 89436a4cd9 Agent: remove behavioral methods from monkey.py and leave only setup/teardown related code
Behavior is handled by master, monkey.py should only setup/teardown the agent
2021-12-01 12:45:44 +02:00
VakarisZ 8304a4ea19 UT: improve unit tests in test_server_setup.py 2021-12-01 10:56:18 +02:00
Mike Salvatore 854ca7fa89 Island: Change log level to warn if server config not found 2021-11-30 13:02:06 -05:00
Mike Salvatore 707fbf41aa Island: Remove defunct "environment" from default server_config.json 2021-11-30 12:59:20 -05:00
Mike Salvatore 9ed689946c Docs: Minor edits to Linux setup documentation 2021-11-30 12:56:52 -05:00
Mike Salvatore 3e8f7382d0 Docs: Minor edits to docker setup documentation 2021-11-30 12:53:55 -05:00
Mike Salvatore 9e036c8853 Doc: Make minor edits to windows setup documentation 2021-11-30 12:52:40 -05:00
Mike Salvatore 7570064ae7 Docs: Remove erroneous comment about log level for agents
Agents' log level is not configurable at this time.
2021-11-30 12:49:19 -05:00
Mike Salvatore 0b7da7ed67 Docs: Fix "logging" links in FAQ 2021-11-30 12:48:03 -05:00
Mike Salvatore e76915cf96
Merge pull request #1634 from guardicore/1610-cleanup-ransomware
Cleanup function for ransomware
2021-11-30 12:31:04 -05:00
Mike Salvatore a5fc0bc393 Agent: Change readme if condition in RansomwarePayload.cleanup()
If the _readme_incomplete flag is set but no readme file has been left
in the target directory, do not leave a new readme file. This can happen
if the thread is forcefully killed between the time when the flag is set
and the file is first created. The cleanup function is only concerned
with cleaning up incomplete files, not ensuring the existence of the
file under all circumstances.
2021-11-30 12:03:37 -05:00
Mike Salvatore 789a6691c1 Agent: Improve log messages in RansomwarePayload.cleanup() 2021-11-30 12:03:37 -05:00
Mike Salvatore 62a6b09e00 Agent: Use `self._target_directory` in RansomwarePayload 2021-11-30 12:03:37 -05:00
Mike Salvatore 14c298e89c Agent: Move exception handling from readme_dropper to ransomware_payload 2021-11-30 12:03:26 -05:00
Mike Salvatore f87802678b Tests: Use default parameters in build_ransomware_payload() fixture
This allows ransomware payloads with different mocks to be built on a
per-test basis with minimal effort and maximal code reuse.
2021-11-30 11:13:03 -05:00
Shreya Malviya bedc8d4f84 Agent: Add cleanup logic for ransomware payload 2021-11-30 11:12:51 -05:00
VakarisZ 0a32ac888e Docs: moved server configuration and common configuration operation docs to corresponding deployment option setup pages 2021-11-30 15:44:46 +02:00
VakarisZ 06f31791fc Island, UT: fix island config option extraction to also expand paths and add a UT for that 2021-11-30 12:12:29 +02:00
VakarisZ 03566d2966 Island: remove the server config extraction from server_config.json in island's cwd
All deployments can be configured via command line OR by modifying the server_config.json that comes with the deployment
2021-11-30 12:06:02 +02:00
VakarisZ e95df875be Island: fix a bug in server's config options extraction that caused unspecified properties to get overridden by defaults 2021-11-30 10:27:09 +02:00
Ilija Lazoroski f8441f2d7f Agent: Refactor the new start and cleanup function 2021-11-29 19:57:25 +01:00
Ilija Lazoroski 72f4fc1ef6 Agent: Remove intialize both from monkey and dropper
Add legacy start and cleanup to the agent which
are the same code reformated in the previous commits.
Reformat start function.
2021-11-29 18:54:52 +01:00
VakarisZ 68ea983458 UT: fixed the path to consts in test_server_setup.py 2021-11-29 17:27:26 +02:00
VakarisZ ffe9a65037 Docs: improve the documentation by specifying that user can use log levels `info` and `debug`, instead of saying "default Python log levels" 2021-11-29 17:21:46 +02:00
VakarisZ 04feb1b31d Island,UT: move PACKAGE_CONFIG_PATH and USER_CONFIG_PATH consts to config_setup.py, where they are used 2021-11-29 15:16:02 +02:00
VakarisZ 7e479ec3df Island: improve readability in config_setup.py by renaming methods and adding default parameter to IslandConfigOptions 2021-11-29 14:47:37 +02:00
Shreya Malviya 75226bdf6e Agent: Comment out mock master things in monkey.py
So that both 'masters' don't run at the same time.
To test the mock master, un-comment the lines in this commit and
comment the lines `self._start_post_breach_async()` and `self._start_propagation()`
in `start()`.
2021-11-29 15:26:12 +05:30