Mike Salvatore
e7d694380d
Agent: Skip propagation if max depth is reached
...
Fixes #1374
When monkey starts, it launches a thread for executing post breach
actions. It then executes its propagation loop on the main thread. If
the maximum propagation depth has been reached, a
PlannedShutdownException is raised on the main thread. This results in
InfectionMonkey.cleanup() being called, which then calls
InfectionMonkey.self_delete(). self_delete() deletes the monkey binary,
but the post breach actions thread hasn't been stopped, resulting in
a trace when the thread attempts an import.
We don't need to shutdown if the maximum propagation depth is reached.
We only need to skip the propagation phase so that monkey does not
propagate further. PBAs and payloads can still be allowed to run.
2021-07-30 05:44:34 -04:00
Mike Salvatore
017e37deb0
Agent: Extract propagation loop into a function
2021-07-30 05:40:31 -04:00
Mike Salvatore
2543e5b2a5
Agent: Only run ransomware payload once
2021-07-30 05:30:09 -04:00
Mike Salvatore
ce492d25f4
Agent: Return boolean from "should_monkey_run()"
...
A function named "should_monkey_run()" should let you know whether or
not monkey should run. Before this commit, the function was responsible
for flow control, as it raised a PlannedShutdownException, resulting in
the shutdown of the monkey agent.
2021-07-30 05:30:09 -04:00
Shreya Malviya
72f77b7d29
docs: Mark ransomware page as not a draft
2021-07-29 19:44:05 +05:30
Mike Salvatore
9a4e6be89e
Docs: Update list of tested Linux distros
2021-07-29 08:37:43 -04:00
Shreya Malviya
101c0a3870
Merge pull request #1378 from guardicore/docs-use-cases
...
Documentation: Scenarios
2021-07-29 17:25:56 +05:30
Mike Salvatore
1829bb0b82
Merge pull request #1379 from guardicore/landing-page-banner
...
Landing page banner
2021-07-29 07:20:32 -04:00
Shreya Malviya
b1f4e2e6ad
docs: Add more optimistic language about the custom scenario
2021-07-29 16:41:53 +05:30
Shreya Malviya
21417cdf6b
docs: Remove link to FAQ on scenarios page
2021-07-29 16:37:43 +05:30
Shreya Malviya
52401357e8
docs: Modify scenarios' explanation to be less technical and introduce custom scenarios
2021-07-29 16:35:52 +05:30
Shreya Malviya
2d83ea642a
docs: Unitalicise and uncapitalise 'scenarios' in scenarios page description
2021-07-29 16:33:59 +05:30
VakarisZ
333fbfc6de
Island UI: fix guardicore logo on smaller screens
2021-07-29 11:41:29 +03:00
VakarisZ
45f05dcddf
Island UI: remove the unnecessary header from landing page
2021-07-29 11:33:50 +03:00
Mike Salvatore
b4d97d1ce7
Build: Add missing ")" to string
2021-07-28 13:47:11 -04:00
Mike Salvatore
2e918fa263
Merge pull request #1376 from guardicore/docs_av_detection
...
Documentation hub: add information about the Infection Monkey getting…
2021-07-28 13:38:45 -04:00
Mike Salvatore
2f38c6effb
Docs: Minor formating/typo change to "Is ... Monkey a malware..."
2021-07-28 13:37:52 -04:00
Mike Salvatore
a9e2304f8f
Docs: Add missing "the" to "Infection Monkey"
2021-07-28 13:36:20 -04:00
Mike Salvatore
fceb52ba38
Merge pull request #1375 from guardicore/ransomware_exploits_table
...
Ransomware report: Exploits table in lateral movement section
2021-07-28 13:11:47 -04:00
Mike Salvatore
bfd7d3cfbf
Remove "__author__" lines from the source code
...
The "__author__" lines in numerous Python files serve little purpose.
At best, they are redundant. At worst, they are incorrect and
misleading.
The VCS (i.e. git) tracks all changes to files. Storing the author in
the files is redundant violates the DRY principle.
If the file changes, whose name belongs in the __author__ field? What if
it changes so drastically that it's almost unrecognizable? If there's
any circumstance where the __author__ name should change, what enforces
that this change takes place? Given the ambiguity of these scenarios,
the __author__ field could be misleading or incorrect.
Resolves #1345
2021-07-28 12:43:28 -04:00
Mike Salvatore
79639610df
Tests: Split up test_get_exploits_used_on_node()
2021-07-28 12:17:47 -04:00
Mike Salvatore
b8b82039d8
UI: Add banner to the top of the landing page
2021-07-28 12:06:45 -04:00
Mike Salvatore
9a3697aadc
UI: Add 10px between version an bottom of landing page
2021-07-28 12:03:47 -04:00
VakarisZ
8583303682
Island: remove the redundant line with total amount of exploited machines from ransomware report + small improvements in monkey_exploitation.py
2021-07-28 16:57:06 +03:00
Shreya Malviya
d3ab7c7bf3
docs: Reword scenarios' explanation
...
Co-authored-by: Mike Salvatore <mike.s.salvatore@gmail.com>
2021-07-28 18:43:28 +05:30
Shreya Malviya
aa13202fa8
docs: Reword description on scenarios page
...
Co-authored-by: Mike Salvatore <mike.s.salvatore@gmail.com>
2021-07-28 18:42:38 +05:30
Mike Salvatore
cefc450b35
Merge pull request #1377 from guardicore/1364/config-reset-on-refresh
...
Config reset after refresh
2021-07-28 09:09:17 -04:00
VakarisZ
4c1747d2e6
Island: change island report to only send exploited machine count to UI instead of whole machine list
2021-07-28 15:58:17 +03:00
Shreya Malviya
36e77245d2
cc: Update scenarios documentation link on the landing page
2021-07-28 18:06:23 +05:30
Mike Salvatore
b7c02a0016
Merge pull request #1373 from guardicore/appimage-docker-code-reuse
...
Appimage docker code reuse
2021-07-28 07:54:43 -04:00
Mike Salvatore
6aff4a16b2
Build: Move final build artifact to dist/ directory
2021-07-28 07:53:33 -04:00
Ilija Lazoroski
b991035938
UI: Set currentFormData upon refresh.
2021-07-28 13:44:58 +02:00
Shreya Malviya
5ba4400bc3
docs: Remove trailing whitespaces
2021-07-28 16:51:27 +05:30
Shreya Malviya
ab6d03f97a
docs: Add custom scenario image
2021-07-28 16:50:15 +05:30
Shreya Malviya
4e95721f88
docs: Modify ransomware page and add screenshot of ransomware config
2021-07-28 16:46:12 +05:30
Shreya Malviya
42f14e25c1
docs: Modify scenarios page text and add screenshots
2021-07-28 16:39:46 +05:30
Mike Salvatore
5de6a562ba
Build: Add build_{appimage,docker}.sh wrapper scripts
2021-07-28 07:00:18 -04:00
VakarisZ
4558880276
Documentation hub: add information about the Infection Monkey getting flagged as malware during the installation
2021-07-28 13:56:49 +03:00
Shreya Malviya
89d6953b89
docs: Reorder use cases/scenarios section
2021-07-28 15:55:52 +05:30
VakarisZ
15fad50393
Island UI: change ransomware report to contain a table of exploitations in lateral movement section
2021-07-28 12:24:20 +03:00
VakarisZ
1448bb1850
Island: extract monkey exploitations into a separate service and a separate endpoint
...
This change not only removes complexity from the huge report service, but also allows different UI components to call the API without forcing the whole report to be generated
2021-07-28 12:14:38 +03:00
VakarisZ
1013347b3c
Island: move manual exploitation service into a separate exploitations directory under report directory
2021-07-28 12:08:11 +03:00
Shreya Malviya
8cec39bc74
docs: Rename 'use cases' to 'scenarios'
2021-07-28 13:41:49 +05:30
Shreya Malviya
8819333355
docs: Add description for ransomware simulation
2021-07-28 13:37:33 +05:30
VakarisZ
e10d2246a3
Island UI: reword the info for LateralMovement.tsx to not contain encryption part in description
2021-07-28 10:28:35 +03:00
Mike Salvatore
0609bc2063
Build: Add README.md for build_package.sh
2021-07-27 15:31:33 -04:00
Mike Salvatore
ae1427f6a6
Build: Remove duplicate code from appimage build script
2021-07-27 15:25:50 -04:00
Mike Salvatore
5576e4e241
Build: Move reusable parts of docker build scripts into new scripts
2021-07-27 13:08:55 -04:00
Mike Salvatore
3e638298e6
Build: Move appimage/ and docker/ into build_scrips/
2021-07-27 08:12:01 -04:00
VakarisZ
73f06a5551
Merge pull request #1359 from guardicore/1349/landing-page-face-lift
...
Landing page face lift
2021-07-27 15:09:04 +03:00