Go to file
Shay Nehmad 86d30cdee7 Moved config and readme around, fixed travis 2020-06-17 17:36:37 +03:00
.github Added and updated screenshots on readme 2020-04-14 13:24:39 +03:00
deployment_scripts Added mitigations to each attack technique report 2020-03-25 13:12:40 +02:00
docker bump duckerfile version 2020-04-01 15:33:27 +03:00
docs Moved config and readme around, fixed travis 2020-06-17 17:36:37 +03:00
envs Merge pull request #664 from guardicore/feature/smb_vulnerable_port_fix 2020-05-26 14:33:00 +03:00
monkey Moved a function into common, since Monkey doesn't have ring as a dependency 2020-06-03 16:18:19 +03:00
.gitignore Gitignore changed to ignore all "profiler_logs" dirs 2020-05-12 17:08:26 +03:00
.gitmodules Adding the initial version of the Monkey documentation site 2020-06-07 21:44:19 +03:00
.travis.yml Moved config and readme around, fixed travis 2020-06-17 17:36:37 +03:00
CONTRIBUTING.md Update CONTRIBUTING.md 2019-11-05 13:59:42 +02:00
LICENSE Changed name to fit Github standard 2016-03-01 17:54:01 +02:00
README.md Changed dropdowns to headers in readme 2020-04-14 17:46:54 +03:00

README.md

Infection Monkey

GitHub release (latest by date)

Build Status codecov

GitHub stars GitHub commit activity

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

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 the wiki.

Building the Monkey from source

To deploy development version of monkey you should refer to readme in the deployment scripts folder. If you only want to build the monkey from source, see Setup and follow the instructions at the readme files under infection_monkey and monkey_island.

Build status

Branch Status
Develop Build Status
Master Build Status

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).