19bc09196f
The AdvancedMultiSelect should adhere to some set of human interface guidelines. In the absence of a formal, agreed upon set of guidelines for Infection Monkey, this commit uses KDE's guidelines for checkboxes: https://hig.kde.org/components/editing/checkbox.html When child checkboxes are not all checked, the master checkbox displays a mixed-state icon, instead of a checked icon. Clicking the mixed-state icon checks all child checkboxes. Clicking an unchecked master checkbox also enables all child checkboxes. In the past, clicking an unchecked master checkbox checked only the *default* child checkboxes. While this may seem desirable so that unsafe exploits do not accidentally get selected by the user, it will confuse and frustrate users, as master/child checkboxes do not normally function this way. If there is concern that users may unknowingly select unsafe exploits/options, we should pop up a warning to inform the user when the config is saved/submitted. Issue #891 |
||
---|---|---|
.github | ||
.swm | ||
ci_scripts | ||
deployment_scripts | ||
docker | ||
docs | ||
envs | ||
monkey | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md |
README.md
Infection Monkey
Data center Security Testing Tool
Welcome to the Infection Monkey!
The Infection Monkey is an open source security tool for testing a data center's resiliency to perimeter breaches and internal server infection. The Monkey uses various methods to self propagate across a data center and reports success to a centralized Monkey Island server.
The Infection Monkey is comprised of two parts:
- Monkey - A tool which infects other machines and propagates to them.
- Monkey Island - A dedicated server to control and visualize the Infection Monkey's progress inside the data center.
To read more about the Monkey, visit infectionmonkey.com.
Screenshots
Map
Security report
Zero trust report
ATT&CK report
Main Features
The Infection Monkey uses the following techniques and exploits to propagate to other machines.
- Multiple propagation techniques:
- Predefined passwords
- Common logical exploits
- Password stealing using Mimikatz
- Multiple exploit methods:
- SSH
- SMB
- WMI
- Shellshock
- Conficker
- SambaCry
- Elastic Search (CVE-2015-1427)
- Weblogic server
- and more, see our Documentation hub for more information about our RCE exploiters.
Setup
Check out the Setup page in the Wiki or a quick getting started guide.
The Infection Monkey supports a variety of platforms, documented in our documentation hub.
Building the Monkey from source
To deploy development version of monkey you should refer to readme in the deployment scripts folder or follow documentation in documentation hub.
Build status
Branch | Status |
---|---|
Develop | |
Master |
Tests
Unit Tests
In order to run all of the Unit Tests, run the command python -m pytest
in the monkey
directory.
To get a coverage report, first make sure the coverage
package is installed using pip install coverage
. Run the command
coverage run -m unittest
in the monkey
directory and then coverage html
. The coverage report can be found in
htmlcov.index
.
Blackbox tests
In order to run the Blackbox tests, refer to envs/monkey_zoo/blackbox/README.md
.
License
Copyright (c) Guardicore Ltd
See the LICENSE file for license rights and limitations (GPLv3).