forked from p15670423/monkey
Extracted relevant config parameters for each BB test and made templates from those
This commit is contained in:
parent
b652e0d851
commit
edc8fff0a7
|
@ -0,0 +1,19 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigTemplate, \
|
||||
ConfigValueDescriptor
|
||||
|
||||
|
||||
# Disables a lot of config values not required for a specific feature test
|
||||
class BaseTemplate(ConfigTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return False
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", []),
|
||||
ConfigValueDescriptor("basic_network.scope.local_network_scan", False),
|
||||
ConfigValueDescriptor("internal.classes.finger_classes",
|
||||
["PingScanner", "HTTPFinger"]),
|
||||
ConfigValueDescriptor("internal.monkey.system_info.system_info_collector_classes",
|
||||
["EnvironmentCollector", "HostnameCollector"])
|
||||
]
|
|
@ -0,0 +1,32 @@
|
|||
from abc import ABC, abstractmethod
|
||||
from dataclasses import dataclass
|
||||
from typing import Any, List
|
||||
|
||||
import envs.monkey_zoo.blackbox.island_configs.config_templates
|
||||
from infection_monkey.utils.plugins.plugin import Plugin
|
||||
|
||||
|
||||
@dataclass
|
||||
class ConfigValueDescriptor:
|
||||
path: str # Dot separated config path. E.g. monkey.pba.actions.create_user
|
||||
content: Any # Contents of config value. Depends on the type of config value.
|
||||
|
||||
|
||||
class ConfigTemplate(Plugin, ABC):
|
||||
|
||||
@staticmethod
|
||||
def base_package_name():
|
||||
return envs.monkey_zoo.blackbox.island_configs.config_templates.__package__
|
||||
|
||||
@staticmethod
|
||||
def base_package_file():
|
||||
return envs.monkey_zoo.blackbox.island_configs.config_templates.__file__
|
||||
|
||||
@abstractmethod
|
||||
@property
|
||||
def config_value_list(self) -> List[ConfigValueDescriptor]:
|
||||
pass
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return False
|
|
@ -0,0 +1,14 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class Elastic(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["ElasticGroovyExploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list", ["10.2.2.4", "10.2.2.5"])
|
||||
]
|
|
@ -0,0 +1,14 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class Hadoop(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["HadoopExploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list", ["10.2.2.2", "10.2.2.3"])
|
||||
]
|
|
@ -0,0 +1,25 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class Mssql(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["MSSQLExploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list", ["10.2.2.16"]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_password_list",
|
||||
["Password1!",
|
||||
"Xk8VDTsC",
|
||||
"password",
|
||||
"12345678"
|
||||
]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_user_list",
|
||||
["Administrator",
|
||||
"m0nk3y",
|
||||
"user"
|
||||
])
|
||||
]
|
|
@ -0,0 +1,71 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor, \
|
||||
ConfigTemplate
|
||||
|
||||
|
||||
class Performance(ConfigTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.credentials.exploit_password_list",
|
||||
["Xk8VDTsC",
|
||||
"^NgDvY59~8",
|
||||
"Ivrrw5zEzs",
|
||||
"3Q=(Ge(+&w]*",
|
||||
"`))jU7L(w}",
|
||||
"t67TC5ZDmz"
|
||||
]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_user_list",
|
||||
["m0nk3y"
|
||||
]),
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes",
|
||||
["SmbExploiter",
|
||||
"WmiExploiter",
|
||||
"SSHExploiter",
|
||||
"ShellShockExploiter",
|
||||
"SambaCryExploiter",
|
||||
"ElasticGroovyExploiter",
|
||||
"Struts2Exploiter",
|
||||
"WebLogicExploiter",
|
||||
"HadoopExploiter",
|
||||
"VSFTPDExploiter",
|
||||
"MSSQLExploiter",
|
||||
"ZerologonExploiter"
|
||||
]),
|
||||
ConfigValueDescriptor("basic_network.network_analysis.inaccessible_subnets",
|
||||
["10.2.2.0/30",
|
||||
"10.2.2.8/30",
|
||||
"10.2.2.24/32",
|
||||
"10.2.2.23/32",
|
||||
"10.2.2.21/32",
|
||||
"10.2.2.19/32",
|
||||
"10.2.2.18/32",
|
||||
"10.2.2.17/32"
|
||||
]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list",
|
||||
["10.2.2.2",
|
||||
"10.2.2.3",
|
||||
"10.2.2.4",
|
||||
"10.2.2.5",
|
||||
"10.2.2.8",
|
||||
"10.2.2.9",
|
||||
"10.2.1.10",
|
||||
"10.2.0.11",
|
||||
"10.2.0.12",
|
||||
"10.2.2.11",
|
||||
"10.2.2.12",
|
||||
"10.2.2.14",
|
||||
"10.2.2.15",
|
||||
"10.2.2.16",
|
||||
"10.2.2.18",
|
||||
"10.2.2.19",
|
||||
"10.2.2.20",
|
||||
"10.2.2.21",
|
||||
"10.2.2.23",
|
||||
"10.2.2.24",
|
||||
"10.2.2.25",
|
||||
])
|
||||
|
||||
]
|
|
@ -0,0 +1,14 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class ShellShock(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["ShellShockExploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list", ["10.2.2.8"])
|
||||
]
|
|
@ -0,0 +1,36 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class SmbMimikatz(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["SmbExploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list",
|
||||
["10.2.2.14",
|
||||
"10.2.2.15"]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_password_list",
|
||||
["Password1!",
|
||||
"Ivrrw5zEzs"
|
||||
]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_user_list",
|
||||
["Administrator",
|
||||
"m0nk3y",
|
||||
"user"
|
||||
]),
|
||||
ConfigValueDescriptor("internal.classes.finger_classes",
|
||||
["SMBFinger",
|
||||
"PingScanner",
|
||||
"HTTPFinger"
|
||||
]),
|
||||
ConfigValueDescriptor("monkey.system_info.system_info_collector_classes",
|
||||
["EnvironmentCollector",
|
||||
"HostnameCollector",
|
||||
"ProcessListCollector",
|
||||
"MimikatzCollector"
|
||||
])
|
||||
]
|
|
@ -0,0 +1,33 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class SmbPth(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["SmbExploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list",
|
||||
["10.2.2.15"]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_password_list",
|
||||
["Password1!",
|
||||
"Ivrrw5zEzs"
|
||||
]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_user_list",
|
||||
["Administrator",
|
||||
"m0nk3y",
|
||||
"user"
|
||||
]),
|
||||
ConfigValueDescriptor("internal.classes.finger_classes",
|
||||
["SMBFinger",
|
||||
"PingScanner",
|
||||
"HTTPFinger"
|
||||
]),
|
||||
ConfigValueDescriptor("internal.classes.exploits.exploit_ntlm_hash_list",
|
||||
["5da0889ea2081aa79f6852294cba4a5e",
|
||||
"50c9987a6bf1ac59398df9f911122c9b"
|
||||
])
|
||||
]
|
|
@ -0,0 +1,31 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class Ssh(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["SSHExploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list",
|
||||
["10.2.2.11",
|
||||
"10.2.2.12"]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_password_list",
|
||||
["Password1!",
|
||||
"12345678",
|
||||
"^NgDvY59~8"
|
||||
]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_user_list",
|
||||
["Administrator",
|
||||
"m0nk3y",
|
||||
"user"
|
||||
]),
|
||||
ConfigValueDescriptor("internal.classes.finger_classes",
|
||||
["SSHFinger",
|
||||
"PingScanner",
|
||||
"HTTPFinger"
|
||||
])
|
||||
]
|
|
@ -0,0 +1,16 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class Struts2(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["Struts2Exploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list",
|
||||
["10.2.2.23",
|
||||
"10.2.2.24"])
|
||||
]
|
|
@ -0,0 +1,41 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class Tunneling(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes",
|
||||
["SmbExploiter",
|
||||
"WmiExploiter",
|
||||
"SSHExploiter"
|
||||
]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list",
|
||||
["10.2.2.9",
|
||||
"10.2.1.10",
|
||||
"10.2.0.11",
|
||||
"10.2.0.12"
|
||||
]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_password_list",
|
||||
["Password1!",
|
||||
"3Q=(Ge(+&w]*",
|
||||
"`))jU7L(w}",
|
||||
"t67TC5ZDmz",
|
||||
"12345678"
|
||||
]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_user_list",
|
||||
["Administrator",
|
||||
"m0nk3y",
|
||||
"user"
|
||||
]),
|
||||
ConfigValueDescriptor("internal.classes.finger_classes",
|
||||
["SSHFinger",
|
||||
"PingScanner",
|
||||
"HTTPFinger",
|
||||
"SMBFinger",
|
||||
])
|
||||
]
|
|
@ -0,0 +1,16 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class Weblogic(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["WebLogicExploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list",
|
||||
["10.2.2.18",
|
||||
"10.2.2.19"])
|
||||
]
|
|
@ -0,0 +1,31 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class WmiMimikatz(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["WmiExploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list",
|
||||
["10.2.2.14",
|
||||
"10.2.2.15"]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_password_list",
|
||||
["Password1!",
|
||||
"Ivrrw5zEzs"
|
||||
]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_user_list",
|
||||
["Administrator",
|
||||
"m0nk3y",
|
||||
"user"
|
||||
]),
|
||||
ConfigValueDescriptor("monkey.system_info.system_info_collector_classes",
|
||||
["EnvironmentCollector",
|
||||
"HostnameCollector",
|
||||
"ProcessListCollector",
|
||||
"MimikatzCollector"
|
||||
])
|
||||
]
|
|
@ -0,0 +1,29 @@
|
|||
from envs.monkey_zoo.blackbox.island_configs.config_templates.base_template import BaseTemplate
|
||||
from envs.monkey_zoo.blackbox.island_configs.config_templates.config_template import ConfigValueDescriptor
|
||||
|
||||
|
||||
class WmiPth(BaseTemplate):
|
||||
|
||||
@staticmethod
|
||||
def should_run(class_name: str) -> bool:
|
||||
return True
|
||||
|
||||
config_value_list = [
|
||||
ConfigValueDescriptor("basic.exploiters.exploiter_classes", ["WmiExploiter"]),
|
||||
ConfigValueDescriptor("basic_network.scope.subnet_scan_list",
|
||||
["10.2.2.15"]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_password_list",
|
||||
["Password1!"]),
|
||||
ConfigValueDescriptor("basic.credentials.exploit_user_list",
|
||||
["Administrator",
|
||||
"m0nk3y",
|
||||
"user"
|
||||
]),
|
||||
ConfigValueDescriptor("internal.classes.finger_classes",
|
||||
["PingScanner",
|
||||
"HTTPFinger"
|
||||
]),
|
||||
ConfigValueDescriptor("internal.classes.exploits.exploit_ntlm_hash_list",
|
||||
["5da0889ea2081aa79f6852294cba4a5e",
|
||||
"50c9987a6bf1ac59398df9f911122c9b"])
|
||||
]
|
|
@ -0,0 +1 @@
|
|||
.
|
Loading…
Reference in New Issue