monkey/README.md

102 lines
4.4 KiB
Markdown
Raw Normal View History

2019-11-05 16:19:39 +08:00
# Infection Monkey
[![GitHub release (latest by date)](https://img.shields.io/github/v/release/guardicore/monkey)](https://github.com/guardicore/monkey/releases)
[![Build Status](https://travis-ci.com/guardicore/monkey.svg?branch=develop)](https://travis-ci.com/guardicore/monkey)
2020-03-15 20:48:09 +08:00
[![codecov](https://codecov.io/gh/guardicore/monkey/branch/develop/graph/badge.svg)](https://codecov.io/gh/guardicore/monkey)
![GitHub stars](https://img.shields.io/github/stars/guardicore/monkey)
![GitHub commit activity](https://img.shields.io/github/commit-activity/m/guardicore/monkey)
2019-10-28 00:44:38 +08:00
## Data center Security Testing Tool
2016-07-29 02:24:03 +08:00
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.
2017-10-17 22:14:28 +08:00
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](https://infectionmonkey.com).
2017-10-17 22:14:28 +08:00
2021-03-29 22:03:01 +08:00
## 💥 We're Hiring 💥
We are looking for a strong, full-stack developer with a passion for
cybersecurity to join the Infection Monkey development team. Infection Monkey
is an open-source, automated, breach and attack simulation platform, consisting
of a worm-like agent and C&C server. This is a remote position and is open
world-wide. If you're excited about Infection Monkey, we want to see your
resume. You can learn more about Infection Monkey on our
[website](https://www.guardicore.com/infectionmonkey/).
For more information, or to apply, see the official job post
[here](https://www.guardicore.com/careers/co/labs/65.D16/full-stack-developer/all/?coref=1.10.r36_60E&t=1617025683094).
## Screenshots
2020-04-14 22:46:54 +08:00
### Map
<img src=".github/map-full.png" width="800" height="600">
2020-04-14 22:46:54 +08:00
### Security report
<img src=".github/security-report.png" width="800" height="500">
2020-04-14 22:46:54 +08:00
### Zero trust report
<img src=".github/zero-trust-report.png" width="800" height="500">
2020-04-14 22:46:54 +08:00
### ATT&CK report
<img src=".github/attack-report.png" width="900" height="500">
2019-11-05 16:19:39 +08:00
## Main Features
2017-10-17 22:14:28 +08:00
The Infection Monkey uses the following techniques and exploits to propagate to other machines.
* Multiple propagation techniques:
* Predefined passwords
2017-10-17 22:14:28 +08:00
* Common logical exploits
* Password stealing using Mimikatz
* Multiple exploit methods:
2016-05-29 16:57:13 +08:00
* SSH
* SMB
* WMI
* Shellshock
2017-10-17 22:14:28 +08:00
* Conficker
* SambaCry
* Elastic Search (CVE-2015-1427)
* Weblogic server
2020-08-06 00:12:30 +08:00
* and more, see our [Documentation hub](https://www.guardicore.com/infectionmonkey/docs/reference/exploiters/) for more information about our RCE exploiters.
2017-10-17 22:14:28 +08:00
2019-11-05 16:19:39 +08:00
## Setup
Check out the [Setup](https://www.guardicore.com/infectionmonkey/docs/setup/) page in the Wiki or a quick getting [started guide](https://www.guardicore.com/infectionmonkey/docs/usage/getting-started/).
2020-08-06 00:12:30 +08:00
The Infection Monkey supports a variety of platforms, documented [in our documentation hub](https://www.guardicore.com/infectionmonkey/docs/reference/operating_systems_support/).
2019-01-23 19:59:00 +08:00
2019-11-05 16:19:39 +08:00
## Building the Monkey from source
To deploy development version of monkey you should refer to readme in the [deployment scripts](deployment_scripts)
folder or follow documentation in [documentation hub](https://www.guardicore.com/infectionmonkey/docs/development/setup-development-environment/).
2019-10-28 00:44:38 +08:00
### Build status
| Branch | Status |
| ------ | :----: |
| Develop | [![Build Status](https://travis-ci.com/guardicore/monkey.svg?branch=develop)](https://travis-ci.com/guardicore/monkey) |
| Master | [![Build Status](https://travis-ci.com/guardicore/monkey.svg?branch=master)](https://travis-ci.com/guardicore/monkey) |
2019-11-05 16:19:39 +08:00
## Tests
2019-11-05 16:19:39 +08:00
### Unit Tests
2019-11-05 16:19:39 +08:00
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`.
2019-11-05 16:19:39 +08:00
### Blackbox tests
2019-11-05 16:19:39 +08:00
In order to run the Blackbox tests, refer to `envs/monkey_zoo/blackbox/README.md`.
# License
2018-05-01 20:12:30 +08:00
Copyright (c) Guardicore Ltd
2017-10-17 22:14:28 +08:00
2018-01-21 03:49:36 +08:00
See the [LICENSE](LICENSE) file for license rights and limitations (GPLv3).