29e494cfb1
A bug happened in zero trust findings: since multiple exploiters run at the same time, they send telemetries at the same time and those telemetries get parsed at the same time. So multiple threads fetch ZT findings at once, finds none and creates duplicate findings. With this bugfix only one thread can fetch for findings at a time. This means that one thread creates the finding and others fetch it and just add events to it |
||
---|---|---|
.github | ||
.swm | ||
build_scripts | ||
deployment_scripts | ||
docs | ||
envs | ||
monkey | ||
.flake8 | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.pre-commit-config.yaml | ||
.travis.yml | ||
CHANGELOG.md | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md | ||
codecov.yml | ||
pyproject.toml | ||
vulture_allowlist.py |
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
- Log4Shell
- Zerologon
- 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).